diff --git a/server/schema/resources.schema.json b/server/schema/resources.schema.json index f3294535..f8f93a09 100644 --- a/server/schema/resources.schema.json +++ b/server/schema/resources.schema.json @@ -32,9 +32,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_TagOptionAssociation": { + "AWS_Scheduler_ScheduleGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::TagOptionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html)", + "markdownDescription": "Definition of AWS::Scheduler::ScheduleGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedulegroup.html)", "allOf": [ { "type": "object", @@ -42,19 +42,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::TagOptionAssociation" + "AWS::Scheduler::ScheduleGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::TagOptionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html)" + "Definition of AWS::Scheduler::ScheduleGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedulegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-tagoptionassociation.json" + "$ref": "resources/aws-scheduler-schedulegroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -63,9 +62,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_UsagePlanKey": { + "AWS_IAM_VirtualMFADevice": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)", + "markdownDescription": "Resource Type definition for AWS::IAM::VirtualMFADevice \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html)", "allOf": [ { "type": "object", @@ -73,14 +72,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::UsagePlanKey" + "AWS::IAM::VirtualMFADevice" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)" + "Resource Type definition for AWS::IAM::VirtualMFADevice \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-usageplankey.json" + "$ref": "resources/aws-iam-virtualmfadevice.json" } }, "required": [ @@ -94,9 +93,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_ApplicationInferenceProfile": { + "AWS_SageMaker_StudioLifecycleConfig": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::ApplicationInferenceProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-applicationinferenceprofile.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::StudioLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-studiolifecycleconfig.html)", "allOf": [ { "type": "object", @@ -104,14 +103,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::ApplicationInferenceProfile" + "AWS::SageMaker::StudioLifecycleConfig" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::ApplicationInferenceProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-applicationinferenceprofile.html)" + "Resource Type definition for AWS::SageMaker::StudioLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-studiolifecycleconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-applicationinferenceprofile.json" + "$ref": "resources/aws-sagemaker-studiolifecycleconfig.json" } }, "required": [ @@ -125,9 +124,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_StackSet": { + "AWS_DataBrew_Project": { "type": "object", - "markdownDescription": "StackSet as a resource provides one-click experience for provisioning a StackSet and StackInstances \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html)", + "markdownDescription": "Resource schema for AWS::DataBrew::Project. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html)", "allOf": [ { "type": "object", @@ -135,14 +134,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::StackSet" + "AWS::DataBrew::Project" ], "markdownEnumDescriptions": [ - "StackSet as a resource provides one-click experience for provisioning a StackSet and StackInstances \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html)" + "Resource schema for AWS::DataBrew::Project. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-stackset.json" + "$ref": "resources/aws-databrew-project.json" } }, "required": [ @@ -156,9 +155,9 @@ ], "additionalProperties": false }, - "AWS_Pipes_Pipe": { + "AWS_CleanRooms_AnalysisTemplate": { "type": "object", - "markdownDescription": "Definition of AWS::Pipes::Pipe Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html)", + "markdownDescription": "Represents a stored analysis within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-analysistemplate.html)", "allOf": [ { "type": "object", @@ -166,14 +165,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pipes::Pipe" + "AWS::CleanRooms::AnalysisTemplate" ], "markdownEnumDescriptions": [ - "Definition of AWS::Pipes::Pipe Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html)" + "Represents a stored analysis within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-analysistemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-pipes-pipe.json" + "$ref": "resources/aws-cleanrooms-analysistemplate.json" } }, "required": [ @@ -187,9 +186,9 @@ ], "additionalProperties": false }, - "AWS_SystemsManagerSAP_Application": { + "AWS_Lightsail_StaticIp": { "type": "object", - "markdownDescription": "Resource schema for AWS::SystemsManagerSAP::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-systemsmanagersap-application.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::StaticIp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-staticip.html)", "allOf": [ { "type": "object", @@ -197,14 +196,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SystemsManagerSAP::Application" + "AWS::Lightsail::StaticIp" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::SystemsManagerSAP::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-systemsmanagersap-application.html)" + "Resource Type definition for AWS::Lightsail::StaticIp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-staticip.html)" ] }, "Properties": { - "$ref": "resources/aws-systemsmanagersap-application.json" + "$ref": "resources/aws-lightsail-staticip.json" } }, "required": [ @@ -218,9 +217,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_AnalysisTemplate": { + "AWS_LookoutEquipment_InferenceScheduler": { "type": "object", - "markdownDescription": "Represents a stored analysis within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-analysistemplate.html)", + "markdownDescription": "Resource schema for LookoutEquipment InferenceScheduler. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutequipment-inferencescheduler.html)", "allOf": [ { "type": "object", @@ -228,14 +227,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::AnalysisTemplate" + "AWS::LookoutEquipment::InferenceScheduler" ], "markdownEnumDescriptions": [ - "Represents a stored analysis within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-analysistemplate.html)" + "Resource schema for LookoutEquipment InferenceScheduler. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutequipment-inferencescheduler.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-analysistemplate.json" + "$ref": "resources/aws-lookoutequipment-inferencescheduler.json" } }, "required": [ @@ -249,9 +248,9 @@ ], "additionalProperties": false }, - "AWS_IdentityStore_GroupMembership": { + "AWS_ResourceExplorer2_Index": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS:IdentityStore::GroupMembership \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-groupmembership.html)", + "markdownDescription": "Definition of AWS::ResourceExplorer2::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-index.html)", "allOf": [ { "type": "object", @@ -259,14 +258,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IdentityStore::GroupMembership" + "AWS::ResourceExplorer2::Index" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS:IdentityStore::GroupMembership \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-groupmembership.html)" + "Definition of AWS::ResourceExplorer2::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-index.html)" ] }, "Properties": { - "$ref": "resources/aws-identitystore-groupmembership.json" + "$ref": "resources/aws-resourceexplorer2-index.json" } }, "required": [ @@ -280,9 +279,9 @@ ], "additionalProperties": false }, - "AWS_S3_MultiRegionAccessPoint": { + "AWS_Bedrock_Blueprint": { "type": "object", - "markdownDescription": "AWS::S3::MultiRegionAccessPoint is an Amazon S3 resource type that dynamically routes S3 requests to easily satisfy geographic compliance requirements based on customer-defined routing policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html)", + "markdownDescription": "Definition of AWS::Bedrock::Blueprint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-blueprint.html)", "allOf": [ { "type": "object", @@ -290,14 +289,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::MultiRegionAccessPoint" + "AWS::Bedrock::Blueprint" ], "markdownEnumDescriptions": [ - "AWS::S3::MultiRegionAccessPoint is an Amazon S3 resource type that dynamically routes S3 requests to easily satisfy geographic compliance requirements based on customer-defined routing policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html)" + "Definition of AWS::Bedrock::Blueprint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-blueprint.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-multiregionaccesspoint.json" + "$ref": "resources/aws-bedrock-blueprint.json" } }, "required": [ @@ -311,9 +310,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPool": { + "AWS_Omics_SequenceStore": { "type": "object", - "markdownDescription": "Definition of AWS::Cognito::UserPool Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html)", + "markdownDescription": "Resource Type definition for AWS::Omics::SequenceStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-sequencestore.html)", "allOf": [ { "type": "object", @@ -321,18 +320,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPool" + "AWS::Omics::SequenceStore" ], "markdownEnumDescriptions": [ - "Definition of AWS::Cognito::UserPool Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html)" + "Resource Type definition for AWS::Omics::SequenceStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-sequencestore.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpool.json" + "$ref": "resources/aws-omics-sequencestore.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -341,9 +341,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_Filter": { + "AWS_DataSync_LocationObjectStorage": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GuardDuty::Filter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html)", + "markdownDescription": "Resource Type definition for AWS::DataSync::LocationObjectStorage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html)", "allOf": [ { "type": "object", @@ -351,19 +351,18 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::Filter" + "AWS::DataSync::LocationObjectStorage" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GuardDuty::Filter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html)" + "Resource Type definition for AWS::DataSync::LocationObjectStorage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-filter.json" + "$ref": "resources/aws-datasync-locationobjectstorage.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -372,9 +371,9 @@ ], "additionalProperties": false }, - "AWS_SimSpaceWeaver_Simulation": { + "AWS_ApplicationAutoScaling_ScalingPolicy": { "type": "object", - "markdownDescription": "AWS::SimSpaceWeaver::Simulation resource creates an AWS Simulation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-simspaceweaver-simulation.html)", + "markdownDescription": "The ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource defines a scaling policy that Application Auto Scaling uses to adjust the capacity of a scalable target. \n For more information, see [Target tracking scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) in the *Application Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html)", "allOf": [ { "type": "object", @@ -382,14 +381,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SimSpaceWeaver::Simulation" + "AWS::ApplicationAutoScaling::ScalingPolicy" ], "markdownEnumDescriptions": [ - "AWS::SimSpaceWeaver::Simulation resource creates an AWS Simulation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-simspaceweaver-simulation.html)" + "The ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource defines a scaling policy that Application Auto Scaling uses to adjust the capacity of a scalable target. \n For more information, see [Target tracking scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) in the *Application Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-simspaceweaver-simulation.json" + "$ref": "resources/aws-applicationautoscaling-scalingpolicy.json" } }, "required": [ @@ -403,9 +402,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackageV2_ChannelPolicy": { + "AWS_EMRServerless_Application": { "type": "object", - "markdownDescription": "

Represents a resource-based policy that allows or denies access to a channel.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html)", + "markdownDescription": "Resource schema for AWS::EMRServerless::Application Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrserverless-application.html)", "allOf": [ { "type": "object", @@ -413,14 +412,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackageV2::ChannelPolicy" + "AWS::EMRServerless::Application" ], "markdownEnumDescriptions": [ - "

Represents a resource-based policy that allows or denies access to a channel.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html)" + "Resource schema for AWS::EMRServerless::Application Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrserverless-application.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackagev2-channelpolicy.json" + "$ref": "resources/aws-emrserverless-application.json" } }, "required": [ @@ -434,9 +433,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_Fleet": { + "AWS_Lightsail_Bucket": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-fleet.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-bucket.html)", "allOf": [ { "type": "object", @@ -444,14 +443,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::Fleet" + "AWS::Lightsail::Bucket" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-fleet.html)" + "Resource Type definition for AWS::Lightsail::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-bucket.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-fleet.json" + "$ref": "resources/aws-lightsail-bucket.json" } }, "required": [ @@ -465,9 +464,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_ConnectorDefinitionVersion": { + "AWS_SSMIncidents_ReplicationSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::ConnectorDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html)", + "markdownDescription": "Resource type definition for AWS::SSMIncidents::ReplicationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-replicationset.html)", "allOf": [ { "type": "object", @@ -475,14 +474,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::ConnectorDefinitionVersion" + "AWS::SSMIncidents::ReplicationSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::ConnectorDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html)" + "Resource type definition for AWS::SSMIncidents::ReplicationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-replicationset.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-connectordefinitionversion.json" + "$ref": "resources/aws-ssmincidents-replicationset.json" } }, "required": [ @@ -496,9 +495,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_Stage": { + "AWS_CustomerProfiles_ObjectType": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ApiGatewayV2::Stage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html)", + "markdownDescription": "An ObjectType resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html)", "allOf": [ { "type": "object", @@ -506,14 +505,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::Stage" + "AWS::CustomerProfiles::ObjectType" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ApiGatewayV2::Stage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html)" + "An ObjectType resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-stage.json" + "$ref": "resources/aws-customerprofiles-objecttype.json" } }, "required": [ @@ -527,9 +526,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkAcl": { + "AWS_S3_MultiRegionAccessPoint": { "type": "object", - "markdownDescription": "Specifies a network ACL for your VPC.\n To add a network ACL entry, see [AWS::EC2::NetworkAclEntry](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkacl.html)", + "markdownDescription": "AWS::S3::MultiRegionAccessPoint is an Amazon S3 resource type that dynamically routes S3 requests to easily satisfy geographic compliance requirements based on customer-defined routing policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html)", "allOf": [ { "type": "object", @@ -537,14 +536,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkAcl" + "AWS::S3::MultiRegionAccessPoint" ], "markdownEnumDescriptions": [ - "Specifies a network ACL for your VPC.\n To add a network ACL entry, see [AWS::EC2::NetworkAclEntry](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkacl.html)" + "AWS::S3::MultiRegionAccessPoint is an Amazon S3 resource type that dynamically routes S3 requests to easily satisfy geographic compliance requirements based on customer-defined routing policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkacl.json" + "$ref": "resources/aws-s3-multiregionaccesspoint.json" } }, "required": [ @@ -558,9 +557,9 @@ ], "additionalProperties": false }, - "AWS_Location_GeofenceCollection": { + "AWS_Pinpoint_SMSChannel": { "type": "object", - "markdownDescription": "Definition of AWS::Location::GeofenceCollection Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::SMSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html)", "allOf": [ { "type": "object", @@ -568,14 +567,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Location::GeofenceCollection" + "AWS::Pinpoint::SMSChannel" ], "markdownEnumDescriptions": [ - "Definition of AWS::Location::GeofenceCollection Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html)" + "Resource Type definition for AWS::Pinpoint::SMSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html)" ] }, "Properties": { - "$ref": "resources/aws-location-geofencecollection.json" + "$ref": "resources/aws-pinpoint-smschannel.json" } }, "required": [ @@ -589,9 +588,9 @@ ], "additionalProperties": false }, - "AWS_CodeArtifact_Domain": { + "AWS_DataZone_EnvironmentBlueprintConfiguration": { "type": "object", - "markdownDescription": "The resource schema to create a CodeArtifact domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html)", + "markdownDescription": "Definition of AWS::DataZone::EnvironmentBlueprintConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentblueprintconfiguration.html)", "allOf": [ { "type": "object", @@ -599,14 +598,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeArtifact::Domain" + "AWS::DataZone::EnvironmentBlueprintConfiguration" ], "markdownEnumDescriptions": [ - "The resource schema to create a CodeArtifact domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html)" + "Definition of AWS::DataZone::EnvironmentBlueprintConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentblueprintconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-codeartifact-domain.json" + "$ref": "resources/aws-datazone-environmentblueprintconfiguration.json" } }, "required": [ @@ -620,9 +619,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_AppBlock": { + "AWS_Synthetics_Canary": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::AppBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblock.html)", + "markdownDescription": "Resource Type definition for AWS::Synthetics::Canary \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html)", "allOf": [ { "type": "object", @@ -630,14 +629,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::AppBlock" + "AWS::Synthetics::Canary" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::AppBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblock.html)" + "Resource Type definition for AWS::Synthetics::Canary \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-appblock.json" + "$ref": "resources/aws-synthetics-canary.json" } }, "required": [ @@ -651,9 +650,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayRouteTable": { + "AWS_ApiGatewayV2_RouteResponse": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayRouteTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::RouteResponse`` resource creates a route response for a WebSocket API. For more information, see [Set up Route Responses for a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-route-response.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html)", "allOf": [ { "type": "object", @@ -661,14 +660,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayRouteTable" + "AWS::ApiGatewayV2::RouteResponse" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TransitGatewayRouteTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html)" + "The ``AWS::ApiGatewayV2::RouteResponse`` resource creates a route response for a WebSocket API. For more information, see [Set up Route Responses for a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-route-response.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewayroutetable.json" + "$ref": "resources/aws-apigatewayv2-routeresponse.json" } }, "required": [ @@ -682,9 +681,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_PortfolioShare": { + "AWS_Billing_BillingView": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::PortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html)", + "markdownDescription": "A billing view is a container of cost & usage metadata. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billing-billingview.html)", "allOf": [ { "type": "object", @@ -692,14 +691,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::PortfolioShare" + "AWS::Billing::BillingView" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::PortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html)" + "A billing view is a container of cost & usage metadata. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billing-billingview.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-portfolioshare.json" + "$ref": "resources/aws-billing-billingview.json" } }, "required": [ @@ -713,9 +712,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCEndpointConnectionNotification": { + "AWS_EC2_TransitGatewayMulticastDomainAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCEndpointConnectionNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html)", + "markdownDescription": "The AWS::EC2::TransitGatewayMulticastDomainAssociation type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html)", "allOf": [ { "type": "object", @@ -723,14 +722,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCEndpointConnectionNotification" + "AWS::EC2::TransitGatewayMulticastDomainAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCEndpointConnectionNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html)" + "The AWS::EC2::TransitGatewayMulticastDomainAssociation type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcendpointconnectionnotification.json" + "$ref": "resources/aws-ec2-transitgatewaymulticastdomainassociation.json" } }, "required": [ @@ -744,9 +743,9 @@ ], "additionalProperties": false }, - "AWS_EKS_PodIdentityAssociation": { + "AWS_IoTTwinMaker_ComponentType": { "type": "object", - "markdownDescription": "An object representing an Amazon EKS PodIdentityAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-podidentityassociation.html)", + "markdownDescription": "Resource schema for AWS::IoTTwinMaker::ComponentType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-componenttype.html)", "allOf": [ { "type": "object", @@ -754,14 +753,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EKS::PodIdentityAssociation" + "AWS::IoTTwinMaker::ComponentType" ], "markdownEnumDescriptions": [ - "An object representing an Amazon EKS PodIdentityAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-podidentityassociation.html)" + "Resource schema for AWS::IoTTwinMaker::ComponentType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-componenttype.html)" ] }, "Properties": { - "$ref": "resources/aws-eks-podidentityassociation.json" + "$ref": "resources/aws-iottwinmaker-componenttype.json" } }, "required": [ @@ -775,9 +774,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_LoggerDefinitionVersion": { + "AWS_Lambda_EventSourceMapping": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::LoggerDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html)", + "markdownDescription": "The ``AWS::Lambda::EventSourceMapping`` resource creates a mapping between an event source and an LAMlong function. LAM reads items from the event source and triggers the function.\n For details about each event source type, see the following topics. In particular, each of the topics describes the required and optional parameters for the specific event source. \n + [Configuring a Dynamo DB stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#services-dynamodb-eventsourcemapping) \n + [Configuring a Kinesis stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#services-kinesis-eventsourcemapping) \n + [Configuring an SQS queue as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-eventsource) \n + [Configuring an MQ broker as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html#services-mq-eventsourcemapping) \n + [Configuring MSK as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html) \n + [Configuring Self-Managed Apache Kafka as an event source](https://docs.aws.amazon.com/lambda/latest/dg/kafka-smaa.html) \n + [Configuring Amazon DocumentDB as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-documentdb.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)", "allOf": [ { "type": "object", @@ -785,14 +784,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::LoggerDefinitionVersion" + "AWS::Lambda::EventSourceMapping" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::LoggerDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html)" + "The ``AWS::Lambda::EventSourceMapping`` resource creates a mapping between an event source and an LAMlong function. LAM reads items from the event source and triggers the function.\n For details about each event source type, see the following topics. In particular, each of the topics describes the required and optional parameters for the specific event source. \n + [Configuring a Dynamo DB stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#services-dynamodb-eventsourcemapping) \n + [Configuring a Kinesis stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#services-kinesis-eventsourcemapping) \n + [Configuring an SQS queue as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-eventsource) \n + [Configuring an MQ broker as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html#services-mq-eventsourcemapping) \n + [Configuring MSK as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html) \n + [Configuring Self-Managed Apache Kafka as an event source](https://docs.aws.amazon.com/lambda/latest/dg/kafka-smaa.html) \n + [Configuring Amazon DocumentDB as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-documentdb.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-loggerdefinitionversion.json" + "$ref": "resources/aws-lambda-eventsourcemapping.json" } }, "required": [ @@ -806,9 +805,9 @@ ], "additionalProperties": false }, - "AWS_EKS_AccessEntry": { + "AWS_SageMaker_CodeRepository": { "type": "object", - "markdownDescription": "An object representing an Amazon EKS AccessEntry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-accessentry.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::CodeRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html)", "allOf": [ { "type": "object", @@ -816,14 +815,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EKS::AccessEntry" + "AWS::SageMaker::CodeRepository" ], "markdownEnumDescriptions": [ - "An object representing an Amazon EKS AccessEntry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-accessentry.html)" + "Resource Type definition for AWS::SageMaker::CodeRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html)" ] }, "Properties": { - "$ref": "resources/aws-eks-accessentry.json" + "$ref": "resources/aws-sagemaker-coderepository.json" } }, "required": [ @@ -837,9 +836,9 @@ ], "additionalProperties": false }, - "AWS_PCAConnectorSCEP_Connector": { + "AWS_KinesisAnalytics_ApplicationOutput": { "type": "object", - "markdownDescription": "Represents a Connector that allows certificate issuance through Simple Certificate Enrollment Protocol (SCEP) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-connector.html)", + "markdownDescription": "Resource Type definition for AWS::KinesisAnalytics::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html)", "allOf": [ { "type": "object", @@ -847,14 +846,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCAConnectorSCEP::Connector" + "AWS::KinesisAnalytics::ApplicationOutput" ], "markdownEnumDescriptions": [ - "Represents a Connector that allows certificate issuance through Simple Certificate Enrollment Protocol (SCEP) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-connector.html)" + "Resource Type definition for AWS::KinesisAnalytics::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html)" ] }, "Properties": { - "$ref": "resources/aws-pcaconnectorscep-connector.json" + "$ref": "resources/aws-kinesisanalytics-applicationoutput.json" } }, "required": [ @@ -868,9 +867,9 @@ ], "additionalProperties": false }, - "AWS_FSx_Volume": { + "AWS_RDS_DBClusterParameterGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::FSx::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-volume.html)", + "markdownDescription": "The ``AWS::RDS::DBClusterParameterGroup`` resource creates a new Amazon RDS DB cluster parameter group.\n For information about configuring parameters for Amazon Aurora DB clusters, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n If you apply a parameter group to a DB cluster, then its DB instances might need to reboot. This can result in an outage while the DB instances are rebooting.\n If you apply a change to parameter group associated with a stopped DB cluster, then the updated stack waits until the DB cluster is started. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html)", "allOf": [ { "type": "object", @@ -878,14 +877,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FSx::Volume" + "AWS::RDS::DBClusterParameterGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::FSx::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-volume.html)" + "The ``AWS::RDS::DBClusterParameterGroup`` resource creates a new Amazon RDS DB cluster parameter group.\n For information about configuring parameters for Amazon Aurora DB clusters, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n If you apply a parameter group to a DB cluster, then its DB instances might need to reboot. This can result in an outage while the DB instances are rebooting.\n If you apply a change to parameter group associated with a stopped DB cluster, then the updated stack waits until the DB cluster is started. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-fsx-volume.json" + "$ref": "resources/aws-rds-dbclusterparametergroup.json" } }, "required": [ @@ -899,9 +898,9 @@ ], "additionalProperties": false }, - "AWS_ElasticLoadBalancingV2_TargetGroup": { + "AWS_IoTFleetWise_Campaign": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancingV2::TargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html)", + "markdownDescription": "Definition of AWS::IoTFleetWise::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html)", "allOf": [ { "type": "object", @@ -909,18 +908,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticLoadBalancingV2::TargetGroup" + "AWS::IoTFleetWise::Campaign" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElasticLoadBalancingV2::TargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html)" + "Definition of AWS::IoTFleetWise::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticloadbalancingv2-targetgroup.json" + "$ref": "resources/aws-iotfleetwise-campaign.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -929,9 +929,9 @@ ], "additionalProperties": false }, - "AWS_KinesisVideo_Stream": { + "AWS_Route53RecoveryControl_RoutingControl": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::KinesisVideo::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html)", + "markdownDescription": "AWS Route53 Recovery Control Routing Control resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-routingcontrol.html)", "allOf": [ { "type": "object", @@ -939,18 +939,19 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisVideo::Stream" + "AWS::Route53RecoveryControl::RoutingControl" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::KinesisVideo::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html)" + "AWS Route53 Recovery Control Routing Control resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-routingcontrol.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisvideo-stream.json" + "$ref": "resources/aws-route53recoverycontrol-routingcontrol.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -959,9 +960,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_Collaboration": { + "AWS_ECR_Repository": { "type": "object", - "markdownDescription": "Represents a collaboration between AWS accounts that allows for secure data collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-collaboration.html)", + "markdownDescription": "The ``AWS::ECR::Repository`` resource specifies an Amazon Elastic Container Registry (Amazon ECR) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR private repositories](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html) in the *Amazon ECR User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html)", "allOf": [ { "type": "object", @@ -969,19 +970,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::Collaboration" + "AWS::ECR::Repository" ], "markdownEnumDescriptions": [ - "Represents a collaboration between AWS accounts that allows for secure data collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-collaboration.html)" + "The ``AWS::ECR::Repository`` resource specifies an Amazon Elastic Container Registry (Amazon ECR) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR private repositories](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html) in the *Amazon ECR User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-collaboration.json" + "$ref": "resources/aws-ecr-repository.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -990,9 +990,9 @@ ], "additionalProperties": false }, - "AWS_PinpointEmail_ConfigurationSetEventDestination": { + "AWS_ApiGateway_Account": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::PinpointEmail::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html)", + "markdownDescription": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html)", "allOf": [ { "type": "object", @@ -1000,19 +1000,18 @@ "Type": { "type": "string", "enum": [ - "AWS::PinpointEmail::ConfigurationSetEventDestination" + "AWS::ApiGateway::Account" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::PinpointEmail::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html)" + "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpointemail-configurationseteventdestination.json" + "$ref": "resources/aws-apigateway-account.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -1021,9 +1020,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPNConnectionRoute": { + "AWS_AppConfig_ExtensionAssociation": { "type": "object", - "markdownDescription": "Specifies a static route for a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnectionroute.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-extensionassociation.html)", "allOf": [ { "type": "object", @@ -1031,19 +1030,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPNConnectionRoute" + "AWS::AppConfig::ExtensionAssociation" ], "markdownEnumDescriptions": [ - "Specifies a static route for a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnectionroute.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-extensionassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpnconnectionroute.json" + "$ref": "resources/aws-appconfig-extensionassociation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -1052,9 +1050,9 @@ ], "additionalProperties": false }, - "Alexa_ASK_Skill": { + "AWS_ServiceCatalogAppRegistry_AttributeGroup": { "type": "object", - "markdownDescription": "Resource Type definition for Alexa::ASK::Skill \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-alexa-ask-skill.html)", + "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html)", "allOf": [ { "type": "object", @@ -1062,14 +1060,14 @@ "Type": { "type": "string", "enum": [ - "Alexa::ASK::Skill" + "AWS::ServiceCatalogAppRegistry::AttributeGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for Alexa::ASK::Skill \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-alexa-ask-skill.html)" + "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html)" ] }, "Properties": { - "$ref": "resources/alexa-ask-skill.json" + "$ref": "resources/aws-servicecatalogappregistry-attributegroup.json" } }, "required": [ @@ -1083,9 +1081,9 @@ ], "additionalProperties": false }, - "AWS_ElasticLoadBalancingV2_ListenerCertificate": { + "AWS_CertificateManager_Certificate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancingV2::ListenerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html)", + "markdownDescription": "Resource Type definition for AWS::CertificateManager::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html)", "allOf": [ { "type": "object", @@ -1093,14 +1091,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticLoadBalancingV2::ListenerCertificate" + "AWS::CertificateManager::Certificate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElasticLoadBalancingV2::ListenerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html)" + "Resource Type definition for AWS::CertificateManager::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticloadbalancingv2-listenercertificate.json" + "$ref": "resources/aws-certificatemanager-certificate.json" } }, "required": [ @@ -1114,9 +1112,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VolumeAttachment": { + "AWS_EC2_NetworkInterfaceAttachment": { "type": "object", - "markdownDescription": "Attaches an Amazon EBS volume to a running instance and exposes it to the instance with the specified device name.\n Before this resource can be deleted (and therefore the volume detached), you must first unmount the volume in the instance. Failure to do so results in the volume being stuck in the busy state while it is trying to detach, which could possibly damage the file system or the data it contains.\n If an Amazon EBS volume is the root device of an instance, it cannot be detached while the instance is in the \"running\" state. To detach the root volume, stop the instance first.\n If the root volume is detached from an instance with an MKT product code, then the product codes from that volume are no longer associated with the instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volumeattachment.html)", + "markdownDescription": "Attaches an elastic network interface (ENI) to an Amazon EC2 instance. You can use this resource type to attach additional network interfaces to an instance without interruption. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfaceattachment.html)", "allOf": [ { "type": "object", @@ -1124,14 +1122,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VolumeAttachment" + "AWS::EC2::NetworkInterfaceAttachment" ], "markdownEnumDescriptions": [ - "Attaches an Amazon EBS volume to a running instance and exposes it to the instance with the specified device name.\n Before this resource can be deleted (and therefore the volume detached), you must first unmount the volume in the instance. Failure to do so results in the volume being stuck in the busy state while it is trying to detach, which could possibly damage the file system or the data it contains.\n If an Amazon EBS volume is the root device of an instance, it cannot be detached while the instance is in the \"running\" state. To detach the root volume, stop the instance first.\n If the root volume is detached from an instance with an MKT product code, then the product codes from that volume are no longer associated with the instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volumeattachment.html)" + "Attaches an elastic network interface (ENI) to an Amazon EC2 instance. You can use this resource type to attach additional network interfaces to an instance without interruption. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfaceattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-volumeattachment.json" + "$ref": "resources/aws-ec2-networkinterfaceattachment.json" } }, "required": [ @@ -1145,9 +1143,9 @@ ], "additionalProperties": false }, - "AWS_Route53_DNSSEC": { + "AWS_DataZone_EnvironmentProfile": { "type": "object", - "markdownDescription": "Resource used to control (enable/disable) DNSSEC in a specific hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-dnssec.html)", + "markdownDescription": "AWS Datazone Environment Profile is pre-configured set of resources and blueprints that provide reusable templates for creating environments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentprofile.html)", "allOf": [ { "type": "object", @@ -1155,14 +1153,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53::DNSSEC" + "AWS::DataZone::EnvironmentProfile" ], "markdownEnumDescriptions": [ - "Resource used to control (enable/disable) DNSSEC in a specific hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-dnssec.html)" + "AWS Datazone Environment Profile is pre-configured set of resources and blueprints that provide reusable templates for creating environments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-route53-dnssec.json" + "$ref": "resources/aws-datazone-environmentprofile.json" } }, "required": [ @@ -1176,9 +1174,9 @@ ], "additionalProperties": false }, - "AWS_IAM_SAMLProvider": { + "AWS_VerifiedPermissions_PolicyStore": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IAM::SAMLProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html)", + "markdownDescription": "Represents a policy store that you can place schema, policies, and policy templates in to validate authorization requests \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policystore.html)", "allOf": [ { "type": "object", @@ -1186,18 +1184,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::SAMLProvider" + "AWS::VerifiedPermissions::PolicyStore" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IAM::SAMLProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html)" + "Represents a policy store that you can place schema, policies, and policy templates in to validate authorization requests \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policystore.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-samlprovider.json" + "$ref": "resources/aws-verifiedpermissions-policystore.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -1206,9 +1205,9 @@ ], "additionalProperties": false }, - "AWS_WAFv2_WebACL": { + "AWS_EMR_WALWorkspace": { "type": "object", - "markdownDescription": "Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html)", + "markdownDescription": "Resource schema for AWS::EMR::WALWorkspace Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-walworkspace.html)", "allOf": [ { "type": "object", @@ -1216,19 +1215,18 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFv2::WebACL" + "AWS::EMR::WALWorkspace" ], "markdownEnumDescriptions": [ - "Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html)" + "Resource schema for AWS::EMR::WALWorkspace Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-walworkspace.html)" ] }, "Properties": { - "$ref": "resources/aws-wafv2-webacl.json" + "$ref": "resources/aws-emr-walworkspace.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -1237,9 +1235,9 @@ ], "additionalProperties": false }, - "AWS_AppMesh_VirtualNode": { + "AWS_ServiceCatalog_CloudFormationProvisionedProduct": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualNode \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html)", + "markdownDescription": "Resource Schema for AWS::ServiceCatalog::CloudFormationProvisionedProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html)", "allOf": [ { "type": "object", @@ -1247,19 +1245,18 @@ "Type": { "type": "string", "enum": [ - "AWS::AppMesh::VirtualNode" + "AWS::ServiceCatalog::CloudFormationProvisionedProduct" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppMesh::VirtualNode \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html)" + "Resource Schema for AWS::ServiceCatalog::CloudFormationProvisionedProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html)" ] }, "Properties": { - "$ref": "resources/aws-appmesh-virtualnode.json" + "$ref": "resources/aws-servicecatalog-cloudformationprovisionedproduct.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -1268,9 +1265,9 @@ ], "additionalProperties": false }, - "AWS_SSMIncidents_ReplicationSet": { + "AWS_Personalize_Solution": { "type": "object", - "markdownDescription": "Resource type definition for AWS::SSMIncidents::ReplicationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-replicationset.html)", + "markdownDescription": "Resource schema for AWS::Personalize::Solution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-solution.html)", "allOf": [ { "type": "object", @@ -1278,14 +1275,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMIncidents::ReplicationSet" + "AWS::Personalize::Solution" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::SSMIncidents::ReplicationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-replicationset.html)" + "Resource schema for AWS::Personalize::Solution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-solution.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmincidents-replicationset.json" + "$ref": "resources/aws-personalize-solution.json" } }, "required": [ @@ -1299,9 +1296,9 @@ ], "additionalProperties": false }, - "AWS_Logs_LogGroup": { + "AWS_GameLift_Fleet": { "type": "object", - "markdownDescription": "The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n + Log group names must be unique within a Region for an AWS account.\n + Log group names can be between 1 and 512 characters long.\n + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html)", + "markdownDescription": "The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html)", "allOf": [ { "type": "object", @@ -1309,18 +1306,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::LogGroup" + "AWS::GameLift::Fleet" ], "markdownEnumDescriptions": [ - "The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n + Log group names must be unique within a Region for an AWS account.\n + Log group names can be between 1 and 512 characters long.\n + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html)" + "The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-loggroup.json" + "$ref": "resources/aws-gamelift-fleet.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -1329,9 +1327,9 @@ ], "additionalProperties": false }, - "AWS_PinpointEmail_Identity": { + "AWS_WorkSpacesWeb_SessionLogger": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::PinpointEmail::Identity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::SessionLogger Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html)", "allOf": [ { "type": "object", @@ -1339,14 +1337,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PinpointEmail::Identity" + "AWS::WorkSpacesWeb::SessionLogger" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::PinpointEmail::Identity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html)" + "Definition of AWS::WorkSpacesWeb::SessionLogger Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-sessionlogger.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpointemail-identity.json" + "$ref": "resources/aws-workspacesweb-sessionlogger.json" } }, "required": [ @@ -1360,9 +1358,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_EndpointConfig": { + "AWS_IoT_TopicRuleDestination": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::EndpointConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::TopicRuleDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html)", "allOf": [ { "type": "object", @@ -1370,19 +1368,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::EndpointConfig" + "AWS::IoT::TopicRuleDestination" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::EndpointConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html)" + "Resource Type definition for AWS::IoT::TopicRuleDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-endpointconfig.json" + "$ref": "resources/aws-iot-topicruledestination.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -1391,9 +1388,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_AuthPolicy": { + "AWS_KendraRanking_ExecutionPlan": { "type": "object", - "markdownDescription": "Creates or updates the auth policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-authpolicy.html)", + "markdownDescription": "A KendraRanking Rescore execution plan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendraranking-executionplan.html)", "allOf": [ { "type": "object", @@ -1401,14 +1398,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::AuthPolicy" + "AWS::KendraRanking::ExecutionPlan" ], "markdownEnumDescriptions": [ - "Creates or updates the auth policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-authpolicy.html)" + "A KendraRanking Rescore execution plan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendraranking-executionplan.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-authpolicy.json" + "$ref": "resources/aws-kendraranking-executionplan.json" } }, "required": [ @@ -1422,9 +1419,9 @@ ], "additionalProperties": false }, - "AWS_APS_RuleGroupsNamespace": { + "AWS_OpsWorks_App": { "type": "object", - "markdownDescription": "RuleGroupsNamespace schema for cloudformation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-rulegroupsnamespace.html)", + "markdownDescription": "Resource Type definition for AWS::OpsWorks::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html)", "allOf": [ { "type": "object", @@ -1432,14 +1429,14 @@ "Type": { "type": "string", "enum": [ - "AWS::APS::RuleGroupsNamespace" + "AWS::OpsWorks::App" ], "markdownEnumDescriptions": [ - "RuleGroupsNamespace schema for cloudformation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-rulegroupsnamespace.html)" + "Resource Type definition for AWS::OpsWorks::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html)" ] }, "Properties": { - "$ref": "resources/aws-aps-rulegroupsnamespace.json" + "$ref": "resources/aws-opsworks-app.json" } }, "required": [ @@ -1453,9 +1450,9 @@ ], "additionalProperties": false }, - "AWS_Glue_DataCatalogEncryptionSettings": { + "AWS_DirectoryService_MicrosoftAD": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::DataCatalogEncryptionSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html)", + "markdownDescription": "Resource Type definition for AWS::DirectoryService::MicrosoftAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html)", "allOf": [ { "type": "object", @@ -1463,14 +1460,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::DataCatalogEncryptionSettings" + "AWS::DirectoryService::MicrosoftAD" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::DataCatalogEncryptionSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html)" + "Resource Type definition for AWS::DirectoryService::MicrosoftAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-datacatalogencryptionsettings.json" + "$ref": "resources/aws-directoryservice-microsoftad.json" } }, "required": [ @@ -1484,9 +1481,9 @@ ], "additionalProperties": false }, - "AWS_EFS_AccessPoint": { + "AWS_Redshift_ScheduledAction": { "type": "object", - "markdownDescription": "The ``AWS::EFS::AccessPoint`` resource creates an EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point. The operating system user and group override any identity information provided by the NFS client. The file system path is exposed as the access point's root directory. Applications using the access point can only access data in its own directory and below. To learn more, see [Mounting a file system using EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html).\n This operation requires permissions for the ``elasticfilesystem:CreateAccessPoint`` action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html)", + "markdownDescription": "The `AWS::Redshift::ScheduledAction` resource creates an Amazon Redshift Scheduled Action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html)", "allOf": [ { "type": "object", @@ -1494,14 +1491,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EFS::AccessPoint" + "AWS::Redshift::ScheduledAction" ], "markdownEnumDescriptions": [ - "The ``AWS::EFS::AccessPoint`` resource creates an EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point. The operating system user and group override any identity information provided by the NFS client. The file system path is exposed as the access point's root directory. Applications using the access point can only access data in its own directory and below. To learn more, see [Mounting a file system using EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html).\n This operation requires permissions for the ``elasticfilesystem:CreateAccessPoint`` action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html)" + "The `AWS::Redshift::ScheduledAction` resource creates an Amazon Redshift Scheduled Action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html)" ] }, "Properties": { - "$ref": "resources/aws-efs-accesspoint.json" + "$ref": "resources/aws-redshift-scheduledaction.json" } }, "required": [ @@ -1515,9 +1512,9 @@ ], "additionalProperties": false }, - "AWS_IoTTwinMaker_ComponentType": { + "AWS_EFS_MountTarget": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTTwinMaker::ComponentType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-componenttype.html)", + "markdownDescription": "The ``AWS::EFS::MountTarget`` resource is an Amazon EFS resource that creates a mount target for an EFS file system. You can then mount the file system on Amazon EC2 instances or other resources by using the mount target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)", "allOf": [ { "type": "object", @@ -1525,14 +1522,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTTwinMaker::ComponentType" + "AWS::EFS::MountTarget" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTTwinMaker::ComponentType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-componenttype.html)" + "The ``AWS::EFS::MountTarget`` resource is an Amazon EFS resource that creates a mount target for an EFS file system. You can then mount the file system on Amazon EC2 instances or other resources by using the mount target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)" ] }, "Properties": { - "$ref": "resources/aws-iottwinmaker-componenttype.json" + "$ref": "resources/aws-efs-mounttarget.json" } }, "required": [ @@ -1546,9 +1543,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorksCM_Server": { + "AWS_AppSync_Api": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorksCM::Server \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html)", + "markdownDescription": "Resource schema for AppSync Api \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html)", "allOf": [ { "type": "object", @@ -1556,14 +1553,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorksCM::Server" + "AWS::AppSync::Api" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorksCM::Server \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworkscm-server.html)" + "Resource schema for AppSync Api \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworkscm-server.json" + "$ref": "resources/aws-appsync-api.json" } }, "required": [ @@ -1577,9 +1574,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_Authorizer": { + "AWS_MediaStore_Container": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::Authorizer`` resource creates an authorizer for a WebSocket API or an HTTP API. To learn more, see [Controlling and managing access to a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-control-access.html) and [Controlling and managing access to an HTTP API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-access-control.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html)", + "markdownDescription": "Resource Type definition for AWS::MediaStore::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html)", "allOf": [ { "type": "object", @@ -1587,14 +1584,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::Authorizer" + "AWS::MediaStore::Container" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::Authorizer`` resource creates an authorizer for a WebSocket API or an HTTP API. To learn more, see [Controlling and managing access to a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-control-access.html) and [Controlling and managing access to an HTTP API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-access-control.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html)" + "Resource Type definition for AWS::MediaStore::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-authorizer.json" + "$ref": "resources/aws-mediastore-container.json" } }, "required": [ @@ -1608,9 +1605,9 @@ ], "additionalProperties": false }, - "AWS_RoboMaker_RobotApplicationVersion": { + "AWS_Route53Resolver_ResolverConfig": { "type": "object", - "markdownDescription": "AWS::RoboMaker::RobotApplicationVersion resource creates an AWS RoboMaker RobotApplicationVersion. This helps you control which code your robot uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverconfig.html)", "allOf": [ { "type": "object", @@ -1618,14 +1615,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RoboMaker::RobotApplicationVersion" + "AWS::Route53Resolver::ResolverConfig" ], "markdownEnumDescriptions": [ - "AWS::RoboMaker::RobotApplicationVersion resource creates an AWS RoboMaker RobotApplicationVersion. This helps you control which code your robot uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html)" + "Resource schema for AWS::Route53Resolver::ResolverConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-robomaker-robotapplicationversion.json" + "$ref": "resources/aws-route53resolver-resolverconfig.json" } }, "required": [ @@ -1639,9 +1636,9 @@ ], "additionalProperties": false }, - "AWS_QBusiness_Retriever": { + "AWS_AutoScaling_AutoScalingGroup": { "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::Retriever Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html)", + "markdownDescription": "The ``AWS::AutoScaling::AutoScalingGroup`` resource defines an Amazon EC2 Auto Scaling group, which is a collection of Amazon EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management. \n For more information about Amazon EC2 Auto Scaling, see the [Amazon EC2 Auto Scaling User Guide](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html). \n Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a [launch template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) or a launch configuration. We strongly recommend that you do not use launch configurations. For more information, see [Launch configurations](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For help migrating from launch configurations to launch templates, see [Migrate CloudFormation stacks from launch configurations to launch templates](https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html) in the *Amazon EC2 Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html)", "allOf": [ { "type": "object", @@ -1649,14 +1646,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QBusiness::Retriever" + "AWS::AutoScaling::AutoScalingGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::Retriever Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html)" + "The ``AWS::AutoScaling::AutoScalingGroup`` resource defines an Amazon EC2 Auto Scaling group, which is a collection of Amazon EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management. \n For more information about Amazon EC2 Auto Scaling, see the [Amazon EC2 Auto Scaling User Guide](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html). \n Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a [launch template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) or a launch configuration. We strongly recommend that you do not use launch configurations. For more information, see [Launch configurations](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For help migrating from launch configurations to launch templates, see [Migrate CloudFormation stacks from launch configurations to launch templates](https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html) in the *Amazon EC2 Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html)" ] }, "Properties": { - "$ref": "resources/aws-qbusiness-retriever.json" + "$ref": "resources/aws-autoscaling-autoscalinggroup.json" } }, "required": [ @@ -1670,9 +1667,9 @@ ], "additionalProperties": false }, - "AWS_EKS_FargateProfile": { + "AWS_AutoScaling_LifecycleHook": { "type": "object", - "markdownDescription": "Resource Schema for AWS::EKS::FargateProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html)", + "markdownDescription": "Resource Type definition for AWS::AutoScaling::LifecycleHook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-lifecyclehook.html)", "allOf": [ { "type": "object", @@ -1680,14 +1677,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EKS::FargateProfile" + "AWS::AutoScaling::LifecycleHook" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::EKS::FargateProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html)" + "Resource Type definition for AWS::AutoScaling::LifecycleHook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-lifecyclehook.html)" ] }, "Properties": { - "$ref": "resources/aws-eks-fargateprofile.json" + "$ref": "resources/aws-autoscaling-lifecyclehook.json" } }, "required": [ @@ -1701,9 +1698,9 @@ ], "additionalProperties": false }, - "AWS_Config_AggregationAuthorization": { + "AWS_SSO_PermissionSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Config::AggregationAuthorization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html)", + "markdownDescription": "Resource Type definition for SSO PermissionSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html)", "allOf": [ { "type": "object", @@ -1711,14 +1708,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::AggregationAuthorization" + "AWS::SSO::PermissionSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Config::AggregationAuthorization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html)" + "Resource Type definition for SSO PermissionSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html)" ] }, "Properties": { - "$ref": "resources/aws-config-aggregationauthorization.json" + "$ref": "resources/aws-sso-permissionset.json" } }, "required": [ @@ -1732,9 +1729,9 @@ ], "additionalProperties": false }, - "AWS_EC2_LaunchTemplate": { + "AWS_AppConfig_HostedConfigurationVersion": { "type": "object", - "markdownDescription": "Specifies the properties for creating a launch template.\n The minimum required properties for specifying a launch template are as follows:\n + You must specify at least one property for the launch template data.\n + You can optionally specify a name for the launch template. If you do not specify a name, CFN creates a name for you.\n \n A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the ``ImageId`` property, which has no default value. If you do not specify an AMI ID for the launch template ``ImageId`` property, you must specify an AMI ID for the instance ``ImageId`` property.\n For more information, see [Launch an instance from a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html)", + "markdownDescription": "Resource Type definition for AWS::AppConfig::HostedConfigurationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html)", "allOf": [ { "type": "object", @@ -1742,14 +1739,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::LaunchTemplate" + "AWS::AppConfig::HostedConfigurationVersion" ], "markdownEnumDescriptions": [ - "Specifies the properties for creating a launch template.\n The minimum required properties for specifying a launch template are as follows:\n + You must specify at least one property for the launch template data.\n + You can optionally specify a name for the launch template. If you do not specify a name, CFN creates a name for you.\n \n A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the ``ImageId`` property, which has no default value. If you do not specify an AMI ID for the launch template ``ImageId`` property, you must specify an AMI ID for the instance ``ImageId`` property.\n For more information, see [Launch an instance from a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html)" + "Resource Type definition for AWS::AppConfig::HostedConfigurationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-launchtemplate.json" + "$ref": "resources/aws-appconfig-hostedconfigurationversion.json" } }, "required": [ @@ -1763,9 +1760,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_CloudFormationProduct": { + "AWS_CleanRooms_IdMappingTable": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::CloudFormationProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html)", + "markdownDescription": "Represents an association between an ID mapping workflow and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idmappingtable.html)", "allOf": [ { "type": "object", @@ -1773,14 +1770,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::CloudFormationProduct" + "AWS::CleanRooms::IdMappingTable" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::CloudFormationProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html)" + "Represents an association between an ID mapping workflow and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idmappingtable.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-cloudformationproduct.json" + "$ref": "resources/aws-cleanrooms-idmappingtable.json" } }, "required": [ @@ -1794,9 +1791,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_VpcAttachment": { + "AWS_ApiGateway_UsagePlan": { "type": "object", - "markdownDescription": "AWS::NetworkManager::VpcAttachment Resoruce Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-vpcattachment.html)", + "markdownDescription": "The ``AWS::ApiGateway::UsagePlan`` resource creates a usage plan for deployed APIs. A usage plan sets a target for the throttling and quota limits on individual client API keys. For more information, see [Creating and Using API Usage Plans in Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*.\n In some cases clients can exceed the targets that you set. Don\u2019t rely on usage plans to control costs. Consider using [](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html) to monitor costs and [](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) to manage API requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html)", "allOf": [ { "type": "object", @@ -1804,19 +1801,18 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::VpcAttachment" + "AWS::ApiGateway::UsagePlan" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::VpcAttachment Resoruce Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-vpcattachment.html)" + "The ``AWS::ApiGateway::UsagePlan`` resource creates a usage plan for deployed APIs. A usage plan sets a target for the throttling and quota limits on individual client API keys. For more information, see [Creating and Using API Usage Plans in Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*.\n In some cases clients can exceed the targets that you set. Don\u2019t rely on usage plans to control costs. Consider using [](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html) to monitor costs and [](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) to manage API requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-vpcattachment.json" + "$ref": "resources/aws-apigateway-usageplan.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -1825,9 +1821,9 @@ ], "additionalProperties": false }, - "AWS_ElasticLoadBalancingV2_LoadBalancer": { + "AWS_ServiceCatalog_ServiceActionAssociation": { "type": "object", - "markdownDescription": "Specifies an Application Load Balancer, a Network Load Balancer, or a Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html)", + "markdownDescription": "Resource Schema for AWS::ServiceCatalog::ServiceActionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html)", "allOf": [ { "type": "object", @@ -1835,18 +1831,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticLoadBalancingV2::LoadBalancer" + "AWS::ServiceCatalog::ServiceActionAssociation" ], "markdownEnumDescriptions": [ - "Specifies an Application Load Balancer, a Network Load Balancer, or a Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html)" + "Resource Schema for AWS::ServiceCatalog::ServiceActionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticloadbalancingv2-loadbalancer.json" + "$ref": "resources/aws-servicecatalog-serviceactionassociation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -1855,9 +1852,9 @@ ], "additionalProperties": false }, - "AWS_AutoScaling_WarmPool": { + "AWS_EKS_IdentityProviderConfig": { "type": "object", - "markdownDescription": "Resource schema for AWS::AutoScaling::WarmPool. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-warmpool.html)", + "markdownDescription": "An object representing an Amazon EKS IdentityProviderConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-identityproviderconfig.html)", "allOf": [ { "type": "object", @@ -1865,14 +1862,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AutoScaling::WarmPool" + "AWS::EKS::IdentityProviderConfig" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::AutoScaling::WarmPool. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-warmpool.html)" + "An object representing an Amazon EKS IdentityProviderConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-identityproviderconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-autoscaling-warmpool.json" + "$ref": "resources/aws-eks-identityproviderconfig.json" } }, "required": [ @@ -1886,9 +1883,9 @@ ], "additionalProperties": false }, - "AWS_SSO_Instance": { + "AWS_ConnectCampaignsV2_Campaign": { "type": "object", - "markdownDescription": "Resource Type definition for Identity Center (SSO) Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instance.html)", + "markdownDescription": "Definition of AWS::ConnectCampaignsV2::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html)", "allOf": [ { "type": "object", @@ -1896,18 +1893,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SSO::Instance" + "AWS::ConnectCampaignsV2::Campaign" ], "markdownEnumDescriptions": [ - "Resource Type definition for Identity Center (SSO) Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instance.html)" + "Definition of AWS::ConnectCampaignsV2::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html)" ] }, "Properties": { - "$ref": "resources/aws-sso-instance.json" + "$ref": "resources/aws-connectcampaignsv2-campaign.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -1916,9 +1914,9 @@ ], "additionalProperties": false }, - "AWS_IAM_ServiceLinkedRole": { + "AWS_CloudWatch_AnomalyDetector": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IAM::ServiceLinkedRole \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html)", + "markdownDescription": "Resource Type definition for AWS::CloudWatch::AnomalyDetector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html)", "allOf": [ { "type": "object", @@ -1926,14 +1924,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::ServiceLinkedRole" + "AWS::CloudWatch::AnomalyDetector" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IAM::ServiceLinkedRole \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html)" + "Resource Type definition for AWS::CloudWatch::AnomalyDetector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-servicelinkedrole.json" + "$ref": "resources/aws-cloudwatch-anomalydetector.json" } }, "required": [ @@ -1946,9 +1944,9 @@ ], "additionalProperties": false }, - "AWS_MSK_Configuration": { + "AWS_Wisdom_AIGuardrail": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MSK::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-configuration.html)", + "markdownDescription": "Definition of AWS::Wisdom::AIGuardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrail.html)", "allOf": [ { "type": "object", @@ -1956,14 +1954,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MSK::Configuration" + "AWS::Wisdom::AIGuardrail" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MSK::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-configuration.html)" + "Definition of AWS::Wisdom::AIGuardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrail.html)" ] }, "Properties": { - "$ref": "resources/aws-msk-configuration.json" + "$ref": "resources/aws-wisdom-aiguardrail.json" } }, "required": [ @@ -1977,9 +1975,9 @@ ], "additionalProperties": false }, - "AWS_PCAConnectorAD_Template": { + "AWS_Pinpoint_PushTemplate": { "type": "object", - "markdownDescription": "Represents a template that defines certificate configurations, both for issuance and client handling \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-template.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::PushTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-pushtemplate.html)", "allOf": [ { "type": "object", @@ -1987,14 +1985,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCAConnectorAD::Template" + "AWS::Pinpoint::PushTemplate" ], "markdownEnumDescriptions": [ - "Represents a template that defines certificate configurations, both for issuance and client handling \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-template.html)" + "Resource Type definition for AWS::Pinpoint::PushTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-pushtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-pcaconnectorad-template.json" + "$ref": "resources/aws-pinpoint-pushtemplate.json" } }, "required": [ @@ -2008,9 +2006,9 @@ ], "additionalProperties": false }, - "AWS_InspectorV2_Filter": { + "AWS_CloudFormation_Stack": { "type": "object", - "markdownDescription": "Inspector Filter resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-filter.html)", + "markdownDescription": "The AWS::CloudFormation::Stack resource nests a stack as a resource in a top-level template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html)", "allOf": [ { "type": "object", @@ -2018,14 +2016,14 @@ "Type": { "type": "string", "enum": [ - "AWS::InspectorV2::Filter" + "AWS::CloudFormation::Stack" ], "markdownEnumDescriptions": [ - "Inspector Filter resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-filter.html)" + "The AWS::CloudFormation::Stack resource nests a stack as a resource in a top-level template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html)" ] }, "Properties": { - "$ref": "resources/aws-inspectorv2-filter.json" + "$ref": "resources/aws-cloudformation-stack.json" } }, "required": [ @@ -2039,9 +2037,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_ParameterGroup": { + "AWS_PinpointEmail_DedicatedIpPool": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html)", + "markdownDescription": "Resource Type definition for AWS::PinpointEmail::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html)", "allOf": [ { "type": "object", @@ -2049,19 +2047,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::ParameterGroup" + "AWS::PinpointEmail::DedicatedIpPool" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html)" + "Resource Type definition for AWS::PinpointEmail::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-parametergroup.json" + "$ref": "resources/aws-pinpointemail-dedicatedippool.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -2070,9 +2067,9 @@ ], "additionalProperties": false }, - "AWS_SecurityLake_DataLake": { + "AWS_SES_ReceiptRuleSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SecurityLake::DataLake \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html)", + "markdownDescription": "Resource Type definition for AWS::SES::ReceiptRuleSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html)", "allOf": [ { "type": "object", @@ -2080,14 +2077,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityLake::DataLake" + "AWS::SES::ReceiptRuleSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SecurityLake::DataLake \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html)" + "Resource Type definition for AWS::SES::ReceiptRuleSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html)" ] }, "Properties": { - "$ref": "resources/aws-securitylake-datalake.json" + "$ref": "resources/aws-ses-receiptruleset.json" } }, "required": [ @@ -2100,9 +2097,9 @@ ], "additionalProperties": false }, - "AWS_EventSchemas_Registry": { + "AWS_EC2_TransitGatewayRouteTable": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EventSchemas::Registry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registry.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayRouteTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html)", "allOf": [ { "type": "object", @@ -2110,18 +2107,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EventSchemas::Registry" + "AWS::EC2::TransitGatewayRouteTable" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EventSchemas::Registry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registry.html)" + "Resource Type definition for AWS::EC2::TransitGatewayRouteTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetable.html)" ] }, "Properties": { - "$ref": "resources/aws-eventschemas-registry.json" + "$ref": "resources/aws-ec2-transitgatewayroutetable.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -2130,9 +2128,9 @@ ], "additionalProperties": false }, - "AWS_KinesisAnalytics_ApplicationOutput": { + "AWS_Greengrass_ConnectorDefinitionVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KinesisAnalytics::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::ConnectorDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html)", "allOf": [ { "type": "object", @@ -2140,14 +2138,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisAnalytics::ApplicationOutput" + "AWS::Greengrass::ConnectorDefinitionVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KinesisAnalytics::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationoutput.html)" + "Resource Type definition for AWS::Greengrass::ConnectorDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinitionversion.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisanalytics-applicationoutput.json" + "$ref": "resources/aws-greengrass-connectordefinitionversion.json" } }, "required": [ @@ -2161,9 +2159,9 @@ ], "additionalProperties": false }, - "AWS_DataBrew_Dataset": { + "AWS_FinSpace_Environment": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataBrew::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-finspace-environment.html)", "allOf": [ { "type": "object", @@ -2171,14 +2169,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataBrew::Dataset" + "AWS::FinSpace::Environment" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataBrew::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-finspace-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-databrew-dataset.json" + "$ref": "resources/aws-finspace-environment.json" } }, "required": [ @@ -2192,9 +2190,9 @@ ], "additionalProperties": false }, - "AWS_PinpointEmail_ConfigurationSet": { + "AWS_ACMPCA_CertificateAuthorityActivation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::PinpointEmail::ConfigurationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html)", + "markdownDescription": "Used to install the certificate authority certificate and update the certificate authority status. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html)", "allOf": [ { "type": "object", @@ -2202,14 +2200,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PinpointEmail::ConfigurationSet" + "AWS::ACMPCA::CertificateAuthorityActivation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::PinpointEmail::ConfigurationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html)" + "Used to install the certificate authority certificate and update the certificate authority status. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpointemail-configurationset.json" + "$ref": "resources/aws-acmpca-certificateauthorityactivation.json" } }, "required": [ @@ -2223,9 +2221,9 @@ ], "additionalProperties": false }, - "AWS_S3ObjectLambda_AccessPointPolicy": { + "AWS_PCS_Cluster": { "type": "object", - "markdownDescription": "AWS::S3ObjectLambda::AccessPointPolicy resource is an Amazon S3ObjectLambda policy type that you can use to control permissions for your S3ObjectLambda \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspointpolicy.html)", + "markdownDescription": "AWS::PCS::Cluster resource creates an AWS PCS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html)", "allOf": [ { "type": "object", @@ -2233,14 +2231,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3ObjectLambda::AccessPointPolicy" + "AWS::PCS::Cluster" ], "markdownEnumDescriptions": [ - "AWS::S3ObjectLambda::AccessPointPolicy resource is an Amazon S3ObjectLambda policy type that you can use to control permissions for your S3ObjectLambda \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspointpolicy.html)" + "AWS::PCS::Cluster resource creates an AWS PCS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-s3objectlambda-accesspointpolicy.json" + "$ref": "resources/aws-pcs-cluster.json" } }, "required": [ @@ -2254,9 +2252,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_IdentityProvider": { + "AWS_Personalize_DatasetGroup": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::IdentityProvider Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-identityprovider.html)", + "markdownDescription": "Resource Schema for AWS::Personalize::DatasetGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-datasetgroup.html)", "allOf": [ { "type": "object", @@ -2264,14 +2262,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::IdentityProvider" + "AWS::Personalize::DatasetGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::IdentityProvider Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-identityprovider.html)" + "Resource Schema for AWS::Personalize::DatasetGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-datasetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-identityprovider.json" + "$ref": "resources/aws-personalize-datasetgroup.json" } }, "required": [ @@ -2285,9 +2283,9 @@ ], "additionalProperties": false }, - "AWS_S3Express_AccessPoint": { + "AWS_Config_ConfigurationRecorder": { "type": "object", - "markdownDescription": "The AWS::S3Express::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html)", + "markdownDescription": "Resource Type definition for AWS::Config::ConfigurationRecorder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html)", "allOf": [ { "type": "object", @@ -2295,14 +2293,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Express::AccessPoint" + "AWS::Config::ConfigurationRecorder" ], "markdownEnumDescriptions": [ - "The AWS::S3Express::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html)" + "Resource Type definition for AWS::Config::ConfigurationRecorder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html)" ] }, "Properties": { - "$ref": "resources/aws-s3express-accesspoint.json" + "$ref": "resources/aws-config-configurationrecorder.json" } }, "required": [ @@ -2316,9 +2314,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_BasePathMapping": { + "AWS_Connect_SecurityKey": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::BasePathMapping`` resource creates a base path that clients who call your API must use in the invocation URL. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::SecurityKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securitykey.html)", "allOf": [ { "type": "object", @@ -2326,14 +2324,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::BasePathMapping" + "AWS::Connect::SecurityKey" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::BasePathMapping`` resource creates a base path that clients who call your API must use in the invocation URL. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html)" + "Resource Type definition for AWS::Connect::SecurityKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securitykey.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-basepathmapping.json" + "$ref": "resources/aws-connect-securitykey.json" } }, "required": [ @@ -2347,9 +2345,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationObjectStorage": { + "AWS_GameLift_ContainerGroupDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DataSync::LocationObjectStorage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html)", + "markdownDescription": "The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containergroupdefinition.html)", "allOf": [ { "type": "object", @@ -2357,18 +2355,19 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationObjectStorage" + "AWS::GameLift::ContainerGroupDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DataSync::LocationObjectStorage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html)" + "The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containergroupdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationobjectstorage.json" + "$ref": "resources/aws-gamelift-containergroupdefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -2377,9 +2376,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_ProductSubscription": { + "AWS_NetworkManager_Device": { "type": "object", - "markdownDescription": "The AWS::SecurityHub::ProductSubscription resource represents a subscription to a service that is allowed to generate findings for your Security Hub account. One product subscription resource is created for each product enabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-productsubscription.html)", + "markdownDescription": "The AWS::NetworkManager::Device type describes a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html)", "allOf": [ { "type": "object", @@ -2387,14 +2386,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::ProductSubscription" + "AWS::NetworkManager::Device" ], "markdownEnumDescriptions": [ - "The AWS::SecurityHub::ProductSubscription resource represents a subscription to a service that is allowed to generate findings for your Security Hub account. One product subscription resource is created for each product enabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-productsubscription.html)" + "The AWS::NetworkManager::Device type describes a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-productsubscription.json" + "$ref": "resources/aws-networkmanager-device.json" } }, "required": [ @@ -2408,9 +2407,9 @@ ], "additionalProperties": false }, - "AWS_IoTThingsGraph_FlowTemplate": { + "AWS_WAFv2_RuleGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoTThingsGraph::FlowTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html)", + "markdownDescription": "Contains the Rules that identify the requests that you want to allow, block, or count. In a RuleGroup, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a RuleGroup, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the RuleGroup with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a RuleGroup, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html)", "allOf": [ { "type": "object", @@ -2418,14 +2417,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTThingsGraph::FlowTemplate" + "AWS::WAFv2::RuleGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoTThingsGraph::FlowTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html)" + "Contains the Rules that identify the requests that you want to allow, block, or count. In a RuleGroup, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a RuleGroup, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the RuleGroup with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a RuleGroup, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-iotthingsgraph-flowtemplate.json" + "$ref": "resources/aws-wafv2-rulegroup.json" } }, "required": [ @@ -2439,9 +2438,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationSMB": { + "AWS_SageMaker_PartnerApp": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationSMB. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::PartnerApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-partnerapp.html)", "allOf": [ { "type": "object", @@ -2449,14 +2448,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationSMB" + "AWS::SageMaker::PartnerApp" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationSMB. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html)" + "Resource Type definition for AWS::SageMaker::PartnerApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-partnerapp.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationsmb.json" + "$ref": "resources/aws-sagemaker-partnerapp.json" } }, "required": [ @@ -2470,9 +2469,9 @@ ], "additionalProperties": false }, - "AWS_AppConfig_DeploymentStrategy": { + "AWS_Connect_QuickConnect": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppConfig::DeploymentStrategy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deploymentstrategy.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::QuickConnect \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-quickconnect.html)", "allOf": [ { "type": "object", @@ -2480,14 +2479,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppConfig::DeploymentStrategy" + "AWS::Connect::QuickConnect" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppConfig::DeploymentStrategy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deploymentstrategy.html)" + "Resource Type definition for AWS::Connect::QuickConnect \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-quickconnect.html)" ] }, "Properties": { - "$ref": "resources/aws-appconfig-deploymentstrategy.json" + "$ref": "resources/aws-connect-quickconnect.json" } }, "required": [ @@ -2501,9 +2500,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_DataProtectionSettings": { + "AWS_DataZone_ProjectMembership": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::DataProtectionSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-dataprotectionsettings.html)", + "markdownDescription": "Definition of AWS::DataZone::ProjectMembership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html)", "allOf": [ { "type": "object", @@ -2511,18 +2510,19 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::DataProtectionSettings" + "AWS::DataZone::ProjectMembership" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::DataProtectionSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-dataprotectionsettings.html)" + "Definition of AWS::DataZone::ProjectMembership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-dataprotectionsettings.json" + "$ref": "resources/aws-datazone-projectmembership.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -2531,9 +2531,9 @@ ], "additionalProperties": false }, - "AWS_Organizations_Policy": { + "AWS_PaymentCryptography_Alias": { "type": "object", - "markdownDescription": "Policies in AWS Organizations enable you to manage different features of the AWS accounts in your organization. You can use policies when all features are enabled in your organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-policy.html)", + "markdownDescription": "Definition of AWS::PaymentCryptography::Alias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-alias.html)", "allOf": [ { "type": "object", @@ -2541,14 +2541,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Organizations::Policy" + "AWS::PaymentCryptography::Alias" ], "markdownEnumDescriptions": [ - "Policies in AWS Organizations enable you to manage different features of the AWS accounts in your organization. You can use policies when all features are enabled in your organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-policy.html)" + "Definition of AWS::PaymentCryptography::Alias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-alias.html)" ] }, "Properties": { - "$ref": "resources/aws-organizations-policy.json" + "$ref": "resources/aws-paymentcryptography-alias.json" } }, "required": [ @@ -2562,9 +2562,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_PublishingDestination": { + "AWS_MediaConnect_BridgeOutput": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GuardDuty::PublishingDestination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-publishingdestination.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::BridgeOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgeoutput.html)", "allOf": [ { "type": "object", @@ -2572,14 +2572,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::PublishingDestination" + "AWS::MediaConnect::BridgeOutput" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GuardDuty::PublishingDestination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-publishingdestination.html)" + "Resource schema for AWS::MediaConnect::BridgeOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgeoutput.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-publishingdestination.json" + "$ref": "resources/aws-mediaconnect-bridgeoutput.json" } }, "required": [ @@ -2593,9 +2593,9 @@ ], "additionalProperties": false }, - "AWS_Notifications_ManagedNotificationAdditionalChannelAssociation": { + "AWS_SecurityHub_HubV2": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Notifications::ManagedNotificationAdditionalChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationadditionalchannelassociation.html)", + "markdownDescription": "The AWS::SecurityHub::HubV2 resource represents the implementation of the AWS Security Hub V2 service in your account. Only one hubv2 resource can created in each region in which you enable Security Hub V2. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hubv2.html)", "allOf": [ { "type": "object", @@ -2603,19 +2603,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Notifications::ManagedNotificationAdditionalChannelAssociation" + "AWS::SecurityHub::HubV2" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Notifications::ManagedNotificationAdditionalChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationadditionalchannelassociation.html)" + "The AWS::SecurityHub::HubV2 resource represents the implementation of the AWS Security Hub V2 service in your account. Only one hubv2 resource can created in each region in which you enable Security Hub V2. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hubv2.html)" ] }, "Properties": { - "$ref": "resources/aws-notifications-managednotificationadditionalchannelassociation.json" + "$ref": "resources/aws-securityhub-hubv2.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -2624,9 +2623,9 @@ ], "additionalProperties": false }, - "AWS_Logs_Integration": { + "AWS_RoboMaker_RobotApplication": { "type": "object", - "markdownDescription": "Resource Schema for Logs Integration Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-integration.html)", + "markdownDescription": "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html)", "allOf": [ { "type": "object", @@ -2634,14 +2633,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::Integration" + "AWS::RoboMaker::RobotApplication" ], "markdownEnumDescriptions": [ - "Resource Schema for Logs Integration Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-integration.html)" + "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-integration.json" + "$ref": "resources/aws-robomaker-robotapplication.json" } }, "required": [ @@ -2655,9 +2654,9 @@ ], "additionalProperties": false }, - "AWS_SNS_TopicInlinePolicy": { + "AWS_ResourceExplorer2_View": { "type": "object", - "markdownDescription": "Schema for AWS::SNS::TopicInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicinlinepolicy.html)", + "markdownDescription": "Definition of AWS::ResourceExplorer2::View Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-view.html)", "allOf": [ { "type": "object", @@ -2665,14 +2664,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SNS::TopicInlinePolicy" + "AWS::ResourceExplorer2::View" ], "markdownEnumDescriptions": [ - "Schema for AWS::SNS::TopicInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicinlinepolicy.html)" + "Definition of AWS::ResourceExplorer2::View Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-view.html)" ] }, "Properties": { - "$ref": "resources/aws-sns-topicinlinepolicy.json" + "$ref": "resources/aws-resourceexplorer2-view.json" } }, "required": [ @@ -2686,9 +2685,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_AIAgentVersion": { + "AWS_Timestream_ScheduledQuery": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::AIAgentVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagentversion.html)", + "markdownDescription": "The AWS::Timestream::ScheduledQuery resource creates a Timestream Scheduled Query. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-scheduledquery.html)", "allOf": [ { "type": "object", @@ -2696,14 +2695,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::AIAgentVersion" + "AWS::Timestream::ScheduledQuery" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::AIAgentVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagentversion.html)" + "The AWS::Timestream::ScheduledQuery resource creates a Timestream Scheduled Query. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-scheduledquery.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-aiagentversion.json" + "$ref": "resources/aws-timestream-scheduledquery.json" } }, "required": [ @@ -2717,9 +2716,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_BasePathMappingV2": { + "AWS_MediaConvert_JobTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ApiGateway::BasePathMappingV2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmappingv2.html)", + "markdownDescription": "Resource Type definition for AWS::MediaConvert::JobTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html)", "allOf": [ { "type": "object", @@ -2727,14 +2726,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::BasePathMappingV2" + "AWS::MediaConvert::JobTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ApiGateway::BasePathMappingV2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmappingv2.html)" + "Resource Type definition for AWS::MediaConvert::JobTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-basepathmappingv2.json" + "$ref": "resources/aws-mediaconvert-jobtemplate.json" } }, "required": [ @@ -2748,9 +2747,9 @@ ], "additionalProperties": false }, - "AWS_KafkaConnect_WorkerConfiguration": { + "AWS_AmplifyUIBuilder_Component": { "type": "object", - "markdownDescription": "The configuration of the workers, which are the processes that run the connector logic. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-workerconfiguration.html)", + "markdownDescription": "Definition of AWS::AmplifyUIBuilder::Component Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-component.html)", "allOf": [ { "type": "object", @@ -2758,19 +2757,18 @@ "Type": { "type": "string", "enum": [ - "AWS::KafkaConnect::WorkerConfiguration" + "AWS::AmplifyUIBuilder::Component" ], "markdownEnumDescriptions": [ - "The configuration of the workers, which are the processes that run the connector logic. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-workerconfiguration.html)" + "Definition of AWS::AmplifyUIBuilder::Component Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-component.html)" ] }, "Properties": { - "$ref": "resources/aws-kafkaconnect-workerconfiguration.json" + "$ref": "resources/aws-amplifyuibuilder-component.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -2779,9 +2777,9 @@ ], "additionalProperties": false }, - "AWS_ECS_Service": { + "AWS_Logs_LogAnomalyDetector": { "type": "object", - "markdownDescription": "The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.\n The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.\n Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html)", + "markdownDescription": "The AWS::Logs::LogAnomalyDetector resource specifies a CloudWatch Logs LogAnomalyDetector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loganomalydetector.html)", "allOf": [ { "type": "object", @@ -2789,14 +2787,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECS::Service" + "AWS::Logs::LogAnomalyDetector" ], "markdownEnumDescriptions": [ - "The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.\n The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.\n Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html)" + "The AWS::Logs::LogAnomalyDetector resource specifies a CloudWatch Logs LogAnomalyDetector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loganomalydetector.html)" ] }, "Properties": { - "$ref": "resources/aws-ecs-service.json" + "$ref": "resources/aws-logs-loganomalydetector.json" } }, "required": [ @@ -2809,9 +2807,9 @@ ], "additionalProperties": false }, - "AWS_CodeCommit_Repository": { + "AWS_ARCZonalShift_AutoshiftObserverNotificationStatus": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeCommit::Repository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html)", + "markdownDescription": "Definition of AWS::ARCZonalShift::AutoshiftObserverNotificationStatus Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-autoshiftobservernotificationstatus.html)", "allOf": [ { "type": "object", @@ -2819,14 +2817,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeCommit::Repository" + "AWS::ARCZonalShift::AutoshiftObserverNotificationStatus" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeCommit::Repository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html)" + "Definition of AWS::ARCZonalShift::AutoshiftObserverNotificationStatus Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-autoshiftobservernotificationstatus.html)" ] }, "Properties": { - "$ref": "resources/aws-codecommit-repository.json" + "$ref": "resources/aws-arczonalshift-autoshiftobservernotificationstatus.json" } }, "required": [ @@ -2840,9 +2838,9 @@ ], "additionalProperties": false }, - "AWS_AmazonMQ_Broker": { + "AWS_ApiGatewayV2_ApiGatewayManagedOverrides": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AmazonMQ::Broker \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html)", + "markdownDescription": "Resource Type definition for AWS::ApiGatewayV2::ApiGatewayManagedOverrides \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html)", "allOf": [ { "type": "object", @@ -2850,14 +2848,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AmazonMQ::Broker" + "AWS::ApiGatewayV2::ApiGatewayManagedOverrides" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AmazonMQ::Broker \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html)" + "Resource Type definition for AWS::ApiGatewayV2::ApiGatewayManagedOverrides \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html)" ] }, "Properties": { - "$ref": "resources/aws-amazonmq-broker.json" + "$ref": "resources/aws-apigatewayv2-apigatewaymanagedoverrides.json" } }, "required": [ @@ -2871,9 +2869,9 @@ ], "additionalProperties": false }, - "AWS_Route53_RecordSet": { + "AWS_SageMaker_Domain": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Route53::RecordSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordset.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html)", "allOf": [ { "type": "object", @@ -2881,14 +2879,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53::RecordSet" + "AWS::SageMaker::Domain" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Route53::RecordSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordset.html)" + "Resource Type definition for AWS::SageMaker::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-route53-recordset.json" + "$ref": "resources/aws-sagemaker-domain.json" } }, "required": [ @@ -2902,9 +2900,9 @@ ], "additionalProperties": false }, - "AWS_LakeFormation_Tag": { + "AWS_S3_AccessGrant": { "type": "object", - "markdownDescription": "A resource schema representing a Lake Formation Tag. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tag.html)", + "markdownDescription": "The AWS::S3::AccessGrant resource is an Amazon S3 resource type representing permissions to a specific S3 bucket or prefix hosted in an S3 Access Grants instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrant.html)", "allOf": [ { "type": "object", @@ -2912,14 +2910,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LakeFormation::Tag" + "AWS::S3::AccessGrant" ], "markdownEnumDescriptions": [ - "A resource schema representing a Lake Formation Tag. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tag.html)" + "The AWS::S3::AccessGrant resource is an Amazon S3 resource type representing permissions to a specific S3 bucket or prefix hosted in an S3 Access Grants instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrant.html)" ] }, "Properties": { - "$ref": "resources/aws-lakeformation-tag.json" + "$ref": "resources/aws-s3-accessgrant.json" } }, "required": [ @@ -2933,9 +2931,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Partition": { + "AWS_SystemsManagerSAP_Application": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Partition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html)", + "markdownDescription": "Resource schema for AWS::SystemsManagerSAP::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-systemsmanagersap-application.html)", "allOf": [ { "type": "object", @@ -2943,14 +2941,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Partition" + "AWS::SystemsManagerSAP::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Partition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html)" + "Resource schema for AWS::SystemsManagerSAP::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-systemsmanagersap-application.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-partition.json" + "$ref": "resources/aws-systemsmanagersap-application.json" } }, "required": [ @@ -2964,9 +2962,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SnapshotBlockPublicAccess": { + "AWS_VpcLattice_ResourceGateway": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-snapshotblockpublicaccess.html)", + "markdownDescription": "Creates a resource gateway for a service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcegateway.html)", "allOf": [ { "type": "object", @@ -2974,14 +2972,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SnapshotBlockPublicAccess" + "AWS::VpcLattice::ResourceGateway" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-snapshotblockpublicaccess.html)" + "Creates a resource gateway for a service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcegateway.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-snapshotblockpublicaccess.json" + "$ref": "resources/aws-vpclattice-resourcegateway.json" } }, "required": [ @@ -2995,9 +2993,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_WirelessDevice": { + "AWS_DynamoDB_GlobalTable": { "type": "object", - "markdownDescription": "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdevice.html)", + "markdownDescription": "Version: None. Resource Type definition for AWS::DynamoDB::GlobalTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html)", "allOf": [ { "type": "object", @@ -3005,14 +3003,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::WirelessDevice" + "AWS::DynamoDB::GlobalTable" ], "markdownEnumDescriptions": [ - "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdevice.html)" + "Version: None. Resource Type definition for AWS::DynamoDB::GlobalTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-wirelessdevice.json" + "$ref": "resources/aws-dynamodb-globaltable.json" } }, "required": [ @@ -3026,9 +3024,9 @@ ], "additionalProperties": false }, - "AWS_Backup_Framework": { + "AWS_S3Outposts_AccessPoint": { "type": "object", - "markdownDescription": "Contains detailed information about a framework. Frameworks contain controls, which evaluate and report on your backup events and resources. Frameworks generate daily compliance results. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-framework.html)", + "markdownDescription": "Resource Type Definition for AWS::S3Outposts::AccessPoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html)", "allOf": [ { "type": "object", @@ -3036,14 +3034,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::Framework" + "AWS::S3Outposts::AccessPoint" ], "markdownEnumDescriptions": [ - "Contains detailed information about a framework. Frameworks contain controls, which evaluate and report on your backup events and resources. Frameworks generate daily compliance results. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-framework.html)" + "Resource Type Definition for AWS::S3Outposts::AccessPoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-framework.json" + "$ref": "resources/aws-s3outposts-accesspoint.json" } }, "required": [ @@ -3057,9 +3055,9 @@ ], "additionalProperties": false }, - "AWS_EC2_PrefixList": { + "AWS_CloudFormation_StackSet": { "type": "object", - "markdownDescription": "Resource schema of AWS::EC2::PrefixList Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html)", + "markdownDescription": "StackSet as a resource provides one-click experience for provisioning a StackSet and StackInstances \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html)", "allOf": [ { "type": "object", @@ -3067,14 +3065,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::PrefixList" + "AWS::CloudFormation::StackSet" ], "markdownEnumDescriptions": [ - "Resource schema of AWS::EC2::PrefixList Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html)" + "StackSet as a resource provides one-click experience for provisioning a StackSet and StackInstances \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-prefixlist.json" + "$ref": "resources/aws-cloudformation-stackset.json" } }, "required": [ @@ -3088,9 +3086,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_SdiSource": { + "AWS_Config_AggregationAuthorization": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::SdiSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-sdisource.html)", + "markdownDescription": "Resource Type definition for AWS::Config::AggregationAuthorization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html)", "allOf": [ { "type": "object", @@ -3098,14 +3096,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::SdiSource" + "AWS::Config::AggregationAuthorization" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::SdiSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-sdisource.html)" + "Resource Type definition for AWS::Config::AggregationAuthorization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-aggregationauthorization.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-sdisource.json" + "$ref": "resources/aws-config-aggregationauthorization.json" } }, "required": [ @@ -3119,9 +3117,9 @@ ], "additionalProperties": false }, - "AWS_RoboMaker_Fleet": { + "AWS_CloudFormation_HookDefaultVersion": { "type": "object", - "markdownDescription": "AWS::RoboMaker::Fleet resource creates an AWS RoboMaker fleet. Fleets contain robots and can receive deployments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html)", + "markdownDescription": "Set a version as default version for a hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html)", "allOf": [ { "type": "object", @@ -3129,14 +3127,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RoboMaker::Fleet" + "AWS::CloudFormation::HookDefaultVersion" ], "markdownEnumDescriptions": [ - "AWS::RoboMaker::Fleet resource creates an AWS RoboMaker fleet. Fleets contain robots and can receive deployments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html)" + "Set a version as default version for a hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html)" ] }, "Properties": { - "$ref": "resources/aws-robomaker-fleet.json" + "$ref": "resources/aws-cloudformation-hookdefaultversion.json" } }, "required": [ @@ -3149,9 +3147,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_KnowledgeBase": { + "AWS_Glue_Connection": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Connection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html)", "allOf": [ { "type": "object", @@ -3159,14 +3157,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::KnowledgeBase" + "AWS::Glue::Connection" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html)" + "Resource Type definition for AWS::Glue::Connection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-knowledgebase.json" + "$ref": "resources/aws-glue-connection.json" } }, "required": [ @@ -3180,9 +3178,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_ApiMapping": { + "AWS_KMS_Alias": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::ApiMapping`` resource contains an API mapping. An API mapping relates a path of your custom domain name to a stage of your API. A custom domain name can have multiple API mappings, but the paths can't overlap. A custom domain can map only to APIs of the same protocol type. For more information, see [CreateApiMapping](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/domainnames-domainname-apimappings.html#CreateApiMapping) in the *Amazon API Gateway V2 API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html)", + "markdownDescription": "The ``AWS::KMS::Alias`` resource specifies a display name for a [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys). You can use an alias to identify a KMS key in the KMS console, in the [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) operation, and in [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations), such as [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) and [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html).\n Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see [ABAC for](https://docs.aws.amazon.com/kms/latest/developerguide/abac.html) in the *Developer Guide*.\n Using an alias to refer to a KMS key can help you simplify key management. For example, an alias in your code can be associated with different KMS keys in different AWS-Regions. For more information, see [Using aliases](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html) in the *Developer Guide*.\n When specifying an alias, observe the following rules.\n + Each alias is associated with one KMS key, but multiple aliases can be associated with the same KMS key.\n + The alias and its associated KMS key must be in the same AWS-account and Region.\n + The alias name must be unique in the AWS-account and Region. However, you can create aliases with the same name in different AWS-Regions. For example, you can have an ``alias/projectKey`` in multiple Regions, each of which is associated with a KMS key in its Region.\n + Each alias name must begin with ``alias/`` followed by a name, such as ``alias/exampleKey``. The alias name can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). Alias names cannot begin with ``alias/aws/``. That alias name prefix is reserved for [](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk).\n \n *Regions* \n KMS CloudFormation resources are available in all AWS-Regions in which KMS and CFN are supported. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html)", "allOf": [ { "type": "object", @@ -3190,14 +3188,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::ApiMapping" + "AWS::KMS::Alias" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::ApiMapping`` resource contains an API mapping. An API mapping relates a path of your custom domain name to a stage of your API. A custom domain name can have multiple API mappings, but the paths can't overlap. A custom domain can map only to APIs of the same protocol type. For more information, see [CreateApiMapping](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/domainnames-domainname-apimappings.html#CreateApiMapping) in the *Amazon API Gateway V2 API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html)" + "The ``AWS::KMS::Alias`` resource specifies a display name for a [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys). You can use an alias to identify a KMS key in the KMS console, in the [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) operation, and in [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations), such as [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) and [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html).\n Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see [ABAC for](https://docs.aws.amazon.com/kms/latest/developerguide/abac.html) in the *Developer Guide*.\n Using an alias to refer to a KMS key can help you simplify key management. For example, an alias in your code can be associated with different KMS keys in different AWS-Regions. For more information, see [Using aliases](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html) in the *Developer Guide*.\n When specifying an alias, observe the following rules.\n + Each alias is associated with one KMS key, but multiple aliases can be associated with the same KMS key.\n + The alias and its associated KMS key must be in the same AWS-account and Region.\n + The alias name must be unique in the AWS-account and Region. However, you can create aliases with the same name in different AWS-Regions. For example, you can have an ``alias/projectKey`` in multiple Regions, each of which is associated with a KMS key in its Region.\n + Each alias name must begin with ``alias/`` followed by a name, such as ``alias/exampleKey``. The alias name can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). Alias names cannot begin with ``alias/aws/``. That alias name prefix is reserved for [](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk).\n \n *Regions* \n KMS CloudFormation resources are available in all AWS-Regions in which KMS and CFN are supported. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-apimapping.json" + "$ref": "resources/aws-kms-alias.json" } }, "required": [ @@ -3211,9 +3209,9 @@ ], "additionalProperties": false }, - "AWS_CodeGuruProfiler_ProfilingGroup": { + "AWS_Connect_UserHierarchyGroup": { "type": "object", - "markdownDescription": "This resource schema represents the Profiling Group resource in the Amazon CodeGuru Profiler service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::UserHierarchyGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchygroup.html)", "allOf": [ { "type": "object", @@ -3221,14 +3219,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeGuruProfiler::ProfilingGroup" + "AWS::Connect::UserHierarchyGroup" ], "markdownEnumDescriptions": [ - "This resource schema represents the Profiling Group resource in the Amazon CodeGuru Profiler service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html)" + "Resource Type definition for AWS::Connect::UserHierarchyGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-codeguruprofiler-profilinggroup.json" + "$ref": "resources/aws-connect-userhierarchygroup.json" } }, "required": [ @@ -3242,9 +3240,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_CodeRepository": { + "AWS_KinesisVideo_SignalingChannel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::CodeRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html)", + "markdownDescription": "Resource Type Definition for AWS::KinesisVideo::SignalingChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html)", "allOf": [ { "type": "object", @@ -3252,19 +3250,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::CodeRepository" + "AWS::KinesisVideo::SignalingChannel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::CodeRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-coderepository.html)" + "Resource Type Definition for AWS::KinesisVideo::SignalingChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-coderepository.json" + "$ref": "resources/aws-kinesisvideo-signalingchannel.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -3273,9 +3270,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_Domain": { + "AWS_Transfer_User": { "type": "object", - "markdownDescription": "A domain is an organizing entity for connecting together assets, users, and their projects \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domain.html)", + "markdownDescription": "Definition of AWS::Transfer::User Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html)", "allOf": [ { "type": "object", @@ -3283,14 +3280,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::Domain" + "AWS::Transfer::User" ], "markdownEnumDescriptions": [ - "A domain is an organizing entity for connecting together assets, users, and their projects \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domain.html)" + "Definition of AWS::Transfer::User Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-domain.json" + "$ref": "resources/aws-transfer-user.json" } }, "required": [ @@ -3304,9 +3301,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Endpoint": { + "AWS_VpcLattice_TargetGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html)", + "markdownDescription": "A target group is a collection of targets, or compute resources, that run your application or service. A target group can only be used by a single service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html)", "allOf": [ { "type": "object", @@ -3314,14 +3311,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Endpoint" + "AWS::VpcLattice::TargetGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html)" + "A target group is a collection of targets, or compute resources, that run your application or service. A target group can only be used by a single service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-endpoint.json" + "$ref": "resources/aws-vpclattice-targetgroup.json" } }, "required": [ @@ -3335,9 +3332,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_GraphQLSchema": { + "AWS_MediaLive_Network": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::GraphQLSchema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html)", + "markdownDescription": "Resource schema for AWS::MediaLive::Network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-network.html)", "allOf": [ { "type": "object", @@ -3345,14 +3342,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::GraphQLSchema" + "AWS::MediaLive::Network" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::GraphQLSchema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html)" + "Resource schema for AWS::MediaLive::Network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-network.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-graphqlschema.json" + "$ref": "resources/aws-medialive-network.json" } }, "required": [ @@ -3366,9 +3363,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_ConfiguredTableAssociation": { + "AWS_Lambda_LayerVersionPermission": { "type": "object", - "markdownDescription": "Represents a table that can be queried within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtableassociation.html)", + "markdownDescription": "Schema for Lambda LayerVersionPermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html)", "allOf": [ { "type": "object", @@ -3376,14 +3373,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::ConfiguredTableAssociation" + "AWS::Lambda::LayerVersionPermission" ], "markdownEnumDescriptions": [ - "Represents a table that can be queried within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtableassociation.html)" + "Schema for Lambda LayerVersionPermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-configuredtableassociation.json" + "$ref": "resources/aws-lambda-layerversionpermission.json" } }, "required": [ @@ -3397,9 +3394,9 @@ ], "additionalProperties": false }, - "AWS_ECS_TaskSet": { + "AWS_CE_AnomalyMonitor": { "type": "object", - "markdownDescription": "Create a task set in the specified cluster and service. This is used when a service uses the EXTERNAL deployment controller type. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.htmlin the Amazon Elastic Container Service Developer Guide. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html)", + "markdownDescription": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. You can use Cost Anomaly Detection by creating monitor. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalymonitor.html)", "allOf": [ { "type": "object", @@ -3407,14 +3404,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECS::TaskSet" + "AWS::CE::AnomalyMonitor" ], "markdownEnumDescriptions": [ - "Create a task set in the specified cluster and service. This is used when a service uses the EXTERNAL deployment controller type. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.htmlin the Amazon Elastic Container Service Developer Guide. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html)" + "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. You can use Cost Anomaly Detection by creating monitor. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalymonitor.html)" ] }, "Properties": { - "$ref": "resources/aws-ecs-taskset.json" + "$ref": "resources/aws-ce-anomalymonitor.json" } }, "required": [ @@ -3428,9 +3425,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackage_PackagingConfiguration": { + "AWS_ApiGateway_Method": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaPackage::PackagingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html)", + "markdownDescription": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html)", "allOf": [ { "type": "object", @@ -3438,14 +3435,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackage::PackagingConfiguration" + "AWS::ApiGateway::Method" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaPackage::PackagingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html)" + "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackage-packagingconfiguration.json" + "$ref": "resources/aws-apigateway-method.json" } }, "required": [ @@ -3459,9 +3456,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_GroupProfile": { + "AWS_IoT_ProvisioningTemplate": { "type": "object", - "markdownDescription": "Group profiles represent groups of Amazon DataZone users. Groups can be manually created, or mapped to Active Directory groups of enterprise customers. In Amazon DataZone, groups serve two purposes. First, a group can map to a team of users in the organizational chart, and thus reduce the administrative work of a Amazon DataZone project owner when there are new employees joining or leaving a team. Second, corporate administrators use Active Directory groups to manage and update user statuses and so Amazon DataZone domain administrators can use these group memberships to implement Amazon DataZone domain policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html)", + "markdownDescription": "Creates a fleet provisioning template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html)", "allOf": [ { "type": "object", @@ -3469,14 +3466,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::GroupProfile" + "AWS::IoT::ProvisioningTemplate" ], "markdownEnumDescriptions": [ - "Group profiles represent groups of Amazon DataZone users. Groups can be manually created, or mapped to Active Directory groups of enterprise customers. In Amazon DataZone, groups serve two purposes. First, a group can map to a team of users in the organizational chart, and thus reduce the administrative work of a Amazon DataZone project owner when there are new employees joining or leaving a team. Second, corporate administrators use Active Directory groups to manage and update user statuses and so Amazon DataZone domain administrators can use these group memberships to implement Amazon DataZone domain policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html)" + "Creates a fleet provisioning template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-groupprofile.json" + "$ref": "resources/aws-iot-provisioningtemplate.json" } }, "required": [ @@ -3490,9 +3487,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_ContainerRecipe": { + "AWS_Bedrock_KnowledgeBase": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::ContainerRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html)", + "markdownDescription": "Definition of AWS::Bedrock::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html)", "allOf": [ { "type": "object", @@ -3500,18 +3497,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::ContainerRecipe" + "AWS::Bedrock::KnowledgeBase" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::ContainerRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html)" + "Definition of AWS::Bedrock::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-containerrecipe.json" + "$ref": "resources/aws-bedrock-knowledgebase.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -3520,9 +3518,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_AssistantAssociation": { + "AWS_CodeGuruReviewer_RepositoryAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::AssistantAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistantassociation.html)", + "markdownDescription": "This resource schema represents the RepositoryAssociation resource in the Amazon CodeGuru Reviewer service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html)", "allOf": [ { "type": "object", @@ -3530,14 +3528,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::AssistantAssociation" + "AWS::CodeGuruReviewer::RepositoryAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::AssistantAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistantassociation.html)" + "This resource schema represents the RepositoryAssociation resource in the Amazon CodeGuru Reviewer service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-assistantassociation.json" + "$ref": "resources/aws-codegurureviewer-repositoryassociation.json" } }, "required": [ @@ -3551,9 +3549,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_AIPrompt": { + "AWS_Evidently_Experiment": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::AIPrompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiprompt.html)", + "markdownDescription": "Resource Type definition for AWS::Evidently::Experiment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-experiment.html)", "allOf": [ { "type": "object", @@ -3561,14 +3559,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::AIPrompt" + "AWS::Evidently::Experiment" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::AIPrompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiprompt.html)" + "Resource Type definition for AWS::Evidently::Experiment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-experiment.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-aiprompt.json" + "$ref": "resources/aws-evidently-experiment.json" } }, "required": [ @@ -3582,9 +3580,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_DataSource": { + "AWS_RefactorSpaces_Application": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html)", + "markdownDescription": "Definition of AWS::RefactorSpaces::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-application.html)", "allOf": [ { "type": "object", @@ -3592,14 +3590,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::DataSource" + "AWS::RefactorSpaces::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html)" + "Definition of AWS::RefactorSpaces::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-application.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-datasource.json" + "$ref": "resources/aws-refactorspaces-application.json" } }, "required": [ @@ -3613,9 +3611,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_ApiCache": { + "AWS_WAF_Rule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::ApiCache \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)", + "markdownDescription": "Resource Type definition for AWS::WAF::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html)", "allOf": [ { "type": "object", @@ -3623,14 +3621,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::ApiCache" + "AWS::WAF::Rule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::ApiCache \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)" + "Resource Type definition for AWS::WAF::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-apicache.json" + "$ref": "resources/aws-waf-rule.json" } }, "required": [ @@ -3644,9 +3642,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_WebApp": { + "AWS_EC2_NetworkAclEntry": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Transfer::WebApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-webapp.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::NetworkAclEntry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html)", "allOf": [ { "type": "object", @@ -3654,14 +3652,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::WebApp" + "AWS::EC2::NetworkAclEntry" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Transfer::WebApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-webapp.html)" + "Resource Type definition for AWS::EC2::NetworkAclEntry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-webapp.json" + "$ref": "resources/aws-ec2-networkaclentry.json" } }, "required": [ @@ -3675,9 +3673,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_MatchmakingConfiguration": { + "AWS_CloudTrail_Channel": { "type": "object", - "markdownDescription": "The AWS::GameLift::MatchmakingConfiguration resource creates an Amazon GameLift (GameLift) matchmaking configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html)", + "markdownDescription": "A channel receives events from a specific source (such as an on-premises storage solution or application, or a partner event data source), and delivers the events to one or more event data stores. You use channels to ingest events into CloudTrail from sources outside AWS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-channel.html)", "allOf": [ { "type": "object", @@ -3685,19 +3683,18 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::MatchmakingConfiguration" + "AWS::CloudTrail::Channel" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::MatchmakingConfiguration resource creates an Amazon GameLift (GameLift) matchmaking configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html)" + "A channel receives events from a specific source (such as an on-premises storage solution or application, or a partner event data source), and delivers the events to one or more event data stores. You use channels to ingest events into CloudTrail from sources outside AWS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-channel.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-matchmakingconfiguration.json" + "$ref": "resources/aws-cloudtrail-channel.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -3706,9 +3703,9 @@ ], "additionalProperties": false }, - "AWS_Connect_View": { + "AWS_KinesisAnalyticsV2_ApplicationReferenceDataSource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::View \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-view.html)", + "markdownDescription": "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html)", "allOf": [ { "type": "object", @@ -3716,14 +3713,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::View" + "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::View \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-view.html)" + "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-view.json" + "$ref": "resources/aws-kinesisanalyticsv2-applicationreferencedatasource.json" } }, "required": [ @@ -3737,9 +3734,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_EndpointAuthorization": { + "AWS_QuickSight_Analysis": { "type": "object", - "markdownDescription": "Describes an endpoint authorization for authorizing Redshift-managed VPC endpoint access to a cluster across AWS accounts. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html)", + "markdownDescription": "Definition of the AWS::QuickSight::Analysis Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html)", "allOf": [ { "type": "object", @@ -3747,14 +3744,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::EndpointAuthorization" + "AWS::QuickSight::Analysis" ], "markdownEnumDescriptions": [ - "Describes an endpoint authorization for authorizing Redshift-managed VPC endpoint access to a cluster across AWS accounts. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html)" + "Definition of the AWS::QuickSight::Analysis Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-endpointauthorization.json" + "$ref": "resources/aws-quicksight-analysis.json" } }, "required": [ @@ -3768,9 +3765,9 @@ ], "additionalProperties": false }, - "AWS_IoT_CustomMetric": { + "AWS_MediaTailor_Channel": { "type": "object", - "markdownDescription": "A custom metric published by your devices to Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html)", + "markdownDescription": "Definition of AWS::MediaTailor::Channel Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channel.html)", "allOf": [ { "type": "object", @@ -3778,14 +3775,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::CustomMetric" + "AWS::MediaTailor::Channel" ], "markdownEnumDescriptions": [ - "A custom metric published by your devices to Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html)" + "Definition of AWS::MediaTailor::Channel Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channel.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-custommetric.json" + "$ref": "resources/aws-mediatailor-channel.json" } }, "required": [ @@ -3799,9 +3796,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_ModelBiasJobDefinition": { + "AWS_OpenSearchService_Application": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelBiasJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html)", + "markdownDescription": "Amazon OpenSearchService application resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-application.html)", "allOf": [ { "type": "object", @@ -3809,14 +3806,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::ModelBiasJobDefinition" + "AWS::OpenSearchService::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::ModelBiasJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html)" + "Amazon OpenSearchService application resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-application.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-modelbiasjobdefinition.json" + "$ref": "resources/aws-opensearchservice-application.json" } }, "required": [ @@ -3830,9 +3827,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_CustomResource": { + "AWS_OpsWorks_ElasticLoadBalancerAttachment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudFormation::CustomResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-customresource.html)", + "markdownDescription": "Resource Type definition for AWS::OpsWorks::ElasticLoadBalancerAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elasticloadbalancerattachment.html)", "allOf": [ { "type": "object", @@ -3840,14 +3837,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::CustomResource" + "AWS::OpsWorks::ElasticLoadBalancerAttachment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudFormation::CustomResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-customresource.html)" + "Resource Type definition for AWS::OpsWorks::ElasticLoadBalancerAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elasticloadbalancerattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-customresource.json" + "$ref": "resources/aws-opsworks-elasticloadbalancerattachment.json" } }, "required": [ @@ -3861,9 +3858,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_KeyGroup": { + "AWS_Config_ConfigurationAggregator": { "type": "object", - "markdownDescription": "A key group.\n A key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html)", + "markdownDescription": "Resource Type definition for AWS::Config::ConfigurationAggregator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html)", "allOf": [ { "type": "object", @@ -3871,19 +3868,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::KeyGroup" + "AWS::Config::ConfigurationAggregator" ], "markdownEnumDescriptions": [ - "A key group.\n A key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html)" + "Resource Type definition for AWS::Config::ConfigurationAggregator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-keygroup.json" + "$ref": "resources/aws-config-configurationaggregator.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -3892,9 +3888,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_DataSource": { + "AWS_ECS_Service": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html)", + "markdownDescription": "The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.\n The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.\n Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service. \n On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for ECS services. With this launch, ECS also aligned the CFN update behavior for ``CapacityProviderStrategy`` parameter with the standard practice. For more information, see [adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/). Previously ECS ignored the ``CapacityProviderStrategy`` property if it was set to an empty list for example, ``[]`` in CFN, because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list (``[]``) for the ``CapacityProviderStrategy`` property in your CFN template, ECS will remove any capacity providers associated with the service, as follows:\n + For services created with a capacity provider strategy after the launch:\n + If there's a cluster default strategy set, the service will revert to using that default strategy.\n + If no cluster default strategy exists, you will receive the following error:\n No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.\n \n + For services created with a capacity provider strategy prior to the launch:\n + If ``CapacityProviderStrategy`` had ``FARGATE_SPOT`` or ``FARGATE`` capacity providers, the launch type will be updated to ``FARGATE`` and the capacity provider will be removed.\n + If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.\n \n \n Recommended Actions\n If you are currently using ``CapacityProviderStrategy: []`` in your CFN templates, you should take one of the following actions:\n + If you do not intend to update the Capacity Provider Strategy:\n + Remove the ``CapacityProviderStrategy`` property entirely from your CFN template\n + Alternatively, use ``!Ref ::NoValue`` for the ``CapacityProviderStrategy`` property in your template\n \n + If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your CFN template.\n \n If your CFN template had an empty list ([]) for ``CapacityProviderStrategy`` prior to the aforementioned launch on June 12, and you are using the same template with ``CapacityProviderStrategy: []``, you might encounter the following error:\n Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)\" (RequestToken: xxx HandlerErrorCode: InvalidRequest) \n Note that CFN automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through CFN. This is an invalid input scenario that requires one of the remediation actions listed above.\n If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html)", "allOf": [ { "type": "object", @@ -3902,19 +3898,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::DataSource" + "AWS::ECS::Service" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html)" + "The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.\n The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.\n Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service. \n On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for ECS services. With this launch, ECS also aligned the CFN update behavior for ``CapacityProviderStrategy`` parameter with the standard practice. For more information, see [adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/). Previously ECS ignored the ``CapacityProviderStrategy`` property if it was set to an empty list for example, ``[]`` in CFN, because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list (``[]``) for the ``CapacityProviderStrategy`` property in your CFN template, ECS will remove any capacity providers associated with the service, as follows:\n + For services created with a capacity provider strategy after the launch:\n + If there's a cluster default strategy set, the service will revert to using that default strategy.\n + If no cluster default strategy exists, you will receive the following error:\n No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.\n \n + For services created with a capacity provider strategy prior to the launch:\n + If ``CapacityProviderStrategy`` had ``FARGATE_SPOT`` or ``FARGATE`` capacity providers, the launch type will be updated to ``FARGATE`` and the capacity provider will be removed.\n + If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.\n \n \n Recommended Actions\n If you are currently using ``CapacityProviderStrategy: []`` in your CFN templates, you should take one of the following actions:\n + If you do not intend to update the Capacity Provider Strategy:\n + Remove the ``CapacityProviderStrategy`` property entirely from your CFN template\n + Alternatively, use ``!Ref ::NoValue`` for the ``CapacityProviderStrategy`` property in your template\n \n + If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your CFN template.\n \n If your CFN template had an empty list ([]) for ``CapacityProviderStrategy`` prior to the aforementioned launch on June 12, and you are using the same template with ``CapacityProviderStrategy: []``, you might encounter the following error:\n Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)\" (RequestToken: xxx HandlerErrorCode: InvalidRequest) \n Note that CFN automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through CFN. This is an invalid input scenario that requires one of the remediation actions listed above.\n If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-datasource.json" + "$ref": "resources/aws-ecs-service.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -3923,9 +3918,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkInterfacePermission": { + "AWS_DataSync_LocationEFS": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::NetworkInterfacePermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationEFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html)", "allOf": [ { "type": "object", @@ -3933,14 +3928,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkInterfacePermission" + "AWS::DataSync::LocationEFS" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::NetworkInterfacePermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html)" + "Resource schema for AWS::DataSync::LocationEFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkinterfacepermission.json" + "$ref": "resources/aws-datasync-locationefs.json" } }, "required": [ @@ -3954,9 +3949,9 @@ ], "additionalProperties": false }, - "AWS_EC2_EC2Fleet": { + "AWS_Greengrass_SubscriptionDefinitionVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::EC2Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::SubscriptionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html)", "allOf": [ { "type": "object", @@ -3964,14 +3959,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::EC2Fleet" + "AWS::Greengrass::SubscriptionDefinitionVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::EC2Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html)" + "Resource Type definition for AWS::Greengrass::SubscriptionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ec2fleet.json" + "$ref": "resources/aws-greengrass-subscriptiondefinitionversion.json" } }, "required": [ @@ -3985,9 +3980,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerAddonInstance": { + "AWS_SSM_MaintenanceWindowTask": { "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerAddonInstance Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddoninstance.html)", + "markdownDescription": "Resource Type definition for AWS::SSM::MaintenanceWindowTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html)", "allOf": [ { "type": "object", @@ -3995,14 +3990,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::MailManagerAddonInstance" + "AWS::SSM::MaintenanceWindowTask" ], "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerAddonInstance Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddoninstance.html)" + "Resource Type definition for AWS::SSM::MaintenanceWindowTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-mailmanageraddoninstance.json" + "$ref": "resources/aws-ssm-maintenancewindowtask.json" } }, "required": [ @@ -4016,9 +4011,9 @@ ], "additionalProperties": false }, - "AWS_SecretsManager_Secret": { + "AWS_MediaPackage_PackagingGroup": { "type": "object", - "markdownDescription": "Creates a new secret. A *secret* can be a password, a set of credentials such as a user name and password, an OAuth token, or other secret information that you store in an encrypted form in Secrets Manager.\n For RDS master user credentials, see [AWS::RDS::DBCluster MasterUserSecret](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-masterusersecret.html).\n For RS admin user credentials, see [AWS::Redshift::Cluster](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html).\n To retrieve a secret in a CFNshort template, use a *dynamic reference*. For more information, see [Retrieve a secret in an resource](https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html).\n For information about creating a secret in the console, see [Create a secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html). For information about creating a secret using the CLI or SDK, see [CreateSecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html).\n For information about retrieving a secret in code, see [Retrieve secrets from Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html)", + "markdownDescription": "Resource schema for AWS::MediaPackage::PackagingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html)", "allOf": [ { "type": "object", @@ -4026,18 +4021,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SecretsManager::Secret" + "AWS::MediaPackage::PackagingGroup" ], "markdownEnumDescriptions": [ - "Creates a new secret. A *secret* can be a password, a set of credentials such as a user name and password, an OAuth token, or other secret information that you store in an encrypted form in Secrets Manager.\n For RDS master user credentials, see [AWS::RDS::DBCluster MasterUserSecret](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-masterusersecret.html).\n For RS admin user credentials, see [AWS::Redshift::Cluster](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html).\n To retrieve a secret in a CFNshort template, use a *dynamic reference*. For more information, see [Retrieve a secret in an resource](https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html).\n For information about creating a secret in the console, see [Create a secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html). For information about creating a secret using the CLI or SDK, see [CreateSecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html).\n For information about retrieving a secret in code, see [Retrieve secrets from Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html)" + "Resource schema for AWS::MediaPackage::PackagingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html)" ] }, "Properties": { - "$ref": "resources/aws-secretsmanager-secret.json" + "$ref": "resources/aws-mediapackage-packaginggroup.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4046,9 +4042,9 @@ ], "additionalProperties": false }, - "AWS_Grafana_Workspace": { + "AWS_Cloud9_EnvironmentEC2": { "type": "object", - "markdownDescription": "Definition of AWS::Grafana::Workspace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-grafana-workspace.html)", + "markdownDescription": "Resource Type definition for AWS::Cloud9::EnvironmentEC2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html)", "allOf": [ { "type": "object", @@ -4056,14 +4052,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Grafana::Workspace" + "AWS::Cloud9::EnvironmentEC2" ], "markdownEnumDescriptions": [ - "Definition of AWS::Grafana::Workspace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-grafana-workspace.html)" + "Resource Type definition for AWS::Cloud9::EnvironmentEC2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html)" ] }, "Properties": { - "$ref": "resources/aws-grafana-workspace.json" + "$ref": "resources/aws-cloud9-environmentec2.json" } }, "required": [ @@ -4077,9 +4073,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_DomainNameV2": { + "AWS_Glue_Partition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ApiGateway::DomainNameV2. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Partition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html)", "allOf": [ { "type": "object", @@ -4087,18 +4083,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::DomainNameV2" + "AWS::Glue::Partition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ApiGateway::DomainNameV2. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2.html)" + "Resource Type definition for AWS::Glue::Partition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-partition.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-domainnamev2.json" + "$ref": "resources/aws-glue-partition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4107,9 +4104,9 @@ ], "additionalProperties": false }, - "AWS_Events_EventBusPolicy": { + "AWS_IoT_Certificate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Events::EventBusPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html)", + "markdownDescription": "Use the AWS::IoT::Certificate resource to declare an AWS IoT X.509 certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html)", "allOf": [ { "type": "object", @@ -4117,14 +4114,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Events::EventBusPolicy" + "AWS::IoT::Certificate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Events::EventBusPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html)" + "Use the AWS::IoT::Certificate resource to declare an AWS IoT X.509 certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html)" ] }, "Properties": { - "$ref": "resources/aws-events-eventbuspolicy.json" + "$ref": "resources/aws-iot-certificate.json" } }, "required": [ @@ -4138,9 +4135,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_Model": { + "AWS_Athena_WorkGroup": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html)", + "markdownDescription": "Resource schema for AWS::Athena::WorkGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html)", "allOf": [ { "type": "object", @@ -4148,14 +4145,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::Model" + "AWS::Athena::WorkGroup" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html)" + "Resource schema for AWS::Athena::WorkGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-model.json" + "$ref": "resources/aws-athena-workgroup.json" } }, "required": [ @@ -4169,9 +4166,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_ApplicationEntitlementAssociation": { + "AWS_NetworkManager_Link": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::ApplicationEntitlementAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationentitlementassociation.html)", + "markdownDescription": "The AWS::NetworkManager::Link type describes a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html)", "allOf": [ { "type": "object", @@ -4179,14 +4176,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::ApplicationEntitlementAssociation" + "AWS::NetworkManager::Link" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::ApplicationEntitlementAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationentitlementassociation.html)" + "The AWS::NetworkManager::Link type describes a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-applicationentitlementassociation.json" + "$ref": "resources/aws-networkmanager-link.json" } }, "required": [ @@ -4200,9 +4197,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorks_UserProfile": { + "AWS_QBusiness_Index": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorks::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html)", + "markdownDescription": "Definition of AWS::QBusiness::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html)", "allOf": [ { "type": "object", @@ -4210,14 +4207,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorks::UserProfile" + "AWS::QBusiness::Index" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorks::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html)" + "Definition of AWS::QBusiness::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworks-userprofile.json" + "$ref": "resources/aws-qbusiness-index.json" } }, "required": [ @@ -4231,9 +4228,9 @@ ], "additionalProperties": false }, - "AWS_Scheduler_ScheduleGroup": { + "AWS_EC2_NetworkInterface": { "type": "object", - "markdownDescription": "Definition of AWS::Scheduler::ScheduleGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedulegroup.html)", + "markdownDescription": "The AWS::EC2::NetworkInterface resource creates network interface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterface.html)", "allOf": [ { "type": "object", @@ -4241,18 +4238,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Scheduler::ScheduleGroup" + "AWS::EC2::NetworkInterface" ], "markdownEnumDescriptions": [ - "Definition of AWS::Scheduler::ScheduleGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-scheduler-schedulegroup.html)" + "The AWS::EC2::NetworkInterface resource creates network interface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterface.html)" ] }, "Properties": { - "$ref": "resources/aws-scheduler-schedulegroup.json" + "$ref": "resources/aws-ec2-networkinterface.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4261,9 +4259,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_OriginAccessControl": { + "AWS_MediaTailor_PlaybackConfiguration": { "type": "object", - "markdownDescription": "Creates a new origin access control in CloudFront. After you create an origin access control, you can add it to an origin in a CloudFront distribution so that CloudFront sends authenticated (signed) requests to the origin.\n This makes it possible to block public access to the origin, allowing viewers (users) to access the origin's content only through CloudFront.\n For more information about using a CloudFront origin access control, see [Restricting access to an origin](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originaccesscontrol.html)", + "markdownDescription": "Resource schema for AWS::MediaTailor::PlaybackConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-playbackconfiguration.html)", "allOf": [ { "type": "object", @@ -4271,14 +4269,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::OriginAccessControl" + "AWS::MediaTailor::PlaybackConfiguration" ], "markdownEnumDescriptions": [ - "Creates a new origin access control in CloudFront. After you create an origin access control, you can add it to an origin in a CloudFront distribution so that CloudFront sends authenticated (signed) requests to the origin.\n This makes it possible to block public access to the origin, allowing viewers (users) to access the origin's content only through CloudFront.\n For more information about using a CloudFront origin access control, see [Restricting access to an origin](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originaccesscontrol.html)" + "Resource schema for AWS::MediaTailor::PlaybackConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-playbackconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-originaccesscontrol.json" + "$ref": "resources/aws-mediatailor-playbackconfiguration.json" } }, "required": [ @@ -4292,9 +4290,9 @@ ], "additionalProperties": false }, - "AWS_ServiceDiscovery_PrivateDnsNamespace": { + "AWS_DataSync_LocationS3": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::PrivateDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationS3 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html)", "allOf": [ { "type": "object", @@ -4302,14 +4300,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceDiscovery::PrivateDnsNamespace" + "AWS::DataSync::LocationS3" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceDiscovery::PrivateDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html)" + "Resource schema for AWS::DataSync::LocationS3 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html)" ] }, "Properties": { - "$ref": "resources/aws-servicediscovery-privatednsnamespace.json" + "$ref": "resources/aws-datasync-locations3.json" } }, "required": [ @@ -4323,9 +4321,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_StorageProfile": { + "AWS_OpsWorks_Layer": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::StorageProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-storageprofile.html)", + "markdownDescription": "Resource Type definition for AWS::OpsWorks::Layer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html)", "allOf": [ { "type": "object", @@ -4333,14 +4331,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::StorageProfile" + "AWS::OpsWorks::Layer" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::StorageProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-storageprofile.html)" + "Resource Type definition for AWS::OpsWorks::Layer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-storageprofile.json" + "$ref": "resources/aws-opsworks-layer.json" } }, "required": [ @@ -4354,9 +4352,9 @@ ], "additionalProperties": false }, - "AWS_DSQL_Cluster": { + "AWS_RoboMaker_Fleet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DSQL::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html)", + "markdownDescription": "AWS::RoboMaker::Fleet resource creates an AWS RoboMaker fleet. Fleets contain robots and can receive deployments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html)", "allOf": [ { "type": "object", @@ -4364,14 +4362,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DSQL::Cluster" + "AWS::RoboMaker::Fleet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DSQL::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html)" + "AWS::RoboMaker::Fleet resource creates an AWS RoboMaker fleet. Fleets contain robots and can receive deployments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-fleet.html)" ] }, "Properties": { - "$ref": "resources/aws-dsql-cluster.json" + "$ref": "resources/aws-robomaker-fleet.json" } }, "required": [ @@ -4384,9 +4382,9 @@ ], "additionalProperties": false }, - "AWS_CodeDeploy_Application": { + "AWS_EntityResolution_SchemaMapping": { "type": "object", - "markdownDescription": "The AWS::CodeDeploy::Application resource creates an AWS CodeDeploy application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html)", + "markdownDescription": "SchemaMapping defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-schemamapping.html)", "allOf": [ { "type": "object", @@ -4394,18 +4392,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeDeploy::Application" + "AWS::EntityResolution::SchemaMapping" ], "markdownEnumDescriptions": [ - "The AWS::CodeDeploy::Application resource creates an AWS CodeDeploy application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html)" + "SchemaMapping defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-schemamapping.html)" ] }, "Properties": { - "$ref": "resources/aws-codedeploy-application.json" + "$ref": "resources/aws-entityresolution-schemamapping.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4414,9 +4413,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpaces_Workspace": { + "AWS_EC2_ClientVpnTargetNetworkAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WorkSpaces::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnTargetNetworkAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html)", "allOf": [ { "type": "object", @@ -4424,14 +4423,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpaces::Workspace" + "AWS::EC2::ClientVpnTargetNetworkAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WorkSpaces::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html)" + "Resource Type definition for AWS::EC2::ClientVpnTargetNetworkAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-workspaces-workspace.json" + "$ref": "resources/aws-ec2-clientvpntargetnetworkassociation.json" } }, "required": [ @@ -4445,9 +4444,9 @@ ], "additionalProperties": false }, - "AWS_SSM_MaintenanceWindowTarget": { + "AWS_IoTWireless_PartnerAccount": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSM::MaintenanceWindowTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html)", + "markdownDescription": "Create and manage partner account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-partneraccount.html)", "allOf": [ { "type": "object", @@ -4455,19 +4454,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::MaintenanceWindowTarget" + "AWS::IoTWireless::PartnerAccount" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSM::MaintenanceWindowTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html)" + "Create and manage partner account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-partneraccount.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-maintenancewindowtarget.json" + "$ref": "resources/aws-iotwireless-partneraccount.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -4476,9 +4474,9 @@ ], "additionalProperties": false }, - "AWS_Batch_JobQueue": { + "AWS_ResilienceHub_ResiliencyPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Batch::JobQueue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html)", + "markdownDescription": "Resource Type Definition for Resiliency Policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-resiliencypolicy.html)", "allOf": [ { "type": "object", @@ -4486,14 +4484,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Batch::JobQueue" + "AWS::ResilienceHub::ResiliencyPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Batch::JobQueue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html)" + "Resource Type Definition for Resiliency Policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-resiliencypolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-batch-jobqueue.json" + "$ref": "resources/aws-resiliencehub-resiliencypolicy.json" } }, "required": [ @@ -4507,9 +4505,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalogAppRegistry_AttributeGroup": { + "AWS_IoT_Policy": { "type": "object", - "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::Policy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html)", "allOf": [ { "type": "object", @@ -4517,14 +4515,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalogAppRegistry::AttributeGroup" + "AWS::IoT::Policy" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroup.html)" + "Resource Type definition for AWS::IoT::Policy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalogappregistry-attributegroup.json" + "$ref": "resources/aws-iot-policy.json" } }, "required": [ @@ -4538,9 +4536,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_Build": { + "AWS_DocDB_DBSubnetGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GameLift::Build \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html)", + "markdownDescription": "Resource Type definition for AWS::DocDB::DBSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html)", "allOf": [ { "type": "object", @@ -4548,18 +4546,19 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::Build" + "AWS::DocDB::DBSubnetGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GameLift::Build \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html)" + "Resource Type definition for AWS::DocDB::DBSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-build.json" + "$ref": "resources/aws-docdb-dbsubnetgroup.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4568,9 +4567,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackage_Channel": { + "AWS_SageMaker_Cluster": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaPackage::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-cluster.html)", "allOf": [ { "type": "object", @@ -4578,19 +4577,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackage::Channel" + "AWS::SageMaker::Cluster" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaPackage::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html)" + "Resource Type definition for AWS::SageMaker::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackage-channel.json" + "$ref": "resources/aws-sagemaker-cluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -4599,9 +4597,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TrafficMirrorFilterRule": { + "AWS_AmazonMQ_Configuration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TrafficMirrorFilterRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html)", + "markdownDescription": "Resource Type definition for AWS::AmazonMQ::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html)", "allOf": [ { "type": "object", @@ -4609,14 +4607,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TrafficMirrorFilterRule" + "AWS::AmazonMQ::Configuration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TrafficMirrorFilterRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html)" + "Resource Type definition for AWS::AmazonMQ::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-trafficmirrorfilterrule.json" + "$ref": "resources/aws-amazonmq-configuration.json" } }, "required": [ @@ -4630,9 +4628,9 @@ ], "additionalProperties": false }, - "AWS_Logs_LogStream": { + "AWS_SNS_Subscription": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Logs::LogStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html)", + "markdownDescription": "Resource Type definition for AWS::SNS::Subscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html)", "allOf": [ { "type": "object", @@ -4640,14 +4638,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::LogStream" + "AWS::SNS::Subscription" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Logs::LogStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html)" + "Resource Type definition for AWS::SNS::Subscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-logstream.json" + "$ref": "resources/aws-sns-subscription.json" } }, "required": [ @@ -4661,9 +4659,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_WebACL": { + "AWS_WorkSpacesWeb_BrowserSettings": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::BrowserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-browsersettings.html)", "allOf": [ { "type": "object", @@ -4671,19 +4669,18 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::WebACL" + "AWS::WorkSpacesWeb::BrowserSettings" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html)" + "Definition of AWS::WorkSpacesWeb::BrowserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-browsersettings.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-webacl.json" + "$ref": "resources/aws-workspacesweb-browsersettings.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -4692,9 +4689,9 @@ ], "additionalProperties": false }, - "AWS_AmplifyUIBuilder_Form": { + "AWS_Greengrass_Group": { "type": "object", - "markdownDescription": "Definition of AWS::AmplifyUIBuilder::Form Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-form.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html)", "allOf": [ { "type": "object", @@ -4702,18 +4699,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AmplifyUIBuilder::Form" + "AWS::Greengrass::Group" ], "markdownEnumDescriptions": [ - "Definition of AWS::AmplifyUIBuilder::Form Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-form.html)" + "Resource Type definition for AWS::Greengrass::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html)" ] }, "Properties": { - "$ref": "resources/aws-amplifyuibuilder-form.json" + "$ref": "resources/aws-greengrass-group.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4722,9 +4720,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBSecurityGroupIngress": { + "AWS_Cognito_UserPoolRiskConfigurationAttachment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::RDS::DBSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroupingress.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolRiskConfigurationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html)", "allOf": [ { "type": "object", @@ -4732,14 +4730,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBSecurityGroupIngress" + "AWS::Cognito::UserPoolRiskConfigurationAttachment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::RDS::DBSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroupingress.html)" + "Resource Type definition for AWS::Cognito::UserPoolRiskConfigurationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbsecuritygroupingress.json" + "$ref": "resources/aws-cognito-userpoolriskconfigurationattachment.json" } }, "required": [ @@ -4753,9 +4751,9 @@ ], "additionalProperties": false }, - "AWS_AppFlow_Flow": { + "AWS_EMR_InstanceGroupConfig": { "type": "object", - "markdownDescription": "Resource schema for AWS::AppFlow::Flow. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html)", + "markdownDescription": "Resource Type definition for AWS::EMR::InstanceGroupConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html)", "allOf": [ { "type": "object", @@ -4763,14 +4761,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppFlow::Flow" + "AWS::EMR::InstanceGroupConfig" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::AppFlow::Flow. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html)" + "Resource Type definition for AWS::EMR::InstanceGroupConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-appflow-flow.json" + "$ref": "resources/aws-emr-instancegroupconfig.json" } }, "required": [ @@ -4784,9 +4782,9 @@ ], "additionalProperties": false }, - "AWS_IVS_EncoderConfiguration": { + "AWS_CloudFront_ContinuousDeploymentPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::EncoderConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-encoderconfiguration.html)", + "markdownDescription": "Creates a continuous deployment policy that routes a subset of production traffic from a primary distribution to a staging distribution.\n After you create and update a staging distribution, you can use a continuous deployment policy to incrementally move traffic to the staging distribution. This enables you to test changes to a distribution's configuration before moving all of your production traffic to the new configuration.\n For more information, see [Using CloudFront continuous deployment to safely test CDN configuration changes](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/continuous-deployment.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-continuousdeploymentpolicy.html)", "allOf": [ { "type": "object", @@ -4794,18 +4792,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::EncoderConfiguration" + "AWS::CloudFront::ContinuousDeploymentPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::EncoderConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-encoderconfiguration.html)" + "Creates a continuous deployment policy that routes a subset of production traffic from a primary distribution to a staging distribution.\n After you create and update a staging distribution, you can use a continuous deployment policy to incrementally move traffic to the staging distribution. This enables you to test changes to a distribution's configuration before moving all of your production traffic to the new configuration.\n For more information, see [Using CloudFront continuous deployment to safely test CDN configuration changes](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/continuous-deployment.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-continuousdeploymentpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-encoderconfiguration.json" + "$ref": "resources/aws-cloudfront-continuousdeploymentpolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4814,9 +4813,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_ChannelPlacementGroup": { + "AWS_ServiceCatalog_StackSetConstraint": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::ChannelPlacementGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channelplacementgroup.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::StackSetConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html)", "allOf": [ { "type": "object", @@ -4824,18 +4823,19 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::ChannelPlacementGroup" + "AWS::ServiceCatalog::StackSetConstraint" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::ChannelPlacementGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channelplacementgroup.html)" + "Resource Type definition for AWS::ServiceCatalog::StackSetConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-channelplacementgroup.json" + "$ref": "resources/aws-servicecatalog-stacksetconstraint.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -4844,9 +4844,9 @@ ], "additionalProperties": false }, - "AWS_EC2_InstanceConnectEndpoint": { + "AWS_WorkSpacesWeb_DataProtectionSettings": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::InstanceConnectEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::DataProtectionSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-dataprotectionsettings.html)", "allOf": [ { "type": "object", @@ -4854,19 +4854,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::InstanceConnectEndpoint" + "AWS::WorkSpacesWeb::DataProtectionSettings" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::InstanceConnectEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html)" + "Definition of AWS::WorkSpacesWeb::DataProtectionSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-dataprotectionsettings.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-instanceconnectendpoint.json" + "$ref": "resources/aws-workspacesweb-dataprotectionsettings.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -4875,9 +4874,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_Flow": { + "AWS_RoboMaker_RobotApplicationVersion": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::Flow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flow.html)", + "markdownDescription": "AWS::RoboMaker::RobotApplicationVersion resource creates an AWS RoboMaker RobotApplicationVersion. This helps you control which code your robot uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html)", "allOf": [ { "type": "object", @@ -4885,14 +4884,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::Flow" + "AWS::RoboMaker::RobotApplicationVersion" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::Flow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flow.html)" + "AWS::RoboMaker::RobotApplicationVersion resource creates an AWS RoboMaker RobotApplicationVersion. This helps you control which code your robot uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplicationversion.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-flow.json" + "$ref": "resources/aws-robomaker-robotapplicationversion.json" } }, "required": [ @@ -4906,9 +4905,9 @@ ], "additionalProperties": false }, - "AWS_XRay_Group": { + "AWS_CloudFront_Distribution": { "type": "object", - "markdownDescription": "This schema provides construct and validation rules for AWS-XRay Group resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-group.html)", + "markdownDescription": "A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html)", "allOf": [ { "type": "object", @@ -4916,14 +4915,14 @@ "Type": { "type": "string", "enum": [ - "AWS::XRay::Group" + "AWS::CloudFront::Distribution" ], "markdownEnumDescriptions": [ - "This schema provides construct and validation rules for AWS-XRay Group resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-group.html)" + "A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html)" ] }, "Properties": { - "$ref": "resources/aws-xray-group.json" + "$ref": "resources/aws-cloudfront-distribution.json" } }, "required": [ @@ -4937,9 +4936,9 @@ ], "additionalProperties": false }, - "AWS_Connect_UserHierarchyGroup": { + "AWS_SES_ContactList": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::UserHierarchyGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchygroup.html)", + "markdownDescription": "Resource schema for AWS::SES::ContactList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html)", "allOf": [ { "type": "object", @@ -4947,19 +4946,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::UserHierarchyGroup" + "AWS::SES::ContactList" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::UserHierarchyGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchygroup.html)" + "Resource schema for AWS::SES::ContactList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-userhierarchygroup.json" + "$ref": "resources/aws-ses-contactlist.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -4968,9 +4966,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_CloudFrontOriginAccessIdentity": { + "AWS_ElastiCache_UserGroup": { "type": "object", - "markdownDescription": "The request to create a new origin access identity (OAI). An origin access identity is a special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of your Amazon S3 content. For more information, see [Restricting Access to Amazon S3 Content by Using an Origin Access Identity](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::UserGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html)", "allOf": [ { "type": "object", @@ -4978,14 +4976,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::CloudFrontOriginAccessIdentity" + "AWS::ElastiCache::UserGroup" ], "markdownEnumDescriptions": [ - "The request to create a new origin access identity (OAI). An origin access identity is a special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of your Amazon S3 content. For more information, see [Restricting Access to Amazon S3 Content by Using an Origin Access Identity](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html)" + "Resource Type definition for AWS::ElastiCache::UserGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-cloudfrontoriginaccessidentity.json" + "$ref": "resources/aws-elasticache-usergroup.json" } }, "required": [ @@ -4999,9 +4997,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_Network": { + "AWS_Pinpoint_APNSVoipSandboxChannel": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaLive::Network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-network.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSVoipSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html)", "allOf": [ { "type": "object", @@ -5009,14 +5007,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::Network" + "AWS::Pinpoint::APNSVoipSandboxChannel" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaLive::Network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-network.html)" + "Resource Type definition for AWS::Pinpoint::APNSVoipSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-network.json" + "$ref": "resources/aws-pinpoint-apnsvoipsandboxchannel.json" } }, "required": [ @@ -5030,9 +5028,9 @@ ], "additionalProperties": false }, - "AWS_EC2_DHCPOptions": { + "AWS_DocDBElastic_Cluster": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::DHCPOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcpoptions.html)", + "markdownDescription": "The AWS::DocDBElastic::Cluster Amazon DocumentDB (with MongoDB compatibility) Elastic Scale resource describes a Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html)", "allOf": [ { "type": "object", @@ -5040,18 +5038,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::DHCPOptions" + "AWS::DocDBElastic::Cluster" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::DHCPOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcpoptions.html)" + "The AWS::DocDBElastic::Cluster Amazon DocumentDB (with MongoDB compatibility) Elastic Scale resource describes a Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-dhcpoptions.json" + "$ref": "resources/aws-docdbelastic-cluster.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5060,9 +5059,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_App": { + "AWS_Lambda_CodeSigningConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html)", + "markdownDescription": "Resource Type definition for AWS::Lambda::CodeSigningConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html)", "allOf": [ { "type": "object", @@ -5070,14 +5069,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::App" + "AWS::Lambda::CodeSigningConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html)" + "Resource Type definition for AWS::Lambda::CodeSigningConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-app.json" + "$ref": "resources/aws-lambda-codesigningconfig.json" } }, "required": [ @@ -5091,9 +5090,9 @@ ], "additionalProperties": false }, - "AWS_SDB_Domain": { + "AWS_Connect_ApprovedOrigin": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SDB::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sdb-domain.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::ApprovedOrigin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-approvedorigin.html)", "allOf": [ { "type": "object", @@ -5101,18 +5100,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SDB::Domain" + "AWS::Connect::ApprovedOrigin" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SDB::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sdb-domain.html)" + "Resource Type definition for AWS::Connect::ApprovedOrigin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-approvedorigin.html)" ] }, "Properties": { - "$ref": "resources/aws-sdb-domain.json" + "$ref": "resources/aws-connect-approvedorigin.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5121,9 +5121,9 @@ ], "additionalProperties": false }, - "AWS_Panorama_ApplicationInstance": { + "AWS_DMS_DataProvider": { "type": "object", - "markdownDescription": "Creates an application instance and deploys it to a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-applicationinstance.html)", + "markdownDescription": "Resource schema for AWS::DMS::DataProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-dataprovider.html)", "allOf": [ { "type": "object", @@ -5131,14 +5131,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Panorama::ApplicationInstance" + "AWS::DMS::DataProvider" ], "markdownEnumDescriptions": [ - "Creates an application instance and deploys it to a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-applicationinstance.html)" + "Resource schema for AWS::DMS::DataProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-dataprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-panorama-applicationinstance.json" + "$ref": "resources/aws-dms-dataprovider.json" } }, "required": [ @@ -5152,9 +5152,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_XssMatchSet": { + "AWS_Config_ConformancePack": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html)", + "markdownDescription": "A conformance pack is a collection of AWS Config rules and remediation actions that can be easily deployed as a single entity in an account and a region or across an entire AWS Organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html)", "allOf": [ { "type": "object", @@ -5162,14 +5162,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::XssMatchSet" + "AWS::Config::ConformancePack" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html)" + "A conformance pack is a collection of AWS Config rules and remediation actions that can be easily deployed as a single entity in an account and a region or across an entire AWS Organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-xssmatchset.json" + "$ref": "resources/aws-config-conformancepack.json" } }, "required": [ @@ -5183,9 +5183,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_ResourceDefinition": { + "AWS_Greengrass_ResourceDefinitionVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::ResourceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::ResourceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html)", "allOf": [ { "type": "object", @@ -5193,14 +5193,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::ResourceDefinition" + "AWS::Greengrass::ResourceDefinitionVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::ResourceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html)" + "Resource Type definition for AWS::Greengrass::ResourceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-resourcedefinition.json" + "$ref": "resources/aws-greengrass-resourcedefinitionversion.json" } }, "required": [ @@ -5214,9 +5214,9 @@ ], "additionalProperties": false }, - "AWS_CodeBuild_Fleet": { + "AWS_ApiGatewayV2_Api": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeBuild::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::Api`` resource creates an API. WebSocket APIs and HTTP APIs are supported. For more information about WebSocket APIs, see [About WebSocket APIs in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-overview.html) in the *API Gateway Developer Guide*. For more information about HTTP APIs, see [HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html) in the *API Gateway Developer Guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html)", "allOf": [ { "type": "object", @@ -5224,14 +5224,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeBuild::Fleet" + "AWS::ApiGatewayV2::Api" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeBuild::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html)" + "The ``AWS::ApiGatewayV2::Api`` resource creates an API. WebSocket APIs and HTTP APIs are supported. For more information about WebSocket APIs, see [About WebSocket APIs in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-overview.html) in the *API Gateway Developer Guide*. For more information about HTTP APIs, see [HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html) in the *API Gateway Developer Guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html)" ] }, "Properties": { - "$ref": "resources/aws-codebuild-fleet.json" + "$ref": "resources/aws-apigatewayv2-api.json" } }, "required": [ @@ -5244,9 +5244,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBShardGroup": { + "AWS_Bedrock_Prompt": { "type": "object", - "markdownDescription": "Creates a new DB shard group for Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.\n Valid for: Aurora DB clusters only \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbshardgroup.html)", + "markdownDescription": "Definition of AWS::Bedrock::Prompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-prompt.html)", "allOf": [ { "type": "object", @@ -5254,14 +5254,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBShardGroup" + "AWS::Bedrock::Prompt" ], "markdownEnumDescriptions": [ - "Creates a new DB shard group for Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.\n Valid for: Aurora DB clusters only \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbshardgroup.html)" + "Definition of AWS::Bedrock::Prompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-prompt.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbshardgroup.json" + "$ref": "resources/aws-bedrock-prompt.json" } }, "required": [ @@ -5275,9 +5275,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_IdentityPoolRoleAttachment": { + "AWS_Redshift_ClusterSubnetGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::IdentityPoolRoleAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html)", + "markdownDescription": "Resource Type definition for AWS::Redshift::ClusterSubnetGroup. Specifies an Amazon Redshift subnet group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html)", "allOf": [ { "type": "object", @@ -5285,14 +5285,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::IdentityPoolRoleAttachment" + "AWS::Redshift::ClusterSubnetGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::IdentityPoolRoleAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html)" + "Resource Type definition for AWS::Redshift::ClusterSubnetGroup. Specifies an Amazon Redshift subnet group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-identitypoolroleattachment.json" + "$ref": "resources/aws-redshift-clustersubnetgroup.json" } }, "required": [ @@ -5306,9 +5306,9 @@ ], "additionalProperties": false }, - "AWS_FIS_ExperimentTemplate": { + "AWS_Notifications_ManagedNotificationAdditionalChannelAssociation": { "type": "object", - "markdownDescription": "Resource schema for AWS::FIS::ExperimentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-experimenttemplate.html)", + "markdownDescription": "Resource Type definition for AWS::Notifications::ManagedNotificationAdditionalChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationadditionalchannelassociation.html)", "allOf": [ { "type": "object", @@ -5316,14 +5316,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FIS::ExperimentTemplate" + "AWS::Notifications::ManagedNotificationAdditionalChannelAssociation" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::FIS::ExperimentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-experimenttemplate.html)" + "Resource Type definition for AWS::Notifications::ManagedNotificationAdditionalChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationadditionalchannelassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-fis-experimenttemplate.json" + "$ref": "resources/aws-notifications-managednotificationadditionalchannelassociation.json" } }, "required": [ @@ -5337,9 +5337,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_DataQualityJobDefinition": { + "AWS_WAF_IPSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::DataQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html)", + "markdownDescription": "Resource Type definition for AWS::WAF::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html)", "allOf": [ { "type": "object", @@ -5347,14 +5347,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::DataQualityJobDefinition" + "AWS::WAF::IPSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::DataQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html)" + "Resource Type definition for AWS::WAF::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-dataqualityjobdefinition.json" + "$ref": "resources/aws-waf-ipset.json" } }, "required": [ @@ -5368,9 +5368,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_Agent": { + "AWS_ECS_PrimaryTaskSet": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::Agent. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html)", + "markdownDescription": "A pseudo-resource that manages which of your ECS task sets is primary. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html)", "allOf": [ { "type": "object", @@ -5378,18 +5378,19 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::Agent" + "AWS::ECS::PrimaryTaskSet" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::Agent. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html)" + "A pseudo-resource that manages which of your ECS task sets is primary. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-agent.json" + "$ref": "resources/aws-ecs-primarytaskset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5398,9 +5399,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_EventInvokeConfig": { + "AWS_LicenseManager_License": { "type": "object", - "markdownDescription": "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)", + "markdownDescription": "Resource Type definition for AWS::LicenseManager::License \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html)", "allOf": [ { "type": "object", @@ -5408,14 +5409,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::EventInvokeConfig" + "AWS::LicenseManager::License" ], "markdownEnumDescriptions": [ - "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)" + "Resource Type definition for AWS::LicenseManager::License \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-eventinvokeconfig.json" + "$ref": "resources/aws-licensemanager-license.json" } }, "required": [ @@ -5429,9 +5430,9 @@ ], "additionalProperties": false }, - "AWS_DMS_Certificate": { + "AWS_IAM_RolePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DMS::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html)", + "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM role.\n When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html). You can update a role's trust policy using [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html). For information about roles, see [roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) in the *IAM User Guide*.\n A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed with a role, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html)", "allOf": [ { "type": "object", @@ -5439,18 +5440,19 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::Certificate" + "AWS::IAM::RolePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DMS::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html)" + "Adds or updates an inline policy document that is embedded in the specified IAM role.\n When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html). You can update a role's trust policy using [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html). For information about roles, see [roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) in the *IAM User Guide*.\n A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed with a role, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-certificate.json" + "$ref": "resources/aws-iam-rolepolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5459,9 +5461,9 @@ ], "additionalProperties": false }, - "AWS_Neptune_DBInstance": { + "AWS_Cognito_UserPoolUserToGroupAttachment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Neptune::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolUserToGroupAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html)", "allOf": [ { "type": "object", @@ -5469,14 +5471,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Neptune::DBInstance" + "AWS::Cognito::UserPoolUserToGroupAttachment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Neptune::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html)" + "Resource Type definition for AWS::Cognito::UserPoolUserToGroupAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-neptune-dbinstance.json" + "$ref": "resources/aws-cognito-userpoolusertogroupattachment.json" } }, "required": [ @@ -5490,9 +5492,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_LogDeliveryConfiguration": { + "AWS_EC2_RouteServerPeer": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::LogDeliveryConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-logdeliveryconfiguration.html)", + "markdownDescription": "VPC Route Server Peer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html)", "allOf": [ { "type": "object", @@ -5500,14 +5502,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::LogDeliveryConfiguration" + "AWS::EC2::RouteServerPeer" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::LogDeliveryConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-logdeliveryconfiguration.html)" + "VPC Route Server Peer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-logdeliveryconfiguration.json" + "$ref": "resources/aws-ec2-routeserverpeer.json" } }, "required": [ @@ -5521,9 +5523,9 @@ ], "additionalProperties": false }, - "AWS_ECS_TaskDefinition": { + "AWS_IoTTwinMaker_Workspace": { "type": "object", - "markdownDescription": "Registers a new task definition from the supplied ``family`` and ``containerDefinitions``. Optionally, you can add data volumes to your containers with the ``volumes`` parameter. For more information about task definition parameters and defaults, see [Amazon ECS Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a role for your task with the ``taskRoleArn`` parameter. When you specify a role for a task, its containers can then use the latest versions of the CLI or SDKs to make API requests to the AWS services that are specified in the policy that's associated with the role. For more information, see [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a Docker networking mode for the containers in your task definition with the ``networkMode`` parameter. If you specify the ``awsvpc`` network mode, the task is allocated an elastic network interface, and you must specify a [NetworkConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html) when you create a service or run a task with the task definition. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*.\n In the following example or examples, the Authorization header contents (``AUTHPARAMS``) must be replaced with an AWS Signature Version 4 signature. For more information, see [Signature Version 4 Signing Process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) in the *General Reference*.\n You only need to learn how to sign HTTP requests if you intend to create them manually. When you use the [](https://docs.aws.amazon.com/cli/) or one of the [SDKs](https://docs.aws.amazon.com/tools/) to make requests to AWS, these tools automatically sign the requests for you, with the access key that you specify when you configure the tools. When you use these tools, you don't have to sign requests yourself. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html)", + "markdownDescription": "Resource schema for AWS::IoTTwinMaker::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-workspace.html)", "allOf": [ { "type": "object", @@ -5531,18 +5533,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ECS::TaskDefinition" + "AWS::IoTTwinMaker::Workspace" ], "markdownEnumDescriptions": [ - "Registers a new task definition from the supplied ``family`` and ``containerDefinitions``. Optionally, you can add data volumes to your containers with the ``volumes`` parameter. For more information about task definition parameters and defaults, see [Amazon ECS Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a role for your task with the ``taskRoleArn`` parameter. When you specify a role for a task, its containers can then use the latest versions of the CLI or SDKs to make API requests to the AWS services that are specified in the policy that's associated with the role. For more information, see [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a Docker networking mode for the containers in your task definition with the ``networkMode`` parameter. If you specify the ``awsvpc`` network mode, the task is allocated an elastic network interface, and you must specify a [NetworkConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html) when you create a service or run a task with the task definition. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*.\n In the following example or examples, the Authorization header contents (``AUTHPARAMS``) must be replaced with an AWS Signature Version 4 signature. For more information, see [Signature Version 4 Signing Process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) in the *General Reference*.\n You only need to learn how to sign HTTP requests if you intend to create them manually. When you use the [](https://docs.aws.amazon.com/cli/) or one of the [SDKs](https://docs.aws.amazon.com/tools/) to make requests to AWS, these tools automatically sign the requests for you, with the access key that you specify when you configure the tools. When you use these tools, you don't have to sign requests yourself. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html)" + "Resource schema for AWS::IoTTwinMaker::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-workspace.html)" ] }, "Properties": { - "$ref": "resources/aws-ecs-taskdefinition.json" + "$ref": "resources/aws-iottwinmaker-workspace.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5551,9 +5554,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackage_PackagingGroup": { + "AWS_MemoryDB_User": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaPackage::PackagingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html)", + "markdownDescription": "Resource Type definition for AWS::MemoryDB::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-user.html)", "allOf": [ { "type": "object", @@ -5561,14 +5564,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackage::PackagingGroup" + "AWS::MemoryDB::User" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaPackage::PackagingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packaginggroup.html)" + "Resource Type definition for AWS::MemoryDB::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-user.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackage-packaginggroup.json" + "$ref": "resources/aws-memorydb-user.json" } }, "required": [ @@ -5582,9 +5585,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryControl_SafetyRule": { + "AWS_ElastiCache_ServerlessCache": { "type": "object", - "markdownDescription": "Resource schema for AWS Route53 Recovery Control basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-safetyrule.html)", + "markdownDescription": "The AWS::ElastiCache::ServerlessCache resource creates an Amazon ElastiCache Serverless Cache. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-serverlesscache.html)", "allOf": [ { "type": "object", @@ -5592,18 +5595,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryControl::SafetyRule" + "AWS::ElastiCache::ServerlessCache" ], "markdownEnumDescriptions": [ - "Resource schema for AWS Route53 Recovery Control basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-safetyrule.html)" + "The AWS::ElastiCache::ServerlessCache resource creates an Amazon ElastiCache Serverless Cache. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-serverlesscache.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoverycontrol-safetyrule.json" + "$ref": "resources/aws-elasticache-serverlesscache.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5612,9 +5616,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBSubnetGroup": { + "AWS_EC2_VPCCidrBlock": { "type": "object", - "markdownDescription": "The ``AWS::RDS::DBSubnetGroup`` resource creates a database subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same region. \n For more information, see [Working with DB subnet groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html#USER_VPC.Subnets) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnetgroup.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCCidrBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html)", "allOf": [ { "type": "object", @@ -5622,14 +5626,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBSubnetGroup" + "AWS::EC2::VPCCidrBlock" ], "markdownEnumDescriptions": [ - "The ``AWS::RDS::DBSubnetGroup`` resource creates a database subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same region. \n For more information, see [Working with DB subnet groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html#USER_VPC.Subnets) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnetgroup.html)" + "Resource Type definition for AWS::EC2::VPCCidrBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbsubnetgroup.json" + "$ref": "resources/aws-ec2-vpccidrblock.json" } }, "required": [ @@ -5643,9 +5647,9 @@ ], "additionalProperties": false }, - "AWS_Connect_PhoneNumber": { + "AWS_Synthetics_Group": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::PhoneNumber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-phonenumber.html)", + "markdownDescription": "Resource Type definition for AWS::Synthetics::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-group.html)", "allOf": [ { "type": "object", @@ -5653,14 +5657,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::PhoneNumber" + "AWS::Synthetics::Group" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::PhoneNumber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-phonenumber.html)" + "Resource Type definition for AWS::Synthetics::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-group.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-phonenumber.json" + "$ref": "resources/aws-synthetics-group.json" } }, "required": [ @@ -5674,9 +5678,9 @@ ], "additionalProperties": false }, - "AWS_FMS_ResourceSet": { + "AWS_DataBrew_Recipe": { "type": "object", - "markdownDescription": "Creates an AWS Firewall Manager resource set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-resourceset.html)", + "markdownDescription": "Resource schema for AWS::DataBrew::Recipe. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html)", "allOf": [ { "type": "object", @@ -5684,14 +5688,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FMS::ResourceSet" + "AWS::DataBrew::Recipe" ], "markdownEnumDescriptions": [ - "Creates an AWS Firewall Manager resource set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-resourceset.html)" + "Resource schema for AWS::DataBrew::Recipe. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html)" ] }, "Properties": { - "$ref": "resources/aws-fms-resourceset.json" + "$ref": "resources/aws-databrew-recipe.json" } }, "required": [ @@ -5705,9 +5709,9 @@ ], "additionalProperties": false }, - "AWS_ServiceDiscovery_Service": { + "AWS_Glue_TableOptimizer": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::TableOptimizer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-tableoptimizer.html)", "allOf": [ { "type": "object", @@ -5715,18 +5719,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceDiscovery::Service" + "AWS::Glue::TableOptimizer" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceDiscovery::Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html)" + "Resource Type definition for AWS::Glue::TableOptimizer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-tableoptimizer.html)" ] }, "Properties": { - "$ref": "resources/aws-servicediscovery-service.json" + "$ref": "resources/aws-glue-tableoptimizer.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5735,9 +5740,9 @@ ], "additionalProperties": false }, - "AWS_IoT_ThingType": { + "AWS_Events_Endpoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::ThingType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html)", + "markdownDescription": "Resource Type definition for AWS::Events::Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-endpoint.html)", "allOf": [ { "type": "object", @@ -5745,18 +5750,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::ThingType" + "AWS::Events::Endpoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::ThingType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html)" + "Resource Type definition for AWS::Events::Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-endpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-thingtype.json" + "$ref": "resources/aws-events-endpoint.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -5765,9 +5771,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_LayerVersionPermission": { + "AWS_Proton_ServiceTemplate": { "type": "object", - "markdownDescription": "Schema for Lambda LayerVersionPermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html)", + "markdownDescription": "Definition of AWS::Proton::ServiceTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-servicetemplate.html)", "allOf": [ { "type": "object", @@ -5775,19 +5781,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::LayerVersionPermission" + "AWS::Proton::ServiceTemplate" ], "markdownEnumDescriptions": [ - "Schema for Lambda LayerVersionPermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html)" + "Definition of AWS::Proton::ServiceTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-servicetemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-layerversionpermission.json" + "$ref": "resources/aws-proton-servicetemplate.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -5796,9 +5801,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_Theme": { + "AWS_IoTWireless_ServiceProfile": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::Theme Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-serviceprofile.html)", "allOf": [ { "type": "object", @@ -5806,19 +5811,18 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::Theme" + "AWS::IoTWireless::ServiceProfile" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::Theme Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-serviceprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-theme.json" + "$ref": "resources/aws-iotwireless-serviceprofile.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -5827,9 +5831,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_APNSVoipSandboxChannel": { + "AWS_Connect_User": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSVoipSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-user.html)", "allOf": [ { "type": "object", @@ -5837,14 +5841,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::APNSVoipSandboxChannel" + "AWS::Connect::User" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::APNSVoipSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipsandboxchannel.html)" + "Resource Type definition for AWS::Connect::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-user.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-apnsvoipsandboxchannel.json" + "$ref": "resources/aws-connect-user.json" } }, "required": [ @@ -5858,9 +5862,9 @@ ], "additionalProperties": false }, - "AWS_M2_Deployment": { + "AWS_DocDB_DBCluster": { "type": "object", - "markdownDescription": "Represents a deployment resource of an AWS Mainframe Modernization (M2) application to a specified environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-deployment.html)", + "markdownDescription": "Resource Type definition for AWS::DocDB::DBCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html)", "allOf": [ { "type": "object", @@ -5868,19 +5872,18 @@ "Type": { "type": "string", "enum": [ - "AWS::M2::Deployment" + "AWS::DocDB::DBCluster" ], "markdownEnumDescriptions": [ - "Represents a deployment resource of an AWS Mainframe Modernization (M2) application to a specified environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-deployment.html)" + "Resource Type definition for AWS::DocDB::DBCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html)" ] }, "Properties": { - "$ref": "resources/aws-m2-deployment.json" + "$ref": "resources/aws-docdb-dbcluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -5889,9 +5892,9 @@ ], "additionalProperties": false }, - "AWS_SSM_Parameter": { + "AWS_EVS_Environment": { "type": "object", - "markdownDescription": "The ``AWS::SSM::Parameter`` resource creates an SSM parameter in SYSlong Parameter Store.\n To create an SSM parameter, you must have the IAMlong (IAM) permissions ``ssm:PutParameter`` and ``ssm:AddTagsToResource``. On stack creation, CFNlong adds the following three tags to the parameter: ``aws:cloudformation:stack-name``, ``aws:cloudformation:logical-id``, and ``aws:cloudformation:stack-id``, in addition to any custom tags you specify.\n To add, update, or remove tags during stack update, you must have IAM permissions for both ``ssm:AddTagsToResource`` and ``ssm:RemoveTagsFromResource``. For more information, see [Managing Access Using Policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-iam.html#security_iam_access-manage) in the *User Guide*.\n For information about valid values for parameters, see [About requirements and constraints for parameter names](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html#sysman-parameter-name-constraints) in the *User Guide* and [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html) in the *API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html)", + "markdownDescription": "An environment created within the EVS service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html)", "allOf": [ { "type": "object", @@ -5899,14 +5902,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::Parameter" + "AWS::EVS::Environment" ], "markdownEnumDescriptions": [ - "The ``AWS::SSM::Parameter`` resource creates an SSM parameter in SYSlong Parameter Store.\n To create an SSM parameter, you must have the IAMlong (IAM) permissions ``ssm:PutParameter`` and ``ssm:AddTagsToResource``. On stack creation, CFNlong adds the following three tags to the parameter: ``aws:cloudformation:stack-name``, ``aws:cloudformation:logical-id``, and ``aws:cloudformation:stack-id``, in addition to any custom tags you specify.\n To add, update, or remove tags during stack update, you must have IAM permissions for both ``ssm:AddTagsToResource`` and ``ssm:RemoveTagsFromResource``. For more information, see [Managing Access Using Policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-iam.html#security_iam_access-manage) in the *User Guide*.\n For information about valid values for parameters, see [About requirements and constraints for parameter names](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html#sysman-parameter-name-constraints) in the *User Guide* and [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html) in the *API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html)" + "An environment created within the EVS service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-parameter.json" + "$ref": "resources/aws-evs-environment.json" } }, "required": [ @@ -5920,9 +5923,9 @@ ], "additionalProperties": false }, - "AWS_EC2_ClientVpnRoute": { + "AWS_DevOpsGuru_ResourceCollection": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html)", + "markdownDescription": "This resource schema represents the ResourceCollection resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-resourcecollection.html)", "allOf": [ { "type": "object", @@ -5930,14 +5933,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::ClientVpnRoute" + "AWS::DevOpsGuru::ResourceCollection" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::ClientVpnRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html)" + "This resource schema represents the ResourceCollection resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-resourcecollection.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-clientvpnroute.json" + "$ref": "resources/aws-devopsguru-resourcecollection.json" } }, "required": [ @@ -5951,9 +5954,9 @@ ], "additionalProperties": false }, - "AWS_IAM_Role": { + "AWS_ApiGatewayV2_ApiMapping": { "type": "object", - "markdownDescription": "Creates a new role for your AWS-account.\n For more information about roles, see [IAM roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) in the *IAM User Guide*. For information about quotas for role names and the number of roles you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::ApiMapping`` resource contains an API mapping. An API mapping relates a path of your custom domain name to a stage of your API. A custom domain name can have multiple API mappings, but the paths can't overlap. A custom domain can map only to APIs of the same protocol type. For more information, see [CreateApiMapping](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/domainnames-domainname-apimappings.html#CreateApiMapping) in the *Amazon API Gateway V2 API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html)", "allOf": [ { "type": "object", @@ -5961,76 +5964,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::Role" + "AWS::ApiGatewayV2::ApiMapping" ], "markdownEnumDescriptions": [ - "Creates a new role for your AWS-account.\n For more information about roles, see [IAM roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) in the *IAM User Guide*. For information about quotas for role names and the number of roles you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)" - ] - }, - "Properties": { - "$ref": "resources/aws-iam-role.json" - } - }, - "required": [ - "Type", - "Properties" - ] - }, - { - "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" - } - ], - "additionalProperties": false - }, - "AWS_QBusiness_Application": { - "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html)", - "allOf": [ - { - "type": "object", - "properties": { - "Type": { - "type": "string", - "enum": [ - "AWS::QBusiness::Application" - ], - "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html)" - ] - }, - "Properties": { - "$ref": "resources/aws-qbusiness-application.json" - } - }, - "required": [ - "Type", - "Properties" - ] - }, - { - "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" - } - ], - "additionalProperties": false - }, - "AWS_EC2_RouteServerEndpoint": { - "type": "object", - "markdownDescription": "VPC Route Server Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html)", - "allOf": [ - { - "type": "object", - "properties": { - "Type": { - "type": "string", - "enum": [ - "AWS::EC2::RouteServerEndpoint" - ], - "markdownEnumDescriptions": [ - "VPC Route Server Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html)" + "The ``AWS::ApiGatewayV2::ApiMapping`` resource contains an API mapping. An API mapping relates a path of your custom domain name to a stage of your API. A custom domain name can have multiple API mappings, but the paths can't overlap. A custom domain can map only to APIs of the same protocol type. For more information, see [CreateApiMapping](https://docs.aws.amazon.com/apigatewayv2/latest/api-reference/domainnames-domainname-apimappings.html#CreateApiMapping) in the *Amazon API Gateway V2 API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apimapping.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-routeserverendpoint.json" + "$ref": "resources/aws-apigatewayv2-apimapping.json" } }, "required": [ @@ -6044,9 +5985,9 @@ ], "additionalProperties": false }, - "AWS_CodeStarNotifications_NotificationRule": { + "AWS_EC2_Volume": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeStarNotifications::NotificationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html)", + "markdownDescription": "Specifies an Amazon Elastic Block Store (Amazon EBS) volume.\n When you use CFNlong to update an Amazon EBS volume that modifies ``Iops``, ``Size``, or ``VolumeType``, there is a cooldown period before another operation can occur. This can cause your stack to report being in ``UPDATE_IN_PROGRESS`` or ``UPDATE_ROLLBACK_IN_PROGRESS`` for long periods of time.\n Amazon EBS does not support sizing down an Amazon EBS volume. CFNlong does not attempt to modify an Amazon EBS volume to a smaller size on rollback.\n Some common scenarios when you might encounter a cooldown period for Amazon EBS include:\n + You successfully update an Amazon EBS volume and the update succeeds. When you attempt another update within the cooldown window, that update will be subject to a cooldown period.\n + You successfully update an Amazon EBS volume and the update succeeds but another change in your ``update-stack`` call fails. The rollback will be subject to a cooldown period.\n \n For more information, see [Requirements for EBS volume modifications](https://docs.aws.amazon.com/ebs/latest/userguide/modify-volume-requirements.html).\n *DeletionPolicy attribute* \n To control how CFNlong handles the volume when the stack is deleted, set a deletion policy for your volume. You can choose to retain the volume, to delete the volume, or to create a snapshot of the volume. For more information, see [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n If you set a deletion policy that creates a snapshot, all tags on the volume are included in the snapshot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html)", "allOf": [ { "type": "object", @@ -6054,14 +5995,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeStarNotifications::NotificationRule" + "AWS::EC2::Volume" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeStarNotifications::NotificationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html)" + "Specifies an Amazon Elastic Block Store (Amazon EBS) volume.\n When you use CFNlong to update an Amazon EBS volume that modifies ``Iops``, ``Size``, or ``VolumeType``, there is a cooldown period before another operation can occur. This can cause your stack to report being in ``UPDATE_IN_PROGRESS`` or ``UPDATE_ROLLBACK_IN_PROGRESS`` for long periods of time.\n Amazon EBS does not support sizing down an Amazon EBS volume. CFNlong does not attempt to modify an Amazon EBS volume to a smaller size on rollback.\n Some common scenarios when you might encounter a cooldown period for Amazon EBS include:\n + You successfully update an Amazon EBS volume and the update succeeds. When you attempt another update within the cooldown window, that update will be subject to a cooldown period.\n + You successfully update an Amazon EBS volume and the update succeeds but another change in your ``update-stack`` call fails. The rollback will be subject to a cooldown period.\n \n For more information, see [Requirements for EBS volume modifications](https://docs.aws.amazon.com/ebs/latest/userguide/modify-volume-requirements.html).\n *DeletionPolicy attribute* \n To control how CFNlong handles the volume when the stack is deleted, set a deletion policy for your volume. You can choose to retain the volume, to delete the volume, or to create a snapshot of the volume. For more information, see [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n If you set a deletion policy that creates a snapshot, all tags on the volume are included in the snapshot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html)" ] }, "Properties": { - "$ref": "resources/aws-codestarnotifications-notificationrule.json" + "$ref": "resources/aws-ec2-volume.json" } }, "required": [ @@ -6075,9 +6016,9 @@ ], "additionalProperties": false }, - "AWS_EC2_FlowLog": { + "AWS_ServiceCatalog_LaunchRoleConstraint": { "type": "object", - "markdownDescription": "Specifies a VPC flow log, which enables you to capture IP traffic for a specific network interface, subnet, or VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::LaunchRoleConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html)", "allOf": [ { "type": "object", @@ -6085,14 +6026,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::FlowLog" + "AWS::ServiceCatalog::LaunchRoleConstraint" ], "markdownEnumDescriptions": [ - "Specifies a VPC flow log, which enables you to capture IP traffic for a specific network interface, subnet, or VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html)" + "Resource Type definition for AWS::ServiceCatalog::LaunchRoleConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-flowlog.json" + "$ref": "resources/aws-servicecatalog-launchroleconstraint.json" } }, "required": [ @@ -6106,9 +6047,9 @@ ], "additionalProperties": false }, - "AWS_VerifiedPermissions_PolicyStore": { + "AWS_SageMaker_DataQualityJobDefinition": { "type": "object", - "markdownDescription": "Represents a policy store that you can place schema, policies, and policy templates in to validate authorization requests \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policystore.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::DataQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html)", "allOf": [ { "type": "object", @@ -6116,14 +6057,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VerifiedPermissions::PolicyStore" + "AWS::SageMaker::DataQualityJobDefinition" ], "markdownEnumDescriptions": [ - "Represents a policy store that you can place schema, policies, and policy templates in to validate authorization requests \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policystore.html)" + "Resource Type definition for AWS::SageMaker::DataQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-dataqualityjobdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-verifiedpermissions-policystore.json" + "$ref": "resources/aws-sagemaker-dataqualityjobdefinition.json" } }, "required": [ @@ -6137,9 +6078,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_DomainName": { + "AWS_EFS_AccessPoint": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::DomainName`` resource specifies a custom domain name for your API in Amazon API Gateway (API Gateway). \n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html)", + "markdownDescription": "The ``AWS::EFS::AccessPoint`` resource creates an EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point. The operating system user and group override any identity information provided by the NFS client. The file system path is exposed as the access point's root directory. Applications using the access point can only access data in its own directory and below. To learn more, see [Mounting a file system using EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html).\n This operation requires permissions for the ``elasticfilesystem:CreateAccessPoint`` action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html)", "allOf": [ { "type": "object", @@ -6147,14 +6088,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::DomainName" + "AWS::EFS::AccessPoint" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::DomainName`` resource specifies a custom domain name for your API in Amazon API Gateway (API Gateway). \n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html)" + "The ``AWS::EFS::AccessPoint`` resource creates an EFS access point. An access point is an application-specific view into an EFS file system that applies an operating system user and group, and a file system path, to any file system request made through the access point. The operating system user and group override any identity information provided by the NFS client. The file system path is exposed as the access point's root directory. Applications using the access point can only access data in its own directory and below. To learn more, see [Mounting a file system using EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html).\n This operation requires permissions for the ``elasticfilesystem:CreateAccessPoint`` action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-domainname.json" + "$ref": "resources/aws-efs-accesspoint.json" } }, "required": [ @@ -6168,9 +6109,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_SmsTemplate": { + "AWS_AppMesh_VirtualNode": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::SmsTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smstemplate.html)", + "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualNode \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html)", "allOf": [ { "type": "object", @@ -6178,14 +6119,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::SmsTemplate" + "AWS::AppMesh::VirtualNode" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::SmsTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smstemplate.html)" + "Resource Type definition for AWS::AppMesh::VirtualNode \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualnode.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-smstemplate.json" + "$ref": "resources/aws-appmesh-virtualnode.json" } }, "required": [ @@ -6199,9 +6140,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_EventSubscription": { + "AWS_CloudFormation_ModuleVersion": { "type": "object", - "markdownDescription": "The `AWS::Redshift::EventSubscription` resource creates an Amazon Redshift Event Subscription. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html)", + "markdownDescription": "A module that has been registered in the CloudFormation registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html)", "allOf": [ { "type": "object", @@ -6209,14 +6150,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::EventSubscription" + "AWS::CloudFormation::ModuleVersion" ], "markdownEnumDescriptions": [ - "The `AWS::Redshift::EventSubscription` resource creates an Amazon Redshift Event Subscription. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html)" + "A module that has been registered in the CloudFormation registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-eventsubscription.json" + "$ref": "resources/aws-cloudformation-moduleversion.json" } }, "required": [ @@ -6230,9 +6171,9 @@ ], "additionalProperties": false }, - "AWS_PCAConnectorAD_Connector": { + "AWS_BillingConductor_PricingRule": { "type": "object", - "markdownDescription": "Represents a Connector that connects AWS PrivateCA and your directory \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-connector.html)", + "markdownDescription": "A markup/discount that is defined for a specific set of services that can later be associated with a pricing plan. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html)", "allOf": [ { "type": "object", @@ -6240,14 +6181,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCAConnectorAD::Connector" + "AWS::BillingConductor::PricingRule" ], "markdownEnumDescriptions": [ - "Represents a Connector that connects AWS PrivateCA and your directory \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-connector.html)" + "A markup/discount that is defined for a specific set of services that can later be associated with a pricing plan. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html)" ] }, "Properties": { - "$ref": "resources/aws-pcaconnectorad-connector.json" + "$ref": "resources/aws-billingconductor-pricingrule.json" } }, "required": [ @@ -6261,9 +6202,9 @@ ], "additionalProperties": false }, - "AWS_RedshiftServerless_Namespace": { + "AWS_Comprehend_DocumentClassifier": { "type": "object", - "markdownDescription": "Definition of AWS::RedshiftServerless::Namespace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-namespace.html)", + "markdownDescription": "Document Classifier enables training document classifier models. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-documentclassifier.html)", "allOf": [ { "type": "object", @@ -6271,14 +6212,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RedshiftServerless::Namespace" + "AWS::Comprehend::DocumentClassifier" ], "markdownEnumDescriptions": [ - "Definition of AWS::RedshiftServerless::Namespace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-namespace.html)" + "Document Classifier enables training document classifier models. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-documentclassifier.html)" ] }, "Properties": { - "$ref": "resources/aws-redshiftserverless-namespace.json" + "$ref": "resources/aws-comprehend-documentclassifier.json" } }, "required": [ @@ -6292,9 +6233,9 @@ ], "additionalProperties": false }, - "AWS_EC2_RouteServerPropagation": { + "AWS_CloudFormation_GuardHook": { "type": "object", - "markdownDescription": "VPC Route Server Propagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html)", + "markdownDescription": "This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html)", "allOf": [ { "type": "object", @@ -6302,14 +6243,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::RouteServerPropagation" + "AWS::CloudFormation::GuardHook" ], "markdownEnumDescriptions": [ - "VPC Route Server Propagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html)" + "This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-routeserverpropagation.json" + "$ref": "resources/aws-cloudformation-guardhook.json" } }, "required": [ @@ -6323,9 +6264,9 @@ ], "additionalProperties": false }, - "AWS_ECR_RepositoryCreationTemplate": { + "AWS_IoTAnalytics_Datastore": { "type": "object", - "markdownDescription": "The details of the repository creation template associated with the request. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html)", + "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html)", "allOf": [ { "type": "object", @@ -6333,19 +6274,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ECR::RepositoryCreationTemplate" + "AWS::IoTAnalytics::Datastore" ], "markdownEnumDescriptions": [ - "The details of the repository creation template associated with the request. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html)" + "Resource Type definition for AWS::IoTAnalytics::Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html)" ] }, "Properties": { - "$ref": "resources/aws-ecr-repositorycreationtemplate.json" + "$ref": "resources/aws-iotanalytics-datastore.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -6354,9 +6294,9 @@ ], "additionalProperties": false }, - "AWS_Glue_SchemaVersionMetadata": { + "AWS_Wisdom_AIAgent": { "type": "object", - "markdownDescription": "This resource adds Key-Value metadata to a Schema version of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html)", + "markdownDescription": "Definition of AWS::Wisdom::AIAgent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagent.html)", "allOf": [ { "type": "object", @@ -6364,14 +6304,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::SchemaVersionMetadata" + "AWS::Wisdom::AIAgent" ], "markdownEnumDescriptions": [ - "This resource adds Key-Value metadata to a Schema version of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html)" + "Definition of AWS::Wisdom::AIAgent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagent.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-schemaversionmetadata.json" + "$ref": "resources/aws-wisdom-aiagent.json" } }, "required": [ @@ -6385,9 +6325,9 @@ ], "additionalProperties": false }, - "AWS_Config_DeliveryChannel": { + "AWS_ACMPCA_CertificateAuthority": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Config::DeliveryChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html)", + "markdownDescription": "Private certificate authority. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html)", "allOf": [ { "type": "object", @@ -6395,14 +6335,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::DeliveryChannel" + "AWS::ACMPCA::CertificateAuthority" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Config::DeliveryChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html)" + "Private certificate authority. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html)" ] }, "Properties": { - "$ref": "resources/aws-config-deliverychannel.json" + "$ref": "resources/aws-acmpca-certificateauthority.json" } }, "required": [ @@ -6416,9 +6356,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_Member": { + "AWS_MediaLive_Multiplex": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GuardDuty::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html)", + "markdownDescription": "Resource schema for AWS::MediaLive::Multiplex \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplex.html)", "allOf": [ { "type": "object", @@ -6426,14 +6366,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::Member" + "AWS::MediaLive::Multiplex" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GuardDuty::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html)" + "Resource schema for AWS::MediaLive::Multiplex \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplex.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-member.json" + "$ref": "resources/aws-medialive-multiplex.json" } }, "required": [ @@ -6447,9 +6387,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_AutomationRule": { + "AWS_Lex_BotVersion": { "type": "object", - "markdownDescription": "The ``AWS::SecurityHub::AutomationRule`` resource specifies an automation rule based on input parameters. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-automationrule.html)", + "markdownDescription": "A version is a numbered snapshot of your work that you can publish for use in different parts of your workflow, such as development, beta deployment, and production. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botversion.html)", "allOf": [ { "type": "object", @@ -6457,14 +6397,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::AutomationRule" + "AWS::Lex::BotVersion" ], "markdownEnumDescriptions": [ - "The ``AWS::SecurityHub::AutomationRule`` resource specifies an automation rule based on input parameters. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-automationrule.html)" + "A version is a numbered snapshot of your work that you can publish for use in different parts of your workflow, such as development, beta deployment, and production. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botversion.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-automationrule.json" + "$ref": "resources/aws-lex-botversion.json" } }, "required": [ @@ -6478,39 +6418,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_FirewallRuleGroup": { - "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::FirewallRuleGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroup.html)", - "allOf": [ - { - "type": "object", - "properties": { - "Type": { - "type": "string", - "enum": [ - "AWS::Route53Resolver::FirewallRuleGroup" - ], - "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::FirewallRuleGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroup.html)" - ] - }, - "Properties": { - "$ref": "resources/aws-route53resolver-firewallrulegroup.json" - } - }, - "required": [ - "Type" - ] - }, - { - "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" - } - ], - "additionalProperties": false - }, - "AWS_QuickSight_Template": { + "AWS_Bedrock_GuardrailVersion": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::Template Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html)", + "markdownDescription": "Definition of AWS::Bedrock::GuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrailversion.html)", "allOf": [ { "type": "object", @@ -6518,14 +6428,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::Template" + "AWS::Bedrock::GuardrailVersion" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::Template Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html)" + "Definition of AWS::Bedrock::GuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrailversion.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-template.json" + "$ref": "resources/aws-bedrock-guardrailversion.json" } }, "required": [ @@ -6539,9 +6449,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalogAppRegistry_AttributeGroupAssociation": { + "AWS_DataSync_LocationSMB": { "type": "object", - "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroupassociation.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationSMB. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html)", "allOf": [ { "type": "object", @@ -6549,14 +6459,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation" + "AWS::DataSync::LocationSMB" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroupassociation.html)" + "Resource schema for AWS::DataSync::LocationSMB. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalogappregistry-attributegroupassociation.json" + "$ref": "resources/aws-datasync-locationsmb.json" } }, "required": [ @@ -6570,9 +6480,9 @@ ], "additionalProperties": false }, - "AWS_Notifications_NotificationHub": { + "AWS_ApiGateway_UsagePlanKey": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Notifications::NotificationHub \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationhub.html)", + "markdownDescription": "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)", "allOf": [ { "type": "object", @@ -6580,14 +6490,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Notifications::NotificationHub" + "AWS::ApiGateway::UsagePlanKey" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Notifications::NotificationHub \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationhub.html)" + "The ``AWS::ApiGateway::UsagePlanKey`` resource associates an API key with a usage plan. This association determines which users the usage plan is applied to. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplankey.html)" ] }, "Properties": { - "$ref": "resources/aws-notifications-notificationhub.json" + "$ref": "resources/aws-apigateway-usageplankey.json" } }, "required": [ @@ -6601,9 +6511,9 @@ ], "additionalProperties": false }, - "AWS_S3_BucketPolicy": { + "AWS_Pinpoint_APNSSandboxChannel": { "type": "object", - "markdownDescription": "Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using an identity other than the root user of the AWS-account that owns the bucket, the calling identity must have the ``PutBucketPolicy`` permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.\n If you don't have ``PutBucketPolicy`` permissions, Amazon S3 returns a ``403 Access Denied`` error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a ``405 Method Not Allowed`` error.\n As a security precaution, the root user of the AWS-account that owns a bucket can always use this operation, even if the policy explicitly denies the root user the ability to perform this action. \n When using the ``AWS::S3::BucketPolicy`` resource, you can create, update, and delete bucket policies for S3 buckets located in regions different from the stack's region. This cross-region bucket policy modification functionality is supported for backward compatibility with existing workflows.\n If the [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html) is not specified or set to ``Delete``, the bucket policy will be removed when the stack is deleted. If set to ``Retain``, the bucket policy will be preserved even after the stack is deleted.\n For example, a CloudFormation stack in ``us-east-1`` can use the ``AWS::S3::BucketPolicy`` resource to manage the bucket policy for an S3 bucket in ``us-west-2``. The retention or removal of the bucket policy during the stack deletion is determined by the ``DeletionPolicy`` attribute specified in the stack template.\n For more information, see [Bucket policy examples](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html).\n The following operations are related to ``PutBucketPolicy``:\n + [CreateBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html) \n + [DeleteBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucketpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html)", "allOf": [ { "type": "object", @@ -6611,14 +6521,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::BucketPolicy" + "AWS::Pinpoint::APNSSandboxChannel" ], "markdownEnumDescriptions": [ - "Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using an identity other than the root user of the AWS-account that owns the bucket, the calling identity must have the ``PutBucketPolicy`` permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.\n If you don't have ``PutBucketPolicy`` permissions, Amazon S3 returns a ``403 Access Denied`` error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a ``405 Method Not Allowed`` error.\n As a security precaution, the root user of the AWS-account that owns a bucket can always use this operation, even if the policy explicitly denies the root user the ability to perform this action. \n When using the ``AWS::S3::BucketPolicy`` resource, you can create, update, and delete bucket policies for S3 buckets located in regions different from the stack's region. This cross-region bucket policy modification functionality is supported for backward compatibility with existing workflows.\n If the [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html) is not specified or set to ``Delete``, the bucket policy will be removed when the stack is deleted. If set to ``Retain``, the bucket policy will be preserved even after the stack is deleted.\n For example, a CloudFormation stack in ``us-east-1`` can use the ``AWS::S3::BucketPolicy`` resource to manage the bucket policy for an S3 bucket in ``us-west-2``. The retention or removal of the bucket policy during the stack deletion is determined by the ``DeletionPolicy`` attribute specified in the stack template.\n For more information, see [Bucket policy examples](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html).\n The following operations are related to ``PutBucketPolicy``:\n + [CreateBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html) \n + [DeleteBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucketpolicy.html)" + "Resource Type definition for AWS::Pinpoint::APNSSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-bucketpolicy.json" + "$ref": "resources/aws-pinpoint-apnssandboxchannel.json" } }, "required": [ @@ -6632,9 +6542,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackage_Asset": { + "AWS_LakeFormation_Resource": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaPackage::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html)", + "markdownDescription": "Resource Type definition for AWS::LakeFormation::Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html)", "allOf": [ { "type": "object", @@ -6642,14 +6552,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackage::Asset" + "AWS::LakeFormation::Resource" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaPackage::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html)" + "Resource Type definition for AWS::LakeFormation::Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackage-asset.json" + "$ref": "resources/aws-lakeformation-resource.json" } }, "required": [ @@ -6663,9 +6573,9 @@ ], "additionalProperties": false }, - "AWS_EMR_Cluster": { + "AWS_IoT_Thing": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EMR::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::Thing \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html)", "allOf": [ { "type": "object", @@ -6673,19 +6583,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::Cluster" + "AWS::IoT::Thing" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EMR::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html)" + "Resource Type definition for AWS::IoT::Thing \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-cluster.json" + "$ref": "resources/aws-iot-thing.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -6694,9 +6603,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_Script": { + "AWS_Kinesis_StreamConsumer": { "type": "object", - "markdownDescription": "The AWS::GameLift::Script resource creates a new script record for your Realtime Servers script. Realtime scripts are JavaScript that provide configuration settings and optional custom game logic for your game. The script is deployed when you create a Realtime Servers fleet to host your game sessions. Script logic is executed during an active game session. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html)", + "markdownDescription": "Resource Type definition for AWS::Kinesis::StreamConsumer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html)", "allOf": [ { "type": "object", @@ -6704,14 +6613,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::Script" + "AWS::Kinesis::StreamConsumer" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::Script resource creates a new script record for your Realtime Servers script. Realtime scripts are JavaScript that provide configuration settings and optional custom game logic for your game. The script is deployed when you create a Realtime Servers fleet to host your game sessions. Script logic is executed during an active game session. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html)" + "Resource Type definition for AWS::Kinesis::StreamConsumer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-script.json" + "$ref": "resources/aws-kinesis-streamconsumer.json" } }, "required": [ @@ -6725,9 +6634,9 @@ ], "additionalProperties": false }, - "AWS_Connect_HoursOfOperation": { + "AWS_Kinesis_ResourcePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::HoursOfOperation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-hoursofoperation.html)", + "markdownDescription": "Resource Type definition for AWS::Kinesis::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -6735,14 +6644,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::HoursOfOperation" + "AWS::Kinesis::ResourcePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::HoursOfOperation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-hoursofoperation.html)" + "Resource Type definition for AWS::Kinesis::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-hoursofoperation.json" + "$ref": "resources/aws-kinesis-resourcepolicy.json" } }, "required": [ @@ -6756,9 +6665,9 @@ ], "additionalProperties": false }, - "AWS_Shield_ProtectionGroup": { + "AWS_IoT_SoftwarePackage": { "type": "object", - "markdownDescription": "A grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protectiongroup.html)", + "markdownDescription": "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html)", "allOf": [ { "type": "object", @@ -6766,19 +6675,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Shield::ProtectionGroup" + "AWS::IoT::SoftwarePackage" ], "markdownEnumDescriptions": [ - "A grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protectiongroup.html)" + "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html)" ] }, "Properties": { - "$ref": "resources/aws-shield-protectiongroup.json" + "$ref": "resources/aws-iot-softwarepackage.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -6787,9 +6695,9 @@ ], "additionalProperties": false }, - "AWS_LookoutEquipment_InferenceScheduler": { + "AWS_Logs_LogStream": { "type": "object", - "markdownDescription": "Resource schema for LookoutEquipment InferenceScheduler. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutequipment-inferencescheduler.html)", + "markdownDescription": "Resource Type definition for AWS::Logs::LogStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html)", "allOf": [ { "type": "object", @@ -6797,14 +6705,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LookoutEquipment::InferenceScheduler" + "AWS::Logs::LogStream" ], "markdownEnumDescriptions": [ - "Resource schema for LookoutEquipment InferenceScheduler. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutequipment-inferencescheduler.html)" + "Resource Type definition for AWS::Logs::LogStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html)" ] }, "Properties": { - "$ref": "resources/aws-lookoutequipment-inferencescheduler.json" + "$ref": "resources/aws-logs-logstream.json" } }, "required": [ @@ -6818,9 +6726,9 @@ ], "additionalProperties": false }, - "AWS_Connect_RoutingProfile": { + "AWS_CleanRooms_Collaboration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::RoutingProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-routingprofile.html)", + "markdownDescription": "Represents a collaboration between AWS accounts that allows for secure data collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-collaboration.html)", "allOf": [ { "type": "object", @@ -6828,14 +6736,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::RoutingProfile" + "AWS::CleanRooms::Collaboration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::RoutingProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-routingprofile.html)" + "Represents a collaboration between AWS accounts that allows for secure data collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-collaboration.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-routingprofile.json" + "$ref": "resources/aws-cleanrooms-collaboration.json" } }, "required": [ @@ -6849,9 +6757,9 @@ ], "additionalProperties": false }, - "AWS_EKS_Nodegroup": { + "AWS_IoTSiteWise_Dashboard": { "type": "object", - "markdownDescription": "Resource schema for AWS::EKS::Nodegroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html)", "allOf": [ { "type": "object", @@ -6859,14 +6767,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EKS::Nodegroup" + "AWS::IoTSiteWise::Dashboard" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EKS::Nodegroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html)" + "Resource schema for AWS::IoTSiteWise::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html)" ] }, "Properties": { - "$ref": "resources/aws-eks-nodegroup.json" + "$ref": "resources/aws-iotsitewise-dashboard.json" } }, "required": [ @@ -6880,9 +6788,9 @@ ], "additionalProperties": false }, - "AWS_RDS_CustomDBEngineVersion": { + "AWS_DataSync_LocationFSxLustre": { "type": "object", - "markdownDescription": "Creates a custom DB engine version (CEV). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxLustre. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html)", "allOf": [ { "type": "object", @@ -6890,14 +6798,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::CustomDBEngineVersion" + "AWS::DataSync::LocationFSxLustre" ], "markdownEnumDescriptions": [ - "Creates a custom DB engine version (CEV). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html)" + "Resource schema for AWS::DataSync::LocationFSxLustre. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-customdbengineversion.json" + "$ref": "resources/aws-datasync-locationfsxlustre.json" } }, "required": [ @@ -6911,9 +6819,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayRoute": { + "AWS_EFS_FileSystem": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html)", + "markdownDescription": "The ``AWS::EFS::FileSystem`` resource creates a new, empty file system in EFSlong (EFS). You must create a mount target ([AWS::EFS::MountTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)) to mount your EFS file system on an EC2 or other AWS cloud compute resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html)", "allOf": [ { "type": "object", @@ -6921,19 +6829,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayRoute" + "AWS::EFS::FileSystem" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TransitGatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html)" + "The ``AWS::EFS::FileSystem`` resource creates a new, empty file system in EFSlong (EFS). You must create a mount target ([AWS::EFS::MountTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)) to mount your EFS file system on an EC2 or other AWS cloud compute resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewayroute.json" + "$ref": "resources/aws-efs-filesystem.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -6942,9 +6849,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_Certificate": { + "AWS_QuickSight_RefreshSchedule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Transfer::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-certificate.html)", + "markdownDescription": "Definition of the AWS::QuickSight::RefreshSchedule Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-refreshschedule.html)", "allOf": [ { "type": "object", @@ -6952,19 +6859,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::Certificate" + "AWS::QuickSight::RefreshSchedule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Transfer::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-certificate.html)" + "Definition of the AWS::QuickSight::RefreshSchedule Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-refreshschedule.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-certificate.json" + "$ref": "resources/aws-quicksight-refreshschedule.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -6973,9 +6879,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_UserSettings": { + "AWS_Connect_IntegrationAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::UserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::IntegrationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-integrationassociation.html)", "allOf": [ { "type": "object", @@ -6983,14 +6889,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::UserSettings" + "AWS::Connect::IntegrationAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::UserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html)" + "Resource Type definition for AWS::Connect::IntegrationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-integrationassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-usersettings.json" + "$ref": "resources/aws-connect-integrationassociation.json" } }, "required": [ @@ -7004,9 +6910,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCEndpointServicePermissions": { + "AWS_EC2_EnclaveCertificateIamRoleAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCEndpointServicePermissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html)", + "markdownDescription": "Associates an AWS Identity and Access Management (IAM) role with an AWS Certificate Manager (ACM) certificate. This association is based on Amazon Resource Names and it enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-enclavecertificateiamroleassociation.html)", "allOf": [ { "type": "object", @@ -7014,14 +6920,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCEndpointServicePermissions" + "AWS::EC2::EnclaveCertificateIamRoleAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCEndpointServicePermissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html)" + "Associates an AWS Identity and Access Management (IAM) role with an AWS Certificate Manager (ACM) certificate. This association is based on Amazon Resource Names and it enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-enclavecertificateiamroleassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcendpointservicepermissions.json" + "$ref": "resources/aws-ec2-enclavecertificateiamroleassociation.json" } }, "required": [ @@ -7035,9 +6941,9 @@ ], "additionalProperties": false }, - "AWS_IoTTwinMaker_SyncJob": { + "AWS_MediaLive_EventBridgeRuleTemplate": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTTwinMaker::SyncJob \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-syncjob.html)", + "markdownDescription": "Definition of AWS::MediaLive::EventBridgeRuleTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplate.html)", "allOf": [ { "type": "object", @@ -7045,14 +6951,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTTwinMaker::SyncJob" + "AWS::MediaLive::EventBridgeRuleTemplate" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTTwinMaker::SyncJob \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-syncjob.html)" + "Definition of AWS::MediaLive::EventBridgeRuleTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-iottwinmaker-syncjob.json" + "$ref": "resources/aws-medialive-eventbridgeruletemplate.json" } }, "required": [ @@ -7066,9 +6972,9 @@ ], "additionalProperties": false }, - "AWS_IoTTwinMaker_Workspace": { + "AWS_IAM_Role": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTTwinMaker::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-workspace.html)", + "markdownDescription": "Creates a new role for your AWS-account.\n For more information about roles, see [IAM roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) in the *IAM User Guide*. For information about quotas for role names and the number of roles you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)", "allOf": [ { "type": "object", @@ -7076,14 +6982,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTTwinMaker::Workspace" + "AWS::IAM::Role" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTTwinMaker::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-workspace.html)" + "Creates a new role for your AWS-account.\n For more information about roles, see [IAM roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) in the *IAM User Guide*. For information about quotas for role names and the number of roles you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)" ] }, "Properties": { - "$ref": "resources/aws-iottwinmaker-workspace.json" + "$ref": "resources/aws-iam-role.json" } }, "required": [ @@ -7097,9 +7003,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_FunctionDefinition": { + "AWS_KinesisVideo_Stream": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::FunctionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html)", + "markdownDescription": "Resource Type Definition for AWS::KinesisVideo::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html)", "allOf": [ { "type": "object", @@ -7107,19 +7013,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::FunctionDefinition" + "AWS::KinesisVideo::Stream" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::FunctionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html)" + "Resource Type Definition for AWS::KinesisVideo::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-stream.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-functiondefinition.json" + "$ref": "resources/aws-kinesisvideo-stream.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -7128,9 +7033,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_LaunchTemplateConstraint": { + "AWS_Connect_RoutingProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::LaunchTemplateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::RoutingProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-routingprofile.html)", "allOf": [ { "type": "object", @@ -7138,14 +7043,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::LaunchTemplateConstraint" + "AWS::Connect::RoutingProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::LaunchTemplateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html)" + "Resource Type definition for AWS::Connect::RoutingProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-routingprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-launchtemplateconstraint.json" + "$ref": "resources/aws-connect-routingprofile.json" } }, "required": [ @@ -7159,9 +7064,9 @@ ], "additionalProperties": false }, - "AWS_DMS_MigrationProject": { + "AWS_VpcLattice_Service": { "type": "object", - "markdownDescription": "Resource schema for AWS::DMS::MigrationProject \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-migrationproject.html)", + "markdownDescription": "A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html)", "allOf": [ { "type": "object", @@ -7169,14 +7074,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::MigrationProject" + "AWS::VpcLattice::Service" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DMS::MigrationProject \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-migrationproject.html)" + "A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-migrationproject.json" + "$ref": "resources/aws-vpclattice-service.json" } }, "required": [ @@ -7219,9 +7124,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPNGatewayRoutePropagation": { + "AWS_ApiGateway_Stage": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPNGatewayRoutePropagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngatewayroutepropagation.html)", + "markdownDescription": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html)", "allOf": [ { "type": "object", @@ -7229,14 +7134,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPNGatewayRoutePropagation" + "AWS::ApiGateway::Stage" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPNGatewayRoutePropagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngatewayroutepropagation.html)" + "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpngatewayroutepropagation.json" + "$ref": "resources/aws-apigateway-stage.json" } }, "required": [ @@ -7250,9 +7155,9 @@ ], "additionalProperties": false }, - "AWS_RefactorSpaces_Route": { + "AWS_BillingConductor_BillingGroup": { "type": "object", - "markdownDescription": "Definition of AWS::RefactorSpaces::Route Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-route.html)", + "markdownDescription": "A billing group is a set of linked account which belong to the same end customer. It can be seen as a virtual consolidated billing family. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html)", "allOf": [ { "type": "object", @@ -7260,14 +7165,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RefactorSpaces::Route" + "AWS::BillingConductor::BillingGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::RefactorSpaces::Route Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-route.html)" + "A billing group is a set of linked account which belong to the same end customer. It can be seen as a virtual consolidated billing family. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html)" ] }, "Properties": { - "$ref": "resources/aws-refactorspaces-route.json" + "$ref": "resources/aws-billingconductor-billinggroup.json" } }, "required": [ @@ -7281,9 +7186,9 @@ ], "additionalProperties": false }, - "AWS_PaymentCryptography_Key": { + "AWS_ImageBuilder_Workflow": { "type": "object", - "markdownDescription": "Definition of AWS::PaymentCryptography::Key Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-key.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-workflow.html)", "allOf": [ { "type": "object", @@ -7291,14 +7196,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PaymentCryptography::Key" + "AWS::ImageBuilder::Workflow" ], "markdownEnumDescriptions": [ - "Definition of AWS::PaymentCryptography::Key Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-key.html)" + "Resource schema for AWS::ImageBuilder::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-workflow.html)" ] }, "Properties": { - "$ref": "resources/aws-paymentcryptography-key.json" + "$ref": "resources/aws-imagebuilder-workflow.json" } }, "required": [ @@ -7312,9 +7217,9 @@ ], "additionalProperties": false }, - "AWS_Events_Endpoint": { + "AWS_Pinpoint_EmailTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Events::Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-endpoint.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::EmailTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailtemplate.html)", "allOf": [ { "type": "object", @@ -7322,14 +7227,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Events::Endpoint" + "AWS::Pinpoint::EmailTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Events::Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-endpoint.html)" + "Resource Type definition for AWS::Pinpoint::EmailTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-events-endpoint.json" + "$ref": "resources/aws-pinpoint-emailtemplate.json" } }, "required": [ @@ -7343,9 +7248,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_MessageTemplateVersion": { + "AWS_EC2_TransitGatewayAttachment": { "type": "object", - "markdownDescription": "A version for the specified customer-managed message template within the specified knowledge base. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplateversion.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html)", "allOf": [ { "type": "object", @@ -7353,14 +7258,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::MessageTemplateVersion" + "AWS::EC2::TransitGatewayAttachment" ], "markdownEnumDescriptions": [ - "A version for the specified customer-managed message template within the specified knowledge base. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplateversion.html)" + "Resource Type definition for AWS::EC2::TransitGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-messagetemplateversion.json" + "$ref": "resources/aws-ec2-transitgatewayattachment.json" } }, "required": [ @@ -7374,9 +7279,9 @@ ], "additionalProperties": false }, - "AWS_IoT_ResourceSpecificLogging": { + "AWS_CloudFront_Function": { "type": "object", - "markdownDescription": "Resource-specific logging allows you to specify a logging level for a specific thing group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-resourcespecificlogging.html)", + "markdownDescription": "Creates a CF function.\n To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function, and the function\u2019s stage.\n By default, when you create a function, it\u2019s in the ``DEVELOPMENT`` stage. In this stage, you can [test the function](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/test-function.html) in the CF console (or with ``TestFunction`` in the CF API).\n When you\u2019re ready to use your function with a CF distribution, publish the function to the ``LIVE`` stage. You can do this in the CF console, with ``PublishFunction`` in the CF API, or by updating the ``AWS::CloudFront::Function`` resource with the ``AutoPublish`` property set to ``true``. When the function is published to the ``LIVE`` stage, you can attach it to a distribution\u2019s cache behavior, using the function\u2019s ARN.\n To automatically publish the function to the ``LIVE`` stage when it\u2019s created, set the ``AutoPublish`` property to ``true``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html)", "allOf": [ { "type": "object", @@ -7384,14 +7289,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::ResourceSpecificLogging" + "AWS::CloudFront::Function" ], "markdownEnumDescriptions": [ - "Resource-specific logging allows you to specify a logging level for a specific thing group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-resourcespecificlogging.html)" + "Creates a CF function.\n To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function, and the function\u2019s stage.\n By default, when you create a function, it\u2019s in the ``DEVELOPMENT`` stage. In this stage, you can [test the function](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/test-function.html) in the CF console (or with ``TestFunction`` in the CF API).\n When you\u2019re ready to use your function with a CF distribution, publish the function to the ``LIVE`` stage. You can do this in the CF console, with ``PublishFunction`` in the CF API, or by updating the ``AWS::CloudFront::Function`` resource with the ``AutoPublish`` property set to ``true``. When the function is published to the ``LIVE`` stage, you can attach it to a distribution\u2019s cache behavior, using the function\u2019s ARN.\n To automatically publish the function to the ``LIVE`` stage when it\u2019s created, set the ``AutoPublish`` property to ``true``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-resourcespecificlogging.json" + "$ref": "resources/aws-cloudfront-function.json" } }, "required": [ @@ -7405,9 +7310,9 @@ ], "additionalProperties": false }, - "AWS_Signer_SigningProfile": { + "AWS_Pinpoint_App": { "type": "object", - "markdownDescription": "A signing profile is a signing template that can be used to carry out a pre-defined signing job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html)", "allOf": [ { "type": "object", @@ -7415,14 +7320,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Signer::SigningProfile" + "AWS::Pinpoint::App" ], "markdownEnumDescriptions": [ - "A signing profile is a signing template that can be used to carry out a pre-defined signing job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html)" + "Resource Type definition for AWS::Pinpoint::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html)" ] }, "Properties": { - "$ref": "resources/aws-signer-signingprofile.json" + "$ref": "resources/aws-pinpoint-app.json" } }, "required": [ @@ -7436,9 +7341,9 @@ ], "additionalProperties": false }, - "AWS_EC2_CapacityReservationFleet": { + "AWS_RedshiftServerless_Snapshot": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::CapacityReservationFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservationfleet.html)", + "markdownDescription": "Resource Type definition for AWS::RedshiftServerless::Snapshot Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-snapshot.html)", "allOf": [ { "type": "object", @@ -7446,18 +7351,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::CapacityReservationFleet" + "AWS::RedshiftServerless::Snapshot" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::CapacityReservationFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservationfleet.html)" + "Resource Type definition for AWS::RedshiftServerless::Snapshot Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-snapshot.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-capacityreservationfleet.json" + "$ref": "resources/aws-redshiftserverless-snapshot.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -7466,9 +7372,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SecurityGroupVpcAssociation": { + "AWS_ApiGateway_Authorizer": { "type": "object", - "markdownDescription": "Resource type definition for the AWS::EC2::SecurityGroupVpcAssociation resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupvpcassociation.html)", + "markdownDescription": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html)", "allOf": [ { "type": "object", @@ -7476,14 +7382,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SecurityGroupVpcAssociation" + "AWS::ApiGateway::Authorizer" ], "markdownEnumDescriptions": [ - "Resource type definition for the AWS::EC2::SecurityGroupVpcAssociation resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupvpcassociation.html)" + "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-securitygroupvpcassociation.json" + "$ref": "resources/aws-apigateway-authorizer.json" } }, "required": [ @@ -7497,9 +7403,9 @@ ], "additionalProperties": false }, - "AWS_CloudWatch_AnomalyDetector": { + "AWS_Pinpoint_Campaign": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudWatch::AnomalyDetector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::Campaign \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html)", "allOf": [ { "type": "object", @@ -7507,18 +7413,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudWatch::AnomalyDetector" + "AWS::Pinpoint::Campaign" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudWatch::AnomalyDetector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-anomalydetector.html)" + "Resource Type definition for AWS::Pinpoint::Campaign \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudwatch-anomalydetector.json" + "$ref": "resources/aws-pinpoint-campaign.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -7527,9 +7434,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_DirectoryConfig": { + "AWS_CloudFront_OriginAccessControl": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::DirectoryConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html)", + "markdownDescription": "Creates a new origin access control in CloudFront. After you create an origin access control, you can add it to an origin in a CloudFront distribution so that CloudFront sends authenticated (signed) requests to the origin.\n This makes it possible to block public access to the origin, allowing viewers (users) to access the origin's content only through CloudFront.\n For more information about using a CloudFront origin access control, see [Restricting access to an origin](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originaccesscontrol.html)", "allOf": [ { "type": "object", @@ -7537,14 +7444,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::DirectoryConfig" + "AWS::CloudFront::OriginAccessControl" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::DirectoryConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html)" + "Creates a new origin access control in CloudFront. After you create an origin access control, you can add it to an origin in a CloudFront distribution so that CloudFront sends authenticated (signed) requests to the origin.\n This makes it possible to block public access to the origin, allowing viewers (users) to access the origin's content only through CloudFront.\n For more information about using a CloudFront origin access control, see [Restricting access to an origin](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originaccesscontrol.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-directoryconfig.json" + "$ref": "resources/aws-cloudfront-originaccesscontrol.json" } }, "required": [ @@ -7558,9 +7465,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_DistributionTenant": { + "AWS_EC2_EIP": { "type": "object", - "markdownDescription": "The distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distributiontenant.html)", + "markdownDescription": "Specifies an Elastic IP (EIP) address and can, optionally, associate it with an Amazon EC2 instance.\n You can allocate an Elastic IP address from an address pool owned by AWS or from an address pool created from a public IPv4 address range that you have brought to AWS for use with your AWS resources using bring your own IP addresses (BYOIP). For more information, see [Bring Your Own IP Addresses (BYOIP)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html) in the *Amazon EC2 User Guide*.\n For more information, see [Elastic IP Addresses](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eip.html)", "allOf": [ { "type": "object", @@ -7568,19 +7475,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::DistributionTenant" + "AWS::EC2::EIP" ], "markdownEnumDescriptions": [ - "The distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distributiontenant.html)" + "Specifies an Elastic IP (EIP) address and can, optionally, associate it with an Amazon EC2 instance.\n You can allocate an Elastic IP address from an address pool owned by AWS or from an address pool created from a public IPv4 address range that you have brought to AWS for use with your AWS resources using bring your own IP addresses (BYOIP). For more information, see [Bring Your Own IP Addresses (BYOIP)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html) in the *Amazon EC2 User Guide*.\n For more information, see [Elastic IP Addresses](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eip.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-distributiontenant.json" + "$ref": "resources/aws-ec2-eip.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -7589,9 +7495,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_Image": { + "AWS_IAM_AccessKey": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html)", + "markdownDescription": "Resource Type definition for AWS::IAM::AccessKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)", "allOf": [ { "type": "object", @@ -7599,18 +7505,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::Image" + "AWS::IAM::AccessKey" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html)" + "Resource Type definition for AWS::IAM::AccessKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-image.json" + "$ref": "resources/aws-iam-accesskey.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -7619,9 +7526,9 @@ ], "additionalProperties": false }, - "AWS_Detective_Graph": { + "AWS_Personalize_Dataset": { "type": "object", - "markdownDescription": "Resource schema for AWS::Detective::Graph \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-graph.html)", + "markdownDescription": "Resource schema for AWS::Personalize::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-dataset.html)", "allOf": [ { "type": "object", @@ -7629,18 +7536,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Detective::Graph" + "AWS::Personalize::Dataset" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Detective::Graph \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-graph.html)" + "Resource schema for AWS::Personalize::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-dataset.html)" ] }, "Properties": { - "$ref": "resources/aws-detective-graph.json" + "$ref": "resources/aws-personalize-dataset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -7649,9 +7557,9 @@ ], "additionalProperties": false }, - "AWS_AutoScaling_LaunchConfiguration": { + "AWS_GuardDuty_MalwareProtectionPlan": { "type": "object", - "markdownDescription": "The AWS::AutoScaling::LaunchConfiguration resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-launchconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::GuardDuty::MalwareProtectionPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html)", "allOf": [ { "type": "object", @@ -7659,14 +7567,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AutoScaling::LaunchConfiguration" + "AWS::GuardDuty::MalwareProtectionPlan" ], "markdownEnumDescriptions": [ - "The AWS::AutoScaling::LaunchConfiguration resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-launchconfiguration.html)" + "Resource Type definition for AWS::GuardDuty::MalwareProtectionPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html)" ] }, "Properties": { - "$ref": "resources/aws-autoscaling-launchconfiguration.json" + "$ref": "resources/aws-guardduty-malwareprotectionplan.json" } }, "required": [ @@ -7680,9 +7588,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPC": { + "AWS_Omics_AnnotationStore": { "type": "object", - "markdownDescription": "Specifies a virtual private cloud (VPC).\n To add an IPv6 CIDR block to the VPC, see [AWS::EC2::VPCCidrBlock](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html).\n For more information, see [Virtual private clouds (VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/configure-your-vpc.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html)", + "markdownDescription": "Definition of AWS::Omics::AnnotationStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-annotationstore.html)", "allOf": [ { "type": "object", @@ -7690,18 +7598,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPC" + "AWS::Omics::AnnotationStore" ], "markdownEnumDescriptions": [ - "Specifies a virtual private cloud (VPC).\n To add an IPv6 CIDR block to the VPC, see [AWS::EC2::VPCCidrBlock](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html).\n For more information, see [Virtual private clouds (VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/configure-your-vpc.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html)" + "Definition of AWS::Omics::AnnotationStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-annotationstore.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpc.json" + "$ref": "resources/aws-omics-annotationstore.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -7710,9 +7619,9 @@ ], "additionalProperties": false }, - "AWS_Logs_AccountPolicy": { + "AWS_Connect_ContactFlowModule": { "type": "object", - "markdownDescription": "The AWS::Logs::AccountPolicy resource specifies a CloudWatch Logs AccountPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-accountpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::ContactFlowModule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowmodule.html)", "allOf": [ { "type": "object", @@ -7720,14 +7629,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::AccountPolicy" + "AWS::Connect::ContactFlowModule" ], "markdownEnumDescriptions": [ - "The AWS::Logs::AccountPolicy resource specifies a CloudWatch Logs AccountPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-accountpolicy.html)" + "Resource Type definition for AWS::Connect::ContactFlowModule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowmodule.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-accountpolicy.json" + "$ref": "resources/aws-connect-contactflowmodule.json" } }, "required": [ @@ -7741,9 +7650,9 @@ ], "additionalProperties": false }, - "AWS_Chatbot_MicrosoftTeamsChannelConfiguration": { + "AWS_AppTest_TestCase": { "type": "object", - "markdownDescription": "Resource schema for AWS::Chatbot::MicrosoftTeamsChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html)", + "markdownDescription": "Represents a Test Case that can be captured and executed \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apptest-testcase.html)", "allOf": [ { "type": "object", @@ -7751,14 +7660,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" + "AWS::AppTest::TestCase" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Chatbot::MicrosoftTeamsChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html)" + "Represents a Test Case that can be captured and executed \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apptest-testcase.html)" ] }, "Properties": { - "$ref": "resources/aws-chatbot-microsoftteamschannelconfiguration.json" + "$ref": "resources/aws-apptest-testcase.json" } }, "required": [ @@ -7772,9 +7681,9 @@ ], "additionalProperties": false }, - "AWS_IoT_ProvisioningTemplate": { + "AWS_CloudWatch_MetricStream": { "type": "object", - "markdownDescription": "Creates a fleet provisioning template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html)", + "markdownDescription": "Resource Type definition for Metric Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html)", "allOf": [ { "type": "object", @@ -7782,19 +7691,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::ProvisioningTemplate" + "AWS::CloudWatch::MetricStream" ], "markdownEnumDescriptions": [ - "Creates a fleet provisioning template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-provisioningtemplate.html)" + "Resource Type definition for Metric Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-provisioningtemplate.json" + "$ref": "resources/aws-cloudwatch-metricstream.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -7803,9 +7711,9 @@ ], "additionalProperties": false }, - "AWS_B2BI_Partnership": { + "AWS_Comprehend_Flywheel": { "type": "object", - "markdownDescription": "Definition of AWS::B2BI::Partnership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-partnership.html)", + "markdownDescription": "The AWS::Comprehend::Flywheel resource creates an Amazon Comprehend Flywheel that enables customer to train their model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html)", "allOf": [ { "type": "object", @@ -7813,14 +7721,14 @@ "Type": { "type": "string", "enum": [ - "AWS::B2BI::Partnership" + "AWS::Comprehend::Flywheel" ], "markdownEnumDescriptions": [ - "Definition of AWS::B2BI::Partnership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-partnership.html)" + "The AWS::Comprehend::Flywheel resource creates an Amazon Comprehend Flywheel that enables customer to train their model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html)" ] }, "Properties": { - "$ref": "resources/aws-b2bi-partnership.json" + "$ref": "resources/aws-comprehend-flywheel.json" } }, "required": [ @@ -7834,9 +7742,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetWise_ModelManifest": { + "AWS_Wisdom_AIPromptVersion": { "type": "object", - "markdownDescription": "Definition of AWS::IoTFleetWise::ModelManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html)", + "markdownDescription": "Definition of AWS::Wisdom::AIPromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aipromptversion.html)", "allOf": [ { "type": "object", @@ -7844,14 +7752,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetWise::ModelManifest" + "AWS::Wisdom::AIPromptVersion" ], "markdownEnumDescriptions": [ - "Definition of AWS::IoTFleetWise::ModelManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html)" + "Definition of AWS::Wisdom::AIPromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aipromptversion.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleetwise-modelmanifest.json" + "$ref": "resources/aws-wisdom-aipromptversion.json" } }, "required": [ @@ -7865,9 +7773,9 @@ ], "additionalProperties": false }, - "AWS_MediaTailor_Channel": { + "AWS_SecretsManager_SecretTargetAttachment": { "type": "object", - "markdownDescription": "Definition of AWS::MediaTailor::Channel Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channel.html)", + "markdownDescription": "Resource Type definition for AWS::SecretsManager::SecretTargetAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html)", "allOf": [ { "type": "object", @@ -7875,14 +7783,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaTailor::Channel" + "AWS::SecretsManager::SecretTargetAttachment" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaTailor::Channel Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channel.html)" + "Resource Type definition for AWS::SecretsManager::SecretTargetAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-mediatailor-channel.json" + "$ref": "resources/aws-secretsmanager-secrettargetattachment.json" } }, "required": [ @@ -7896,9 +7804,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_ServiceNetworkServiceAssociation": { + "AWS_ApiGatewayV2_RoutingRule": { "type": "object", - "markdownDescription": "Associates a service with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html)", + "markdownDescription": "Schema for AWS::ApiGatewayV2::RoutingRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routingrule.html)", "allOf": [ { "type": "object", @@ -7906,18 +7814,19 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::ServiceNetworkServiceAssociation" + "AWS::ApiGatewayV2::RoutingRule" ], "markdownEnumDescriptions": [ - "Associates a service with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html)" + "Schema for AWS::ApiGatewayV2::RoutingRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routingrule.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-servicenetworkserviceassociation.json" + "$ref": "resources/aws-apigatewayv2-routingrule.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -7926,9 +7835,9 @@ ], "additionalProperties": false }, - "AWS_PCAConnectorAD_ServicePrincipalName": { + "AWS_Logs_LogGroup": { "type": "object", - "markdownDescription": "Definition of AWS::PCAConnectorAD::ServicePrincipalName Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-serviceprincipalname.html)", + "markdownDescription": "The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n + Log group names must be unique within a Region for an AWS account.\n + Log group names can be between 1 and 512 characters long.\n + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html)", "allOf": [ { "type": "object", @@ -7936,14 +7845,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCAConnectorAD::ServicePrincipalName" + "AWS::Logs::LogGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::PCAConnectorAD::ServicePrincipalName Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-serviceprincipalname.html)" + "The ``AWS::Logs::LogGroup`` resource specifies a log group. A log group defines common properties for log streams, such as their retention and access control rules. Each log stream must belong to one log group.\n You can create up to 1,000,000 log groups per Region per account. You must use the following guidelines when naming a log group:\n + Log group names must be unique within a Region for an AWS account.\n + Log group names can be between 1 and 512 characters long.\n + Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), and '.' (period). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html)" ] }, "Properties": { - "$ref": "resources/aws-pcaconnectorad-serviceprincipalname.json" + "$ref": "resources/aws-logs-loggroup.json" } }, "required": [ @@ -7956,9 +7865,9 @@ ], "additionalProperties": false }, - "AWS_NetworkFirewall_TLSInspectionConfiguration": { + "AWS_Organizations_OrganizationalUnit": { "type": "object", - "markdownDescription": "Resource type definition for AWS::NetworkFirewall::TLSInspectionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-tlsinspectionconfiguration.html)", + "markdownDescription": "You can use organizational units (OUs) to group accounts together to administer as a single unit. This greatly simplifies the management of your accounts. For example, you can attach a policy-based control to an OU, and all accounts within the OU automatically inherit the policy. You can create multiple OUs within a single organization, and you can create OUs within other OUs. Each OU can contain multiple accounts, and you can move accounts from one OU to another. However, OU names must be unique within a parent OU or root. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organizationalunit.html)", "allOf": [ { "type": "object", @@ -7966,14 +7875,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkFirewall::TLSInspectionConfiguration" + "AWS::Organizations::OrganizationalUnit" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::NetworkFirewall::TLSInspectionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-tlsinspectionconfiguration.html)" + "You can use organizational units (OUs) to group accounts together to administer as a single unit. This greatly simplifies the management of your accounts. For example, you can attach a policy-based control to an OU, and all accounts within the OU automatically inherit the policy. You can create multiple OUs within a single organization, and you can create OUs within other OUs. Each OU can contain multiple accounts, and you can move accounts from one OU to another. However, OU names must be unique within a parent OU or root. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organizationalunit.html)" ] }, "Properties": { - "$ref": "resources/aws-networkfirewall-tlsinspectionconfiguration.json" + "$ref": "resources/aws-organizations-organizationalunit.json" } }, "required": [ @@ -7987,9 +7896,9 @@ ], "additionalProperties": false }, - "AWS_Omics_SequenceStore": { + "AWS_Signer_ProfilePermission": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Omics::SequenceStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-sequencestore.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html)", "allOf": [ { "type": "object", @@ -7997,14 +7906,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Omics::SequenceStore" + "AWS::Signer::ProfilePermission" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Omics::SequenceStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-sequencestore.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html)" ] }, "Properties": { - "$ref": "resources/aws-omics-sequencestore.json" + "$ref": "resources/aws-signer-profilepermission.json" } }, "required": [ @@ -8018,9 +7927,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_Entitlement": { + "AWS_KinesisAnalytics_ApplicationReferenceDataSource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::Entitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-entitlement.html)", + "markdownDescription": "Resource Type definition for AWS::KinesisAnalytics::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html)", "allOf": [ { "type": "object", @@ -8028,14 +7937,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::Entitlement" + "AWS::KinesisAnalytics::ApplicationReferenceDataSource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::Entitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-entitlement.html)" + "Resource Type definition for AWS::KinesisAnalytics::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-entitlement.json" + "$ref": "resources/aws-kinesisanalytics-applicationreferencedatasource.json" } }, "required": [ @@ -8049,9 +7958,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_Multiplexprogram": { + "AWS_EC2_IPAMResourceDiscovery": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaLive::Multiplexprogram \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplexprogram.html)", + "markdownDescription": "Resource Schema of AWS::EC2::IPAMResourceDiscovery Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscovery.html)", "allOf": [ { "type": "object", @@ -8059,14 +7968,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::Multiplexprogram" + "AWS::EC2::IPAMResourceDiscovery" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaLive::Multiplexprogram \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplexprogram.html)" + "Resource Schema of AWS::EC2::IPAMResourceDiscovery Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscovery.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-multiplexprogram.json" + "$ref": "resources/aws-ec2-ipamresourcediscovery.json" } }, "required": [ @@ -8079,9 +7988,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_AssetModel": { + "AWS_CodeArtifact_Repository": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::AssetModel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html)", + "markdownDescription": "The resource schema to create a CodeArtifact repository. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html)", "allOf": [ { "type": "object", @@ -8089,14 +7998,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::AssetModel" + "AWS::CodeArtifact::Repository" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::AssetModel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html)" + "The resource schema to create a CodeArtifact repository. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-assetmodel.json" + "$ref": "resources/aws-codeartifact-repository.json" } }, "required": [ @@ -8110,9 +8019,9 @@ ], "additionalProperties": false }, - "AWS_EKS_Addon": { + "AWS_AppFlow_ConnectorProfile": { "type": "object", - "markdownDescription": "Resource Schema for AWS::EKS::Addon \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html)", + "markdownDescription": "Resource Type definition for AWS::AppFlow::ConnectorProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html)", "allOf": [ { "type": "object", @@ -8120,14 +8029,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EKS::Addon" + "AWS::AppFlow::ConnectorProfile" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::EKS::Addon \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html)" + "Resource Type definition for AWS::AppFlow::ConnectorProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-eks-addon.json" + "$ref": "resources/aws-appflow-connectorprofile.json" } }, "required": [ @@ -8141,9 +8050,9 @@ ], "additionalProperties": false }, - "AWS_DocDB_DBSubnetGroup": { + "AWS_IoTWireless_Destination": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DocDB::DBSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html)", + "markdownDescription": "Destination's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-destination.html)", "allOf": [ { "type": "object", @@ -8151,14 +8060,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DocDB::DBSubnetGroup" + "AWS::IoTWireless::Destination" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DocDB::DBSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbsubnetgroup.html)" + "Destination's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-destination.html)" ] }, "Properties": { - "$ref": "resources/aws-docdb-dbsubnetgroup.json" + "$ref": "resources/aws-iotwireless-destination.json" } }, "required": [ @@ -8172,9 +8081,9 @@ ], "additionalProperties": false }, - "AWS_EKS_Cluster": { + "AWS_IoT_FleetMetric": { "type": "object", - "markdownDescription": "An object representing an Amazon EKS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html)", + "markdownDescription": "An aggregated metric of certain devices in your fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html)", "allOf": [ { "type": "object", @@ -8182,14 +8091,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EKS::Cluster" + "AWS::IoT::FleetMetric" ], "markdownEnumDescriptions": [ - "An object representing an Amazon EKS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html)" + "An aggregated metric of certain devices in your fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html)" ] }, "Properties": { - "$ref": "resources/aws-eks-cluster.json" + "$ref": "resources/aws-iot-fleetmetric.json" } }, "required": [ @@ -8203,9 +8112,9 @@ ], "additionalProperties": false }, - "AWS_SSMQuickSetup_ConfigurationManager": { + "AWS_RDS_DBProxyTargetGroup": { "type": "object", - "markdownDescription": "Definition of AWS::SSMQuickSetup::ConfigurationManager Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmquicksetup-configurationmanager.html)", + "markdownDescription": "Resource schema for AWS::RDS::DBProxyTargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html)", "allOf": [ { "type": "object", @@ -8213,14 +8122,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMQuickSetup::ConfigurationManager" + "AWS::RDS::DBProxyTargetGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::SSMQuickSetup::ConfigurationManager Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmquicksetup-configurationmanager.html)" + "Resource schema for AWS::RDS::DBProxyTargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmquicksetup-configurationmanager.json" + "$ref": "resources/aws-rds-dbproxytargetgroup.json" } }, "required": [ @@ -8234,9 +8143,9 @@ ], "additionalProperties": false }, - "AWS_Omics_Workflow": { + "AWS_Greengrass_LoggerDefinitionVersion": { "type": "object", - "markdownDescription": "Definition of AWS::Omics::Workflow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::LoggerDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html)", "allOf": [ { "type": "object", @@ -8244,18 +8153,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Omics::Workflow" + "AWS::Greengrass::LoggerDefinitionVersion" ], "markdownEnumDescriptions": [ - "Definition of AWS::Omics::Workflow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html)" + "Resource Type definition for AWS::Greengrass::LoggerDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinitionversion.html)" ] }, "Properties": { - "$ref": "resources/aws-omics-workflow.json" + "$ref": "resources/aws-greengrass-loggerdefinitionversion.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -8264,9 +8174,9 @@ ], "additionalProperties": false }, - "AWS_MWAA_Environment": { + "AWS_RDS_DBSecurityGroup": { "type": "object", - "markdownDescription": "Resource schema for AWS::MWAA::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html)", + "markdownDescription": "Resource Type definition for AWS::RDS::DBSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroup.html)", "allOf": [ { "type": "object", @@ -8274,14 +8184,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MWAA::Environment" + "AWS::RDS::DBSecurityGroup" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MWAA::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html)" + "Resource Type definition for AWS::RDS::DBSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-mwaa-environment.json" + "$ref": "resources/aws-rds-dbsecuritygroup.json" } }, "required": [ @@ -8295,9 +8205,9 @@ ], "additionalProperties": false }, - "AWS_Neptune_DBSubnetGroup": { + "AWS_DataSync_LocationFSxOpenZFS": { "type": "object", - "markdownDescription": "The AWS::Neptune::DBSubnetGroup type creates an Amazon Neptune DB subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same AWS Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxOpenZFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html)", "allOf": [ { "type": "object", @@ -8305,14 +8215,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Neptune::DBSubnetGroup" + "AWS::DataSync::LocationFSxOpenZFS" ], "markdownEnumDescriptions": [ - "The AWS::Neptune::DBSubnetGroup type creates an Amazon Neptune DB subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same AWS Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html)" + "Resource schema for AWS::DataSync::LocationFSxOpenZFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html)" ] }, "Properties": { - "$ref": "resources/aws-neptune-dbsubnetgroup.json" + "$ref": "resources/aws-datasync-locationfsxopenzfs.json" } }, "required": [ @@ -8326,9 +8236,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_CachePolicy": { + "AWS_PCS_Queue": { "type": "object", - "markdownDescription": "A cache policy.\n When it's attached to a cache behavior, the cache policy determines the following:\n + The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.\n + The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.\n \n The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find a valid object in its cache that matches the request's cache key. If you want to send values to the origin but *not* include them in the cache key, use ``OriginRequestPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html)", + "markdownDescription": "AWS::PCS::Queue resource creates an AWS PCS queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html)", "allOf": [ { "type": "object", @@ -8336,14 +8246,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::CachePolicy" + "AWS::PCS::Queue" ], "markdownEnumDescriptions": [ - "A cache policy.\n When it's attached to a cache behavior, the cache policy determines the following:\n + The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.\n + The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.\n \n The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find a valid object in its cache that matches the request's cache key. If you want to send values to the origin but *not* include them in the cache key, use ``OriginRequestPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html)" + "AWS::PCS::Queue resource creates an AWS PCS queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-cachepolicy.json" + "$ref": "resources/aws-pcs-queue.json" } }, "required": [ @@ -8357,9 +8267,9 @@ ], "additionalProperties": false }, - "AWS_Oam_Link": { + "AWS_IoTFleetWise_Vehicle": { "type": "object", - "markdownDescription": "Definition of AWS::Oam::Link Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html)", + "markdownDescription": "Definition of AWS::IoTFleetWise::Vehicle Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html)", "allOf": [ { "type": "object", @@ -8367,14 +8277,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Oam::Link" + "AWS::IoTFleetWise::Vehicle" ], "markdownEnumDescriptions": [ - "Definition of AWS::Oam::Link Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html)" + "Definition of AWS::IoTFleetWise::Vehicle Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html)" ] }, "Properties": { - "$ref": "resources/aws-oam-link.json" + "$ref": "resources/aws-iotfleetwise-vehicle.json" } }, "required": [ @@ -8388,9 +8298,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_Bridge": { + "AWS_LakeFormation_Tag": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::Bridge \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridge.html)", + "markdownDescription": "A resource schema representing a Lake Formation Tag. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tag.html)", "allOf": [ { "type": "object", @@ -8398,14 +8308,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::Bridge" + "AWS::LakeFormation::Tag" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::Bridge \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridge.html)" + "A resource schema representing a Lake Formation Tag. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tag.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-bridge.json" + "$ref": "resources/aws-lakeformation-tag.json" } }, "required": [ @@ -8419,9 +8329,9 @@ ], "additionalProperties": false }, - "AWS_XRay_SamplingRule": { + "AWS_Omics_Workflow": { "type": "object", - "markdownDescription": "This schema provides construct and validation rules for AWS-XRay SamplingRule resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-samplingrule.html)", + "markdownDescription": "Definition of AWS::Omics::Workflow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html)", "allOf": [ { "type": "object", @@ -8429,14 +8339,14 @@ "Type": { "type": "string", "enum": [ - "AWS::XRay::SamplingRule" + "AWS::Omics::Workflow" ], "markdownEnumDescriptions": [ - "This schema provides construct and validation rules for AWS-XRay SamplingRule resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-samplingrule.html)" + "Definition of AWS::Omics::Workflow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html)" ] }, "Properties": { - "$ref": "resources/aws-xray-samplingrule.json" + "$ref": "resources/aws-omics-workflow.json" } }, "required": [ @@ -8449,9 +8359,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_Portfolio": { + "AWS_SageMaker_UserProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::Portfolio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html)", "allOf": [ { "type": "object", @@ -8459,14 +8369,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::Portfolio" + "AWS::SageMaker::UserProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::Portfolio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html)" + "Resource Type definition for AWS::SageMaker::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-portfolio.json" + "$ref": "resources/aws-sagemaker-userprofile.json" } }, "required": [ @@ -8480,9 +8390,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Space": { + "AWS_Route53Resolver_ResolverQueryLoggingConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Space \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html)", "allOf": [ { "type": "object", @@ -8490,19 +8400,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Space" + "AWS::Route53Resolver::ResolverQueryLoggingConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Space \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html)" + "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-space.json" + "$ref": "resources/aws-route53resolver-resolverqueryloggingconfig.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -8511,9 +8420,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_PromptVersion": { + "AWS_SSM_MaintenanceWindow": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::PromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-promptversion.html)", + "markdownDescription": "Resource Type definition for AWS::SSM::MaintenanceWindow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html)", "allOf": [ { "type": "object", @@ -8521,14 +8430,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::PromptVersion" + "AWS::SSM::MaintenanceWindow" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::PromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-promptversion.html)" + "Resource Type definition for AWS::SSM::MaintenanceWindow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-promptversion.json" + "$ref": "resources/aws-ssm-maintenancewindow.json" } }, "required": [ @@ -8542,9 +8451,9 @@ ], "additionalProperties": false }, - "AWS_AmplifyUIBuilder_Component": { + "AWS_CodeDeploy_DeploymentGroup": { "type": "object", - "markdownDescription": "Definition of AWS::AmplifyUIBuilder::Component Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-component.html)", + "markdownDescription": "Resource Type definition for AWS::CodeDeploy::DeploymentGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html)", "allOf": [ { "type": "object", @@ -8552,18 +8461,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AmplifyUIBuilder::Component" + "AWS::CodeDeploy::DeploymentGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::AmplifyUIBuilder::Component Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-component.html)" + "Resource Type definition for AWS::CodeDeploy::DeploymentGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-amplifyuibuilder-component.json" + "$ref": "resources/aws-codedeploy-deploymentgroup.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -8572,9 +8482,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_ProjectMembership": { + "AWS_SES_ReceiptFilter": { "type": "object", - "markdownDescription": "Definition of AWS::DataZone::ProjectMembership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html)", + "markdownDescription": "Resource Type definition for AWS::SES::ReceiptFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html)", "allOf": [ { "type": "object", @@ -8582,14 +8492,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::ProjectMembership" + "AWS::SES::ReceiptFilter" ], "markdownEnumDescriptions": [ - "Definition of AWS::DataZone::ProjectMembership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectmembership.html)" + "Resource Type definition for AWS::SES::ReceiptFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-projectmembership.json" + "$ref": "resources/aws-ses-receiptfilter.json" } }, "required": [ @@ -8603,9 +8513,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_ADMChannel": { + "AWS_Lambda_Alias": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::ADMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html)", + "markdownDescription": "Resource Type definition for AWS::Lambda::Alias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html)", "allOf": [ { "type": "object", @@ -8613,14 +8523,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::ADMChannel" + "AWS::Lambda::Alias" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::ADMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html)" + "Resource Type definition for AWS::Lambda::Alias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-admchannel.json" + "$ref": "resources/aws-lambda-alias.json" } }, "required": [ @@ -8634,9 +8544,9 @@ ], "additionalProperties": false }, - "AWS_Logs_DeliveryDestination": { + "AWS_IAM_UserToGroupAddition": { "type": "object", - "markdownDescription": "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverydestination.html)", + "markdownDescription": "Resource Type definition for AWS::IAM::UserToGroupAddition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)", "allOf": [ { "type": "object", @@ -8644,14 +8554,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::DeliveryDestination" + "AWS::IAM::UserToGroupAddition" ], "markdownEnumDescriptions": [ - "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverydestination.html)" + "Resource Type definition for AWS::IAM::UserToGroupAddition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-deliverydestination.json" + "$ref": "resources/aws-iam-usertogroupaddition.json" } }, "required": [ @@ -8665,9 +8575,9 @@ ], "additionalProperties": false }, - "AWS_WAF_IPSet": { + "AWS_SageMaker_InferenceComponent": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAF::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::InferenceComponent \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferencecomponent.html)", "allOf": [ { "type": "object", @@ -8675,14 +8585,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAF::IPSet" + "AWS::SageMaker::InferenceComponent" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAF::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html)" + "Resource Type definition for AWS::SageMaker::InferenceComponent \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferencecomponent.html)" ] }, "Properties": { - "$ref": "resources/aws-waf-ipset.json" + "$ref": "resources/aws-sagemaker-inferencecomponent.json" } }, "required": [ @@ -8696,9 +8606,9 @@ ], "additionalProperties": false }, - "AWS_KinesisAnalytics_Application": { + "AWS_CodeBuild_ReportGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KinesisAnalytics::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html)", + "markdownDescription": "Resource Type definition for AWS::CodeBuild::ReportGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html)", "allOf": [ { "type": "object", @@ -8706,14 +8616,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisAnalytics::Application" + "AWS::CodeBuild::ReportGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KinesisAnalytics::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html)" + "Resource Type definition for AWS::CodeBuild::ReportGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisanalytics-application.json" + "$ref": "resources/aws-codebuild-reportgroup.json" } }, "required": [ @@ -8727,9 +8637,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_SiteToSiteVpnAttachment": { + "AWS_S3Outposts_BucketPolicy": { "type": "object", - "markdownDescription": "AWS::NetworkManager::SiteToSiteVpnAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-sitetositevpnattachment.html)", + "markdownDescription": "Resource Type Definition for AWS::S3Outposts::BucketPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucketpolicy.html)", "allOf": [ { "type": "object", @@ -8737,14 +8647,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::SiteToSiteVpnAttachment" + "AWS::S3Outposts::BucketPolicy" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::SiteToSiteVpnAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-sitetositevpnattachment.html)" + "Resource Type Definition for AWS::S3Outposts::BucketPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucketpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-sitetositevpnattachment.json" + "$ref": "resources/aws-s3outposts-bucketpolicy.json" } }, "required": [ @@ -8758,9 +8668,9 @@ ], "additionalProperties": false }, - "AWS_NetworkFirewall_RuleGroup": { + "AWS_OpsWorks_Volume": { "type": "object", - "markdownDescription": "Resource type definition for AWS::NetworkFirewall::RuleGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-rulegroup.html)", + "markdownDescription": "Resource Type definition for AWS::OpsWorks::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html)", "allOf": [ { "type": "object", @@ -8768,14 +8678,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkFirewall::RuleGroup" + "AWS::OpsWorks::Volume" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::NetworkFirewall::RuleGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-rulegroup.html)" + "Resource Type definition for AWS::OpsWorks::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html)" ] }, "Properties": { - "$ref": "resources/aws-networkfirewall-rulegroup.json" + "$ref": "resources/aws-opsworks-volume.json" } }, "required": [ @@ -8789,9 +8699,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_DomainNameAccessAssociation": { + "AWS_ImageBuilder_Component": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ApiGateway::DomainNameAccessAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::Component \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html)", "allOf": [ { "type": "object", @@ -8799,14 +8709,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::DomainNameAccessAssociation" + "AWS::ImageBuilder::Component" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ApiGateway::DomainNameAccessAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html)" + "Resource schema for AWS::ImageBuilder::Component \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-domainnameaccessassociation.json" + "$ref": "resources/aws-imagebuilder-component.json" } }, "required": [ @@ -8820,9 +8730,9 @@ ], "additionalProperties": false }, - "AWS_IoTEvents_Input": { + "AWS_EC2_IPAMResourceDiscoveryAssociation": { "type": "object", - "markdownDescription": "The AWS::IoTEvents::Input resource creates an input. To monitor your devices and processes, they must have a way to get telemetry data into ITE. This is done by sending messages as *inputs* to ITE. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html)", + "markdownDescription": "Resource Schema of AWS::EC2::IPAMResourceDiscoveryAssociation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscoveryassociation.html)", "allOf": [ { "type": "object", @@ -8830,14 +8740,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTEvents::Input" + "AWS::EC2::IPAMResourceDiscoveryAssociation" ], "markdownEnumDescriptions": [ - "The AWS::IoTEvents::Input resource creates an input. To monitor your devices and processes, they must have a way to get telemetry data into ITE. This is done by sending messages as *inputs* to ITE. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html)" + "Resource Schema of AWS::EC2::IPAMResourceDiscoveryAssociation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscoveryassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-iotevents-input.json" + "$ref": "resources/aws-ec2-ipamresourcediscoveryassociation.json" } }, "required": [ @@ -8851,9 +8761,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_MulticastGroup": { + "AWS_WAFRegional_Rule": { "type": "object", - "markdownDescription": "Create and manage Multicast groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-multicastgroup.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html)", "allOf": [ { "type": "object", @@ -8861,14 +8771,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::MulticastGroup" + "AWS::WAFRegional::Rule" ], "markdownEnumDescriptions": [ - "Create and manage Multicast groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-multicastgroup.html)" + "Resource Type definition for AWS::WAFRegional::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-multicastgroup.json" + "$ref": "resources/aws-wafregional-rule.json" } }, "required": [ @@ -8882,9 +8792,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_FirewallRuleGroupAssociation": { + "AWS_CodePipeline_Webhook": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::FirewallRuleGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroupassociation.html)", + "markdownDescription": "Resource Type definition for AWS::CodePipeline::Webhook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html)", "allOf": [ { "type": "object", @@ -8892,14 +8802,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::FirewallRuleGroupAssociation" + "AWS::CodePipeline::Webhook" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::FirewallRuleGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroupassociation.html)" + "Resource Type definition for AWS::CodePipeline::Webhook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-firewallrulegroupassociation.json" + "$ref": "resources/aws-codepipeline-webhook.json" } }, "required": [ @@ -8913,9 +8823,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCDHCPOptionsAssociation": { + "AWS_ServiceDiscovery_Service": { "type": "object", - "markdownDescription": "Associates a set of DHCP options with a VPC, or associates no DHCP options with the VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcdhcpoptionsassociation.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html)", "allOf": [ { "type": "object", @@ -8923,19 +8833,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCDHCPOptionsAssociation" + "AWS::ServiceDiscovery::Service" ], "markdownEnumDescriptions": [ - "Associates a set of DHCP options with a VPC, or associates no DHCP options with the VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcdhcpoptionsassociation.html)" + "Resource Type definition for AWS::ServiceDiscovery::Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-service.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcdhcpoptionsassociation.json" + "$ref": "resources/aws-servicediscovery-service.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -8944,9 +8853,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_DomainNameApiAssociation": { + "AWS_SQS_Queue": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::DomainNameApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html)", + "markdownDescription": "The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.\n Keep the following caveats in mind:\n + If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.\n You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*. \n + If you don't provide a value for a property, the queue is created with the default value for the property.\n + If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.\n + To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html) and is unique within the scope of your queues.\n \n For more information about creating FIFO (first-in-first-out) queues, see [Creating an queue ()](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/create-queue-cloudformation.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html)", "allOf": [ { "type": "object", @@ -8954,19 +8863,18 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::DomainNameApiAssociation" + "AWS::SQS::Queue" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::DomainNameApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html)" + "The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.\n Keep the following caveats in mind:\n + If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.\n You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*. \n + If you don't provide a value for a property, the queue is created with the default value for the property.\n + If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.\n + To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html) and is unique within the scope of your queues.\n \n For more information about creating FIFO (first-in-first-out) queues, see [Creating an queue ()](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/create-queue-cloudformation.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-domainnameapiassociation.json" + "$ref": "resources/aws-sqs-queue.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -8975,9 +8883,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_EventBridgeRuleTemplateGroup": { + "AWS_MemoryDB_ParameterGroup": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::EventBridgeRuleTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplategroup.html)", + "markdownDescription": "The AWS::MemoryDB::ParameterGroup resource creates an Amazon MemoryDB ParameterGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-parametergroup.html)", "allOf": [ { "type": "object", @@ -8985,14 +8893,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::EventBridgeRuleTemplateGroup" + "AWS::MemoryDB::ParameterGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::EventBridgeRuleTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplategroup.html)" + "The AWS::MemoryDB::ParameterGroup resource creates an Amazon MemoryDB ParameterGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-parametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-eventbridgeruletemplategroup.json" + "$ref": "resources/aws-memorydb-parametergroup.json" } }, "required": [ @@ -9006,9 +8914,9 @@ ], "additionalProperties": false }, - "AWS_Events_EventBus": { + "AWS_IoT_Dimension": { "type": "object", - "markdownDescription": "Resource type definition for AWS::Events::EventBus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html)", + "markdownDescription": "A dimension can be used to limit the scope of a metric used in a security profile for AWS IoT Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html)", "allOf": [ { "type": "object", @@ -9016,14 +8924,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Events::EventBus" + "AWS::IoT::Dimension" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::Events::EventBus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html)" + "A dimension can be used to limit the scope of a metric used in a security profile for AWS IoT Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html)" ] }, "Properties": { - "$ref": "resources/aws-events-eventbus.json" + "$ref": "resources/aws-iot-dimension.json" } }, "required": [ @@ -9037,9 +8945,9 @@ ], "additionalProperties": false }, - "AWS_Budgets_Budget": { + "AWS_S3_StorageLensGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Budgets::Budget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html)", + "markdownDescription": "The AWS::S3::StorageLensGroup resource is an Amazon S3 resource type that you can use to create Storage Lens Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelensgroup.html)", "allOf": [ { "type": "object", @@ -9047,14 +8955,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Budgets::Budget" + "AWS::S3::StorageLensGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Budgets::Budget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html)" + "The AWS::S3::StorageLensGroup resource is an Amazon S3 resource type that you can use to create Storage Lens Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelensgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-budgets-budget.json" + "$ref": "resources/aws-s3-storagelensgroup.json" } }, "required": [ @@ -9068,9 +8976,9 @@ ], "additionalProperties": false }, - "AWS_EC2_RouteTable": { + "AWS_AppStream_ApplicationEntitlementAssociation": { "type": "object", - "markdownDescription": "Specifies a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.\n For more information, see [Route tables](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::ApplicationEntitlementAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationentitlementassociation.html)", "allOf": [ { "type": "object", @@ -9078,14 +8986,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::RouteTable" + "AWS::AppStream::ApplicationEntitlementAssociation" ], "markdownEnumDescriptions": [ - "Specifies a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.\n For more information, see [Route tables](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html)" + "Resource Type definition for AWS::AppStream::ApplicationEntitlementAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationentitlementassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-routetable.json" + "$ref": "resources/aws-appstream-applicationentitlementassociation.json" } }, "required": [ @@ -9099,9 +9007,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_AppImageConfig": { + "AWS_AutoScaling_WarmPool": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::AppImageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html)", + "markdownDescription": "Resource schema for AWS::AutoScaling::WarmPool. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-warmpool.html)", "allOf": [ { "type": "object", @@ -9109,14 +9017,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::AppImageConfig" + "AWS::AutoScaling::WarmPool" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::AppImageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html)" + "Resource schema for AWS::AutoScaling::WarmPool. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-warmpool.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-appimageconfig.json" + "$ref": "resources/aws-autoscaling-warmpool.json" } }, "required": [ @@ -9130,9 +9038,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_Portal": { + "AWS_IAM_User": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::Portal \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html)", + "markdownDescription": "Creates a new IAM user for your AWS-account.\n For information about quotas for the number of IAM users you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)", "allOf": [ { "type": "object", @@ -9140,19 +9048,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::Portal" + "AWS::IAM::User" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::Portal \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html)" + "Creates a new IAM user for your AWS-account.\n For information about quotas for the number of IAM users you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-portal.json" + "$ref": "resources/aws-iam-user.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -9161,9 +9068,9 @@ ], "additionalProperties": false }, - "AWS_EventSchemas_Schema": { + "AWS_DataSync_LocationFSxONTAP": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EventSchemas::Schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-schema.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxONTAP. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html)", "allOf": [ { "type": "object", @@ -9171,14 +9078,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EventSchemas::Schema" + "AWS::DataSync::LocationFSxONTAP" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EventSchemas::Schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-schema.html)" + "Resource schema for AWS::DataSync::LocationFSxONTAP. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html)" ] }, "Properties": { - "$ref": "resources/aws-eventschemas-schema.json" + "$ref": "resources/aws-datasync-locationfsxontap.json" } }, "required": [ @@ -9192,9 +9099,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VerifiedAccessTrustProvider": { + "AWS_RDS_CustomDBEngineVersion": { "type": "object", - "markdownDescription": "The AWS::EC2::VerifiedAccessTrustProvider type describes a verified access trust provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccesstrustprovider.html)", + "markdownDescription": "Creates a custom DB engine version (CEV). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html)", "allOf": [ { "type": "object", @@ -9202,14 +9109,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VerifiedAccessTrustProvider" + "AWS::RDS::CustomDBEngineVersion" ], "markdownEnumDescriptions": [ - "The AWS::EC2::VerifiedAccessTrustProvider type describes a verified access trust provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccesstrustprovider.html)" + "Creates a custom DB engine version (CEV). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-customdbengineversion.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-verifiedaccesstrustprovider.json" + "$ref": "resources/aws-rds-customdbengineversion.json" } }, "required": [ @@ -9223,9 +9130,9 @@ ], "additionalProperties": false }, - "AWS_EMR_Studio": { + "AWS_SimSpaceWeaver_Simulation": { "type": "object", - "markdownDescription": "Resource schema for AWS::EMR::Studio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html)", + "markdownDescription": "AWS::SimSpaceWeaver::Simulation resource creates an AWS Simulation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-simspaceweaver-simulation.html)", "allOf": [ { "type": "object", @@ -9233,14 +9140,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::Studio" + "AWS::SimSpaceWeaver::Simulation" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EMR::Studio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html)" + "AWS::SimSpaceWeaver::Simulation resource creates an AWS Simulation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-simspaceweaver-simulation.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-studio.json" + "$ref": "resources/aws-simspaceweaver-simulation.json" } }, "required": [ @@ -9254,9 +9161,9 @@ ], "additionalProperties": false }, - "AWS_IVS_PlaybackRestrictionPolicy": { + "AWS_EC2_VPCEndpoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::PlaybackRestrictionPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackrestrictionpolicy.html)", + "markdownDescription": "Specifies a VPC endpoint. A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS, an MKT Partner, or another AWS accounts in your organization. For more information, see the [User Guide](https://docs.aws.amazon.com/vpc/latest/privatelink/).\n An endpoint of type ``Interface`` establishes connections between the subnets in your VPC and an AWS-service, your own service, or a service hosted by another AWS-account. With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.\n An endpoint of type ``gateway`` serves as a target for a route in your route table for traffic destined for S3 or DDB. You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to S3, see [Why can't I connect to an S3 bucket using a gateway VPC endpoint?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint)\n An endpoint of type ``GatewayLoadBalancer`` provides private connectivity between your VPC and virtual appliances from a service provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html)", "allOf": [ { "type": "object", @@ -9264,14 +9171,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::PlaybackRestrictionPolicy" + "AWS::EC2::VPCEndpoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::PlaybackRestrictionPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackrestrictionpolicy.html)" + "Specifies a VPC endpoint. A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS, an MKT Partner, or another AWS accounts in your organization. For more information, see the [User Guide](https://docs.aws.amazon.com/vpc/latest/privatelink/).\n An endpoint of type ``Interface`` establishes connections between the subnets in your VPC and an AWS-service, your own service, or a service hosted by another AWS-account. With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.\n An endpoint of type ``gateway`` serves as a target for a route in your route table for traffic destined for S3 or DDB. You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to S3, see [Why can't I connect to an S3 bucket using a gateway VPC endpoint?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint)\n An endpoint of type ``GatewayLoadBalancer`` provides private connectivity between your VPC and virtual appliances from a service provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-playbackrestrictionpolicy.json" + "$ref": "resources/aws-ec2-vpcendpoint.json" } }, "required": [ @@ -9285,9 +9192,9 @@ ], "additionalProperties": false }, - "AWS_Timestream_Table": { + "AWS_EC2_TransitGatewayPeeringAttachment": { "type": "object", - "markdownDescription": "The AWS::Timestream::Table resource creates a Timestream Table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-table.html)", + "markdownDescription": "The AWS::EC2::TransitGatewayPeeringAttachment type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaypeeringattachment.html)", "allOf": [ { "type": "object", @@ -9295,14 +9202,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Timestream::Table" + "AWS::EC2::TransitGatewayPeeringAttachment" ], "markdownEnumDescriptions": [ - "The AWS::Timestream::Table resource creates a Timestream Table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-table.html)" + "The AWS::EC2::TransitGatewayPeeringAttachment type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaypeeringattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-timestream-table.json" + "$ref": "resources/aws-ec2-transitgatewaypeeringattachment.json" } }, "required": [ @@ -9316,9 +9223,9 @@ ], "additionalProperties": false }, - "AWS_VoiceID_Domain": { + "AWS_DataZone_Owner": { "type": "object", - "markdownDescription": "The AWS::VoiceID::Domain resource specifies an Amazon VoiceID Domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-voiceid-domain.html)", + "markdownDescription": "A owner can set up authorization permissions on their resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-owner.html)", "allOf": [ { "type": "object", @@ -9326,14 +9233,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VoiceID::Domain" + "AWS::DataZone::Owner" ], "markdownEnumDescriptions": [ - "The AWS::VoiceID::Domain resource specifies an Amazon VoiceID Domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-voiceid-domain.html)" + "A owner can set up authorization permissions on their resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-owner.html)" ] }, "Properties": { - "$ref": "resources/aws-voiceid-domain.json" + "$ref": "resources/aws-datazone-owner.json" } }, "required": [ @@ -9347,9 +9254,9 @@ ], "additionalProperties": false }, - "AWS_IoTAnalytics_Dataset": { + "AWS_EC2_Host": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::Host \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html)", "allOf": [ { "type": "object", @@ -9357,14 +9264,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTAnalytics::Dataset" + "AWS::EC2::Host" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoTAnalytics::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html)" + "Resource Type definition for AWS::EC2::Host \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html)" ] }, "Properties": { - "$ref": "resources/aws-iotanalytics-dataset.json" + "$ref": "resources/aws-ec2-host.json" } }, "required": [ @@ -9378,9 +9285,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_InfrastructureConfiguration": { + "AWS_Batch_ComputeEnvironment": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::InfrastructureConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Batch::ComputeEnvironment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html)", "allOf": [ { "type": "object", @@ -9388,14 +9295,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::InfrastructureConfiguration" + "AWS::Batch::ComputeEnvironment" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::InfrastructureConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html)" + "Resource Type definition for AWS::Batch::ComputeEnvironment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-infrastructureconfiguration.json" + "$ref": "resources/aws-batch-computeenvironment.json" } }, "required": [ @@ -9409,9 +9316,9 @@ ], "additionalProperties": false }, - "AWS_Route53_KeySigningKey": { + "AWS_WorkSpaces_Workspace": { "type": "object", - "markdownDescription": "Represents a key signing key (KSK) associated with a hosted zone. You can only have two KSKs per hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html)", + "markdownDescription": "Resource Type definition for AWS::WorkSpaces::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html)", "allOf": [ { "type": "object", @@ -9419,14 +9326,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53::KeySigningKey" + "AWS::WorkSpaces::Workspace" ], "markdownEnumDescriptions": [ - "Represents a key signing key (KSK) associated with a hosted zone. You can only have two KSKs per hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html)" + "Resource Type definition for AWS::WorkSpaces::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html)" ] }, "Properties": { - "$ref": "resources/aws-route53-keysigningkey.json" + "$ref": "resources/aws-workspaces-workspace.json" } }, "required": [ @@ -9440,9 +9347,9 @@ ], "additionalProperties": false }, - "AWS_CodeBuild_ReportGroup": { + "AWS_SecurityHub_Standard": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeBuild::ReportGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html)", + "markdownDescription": "The ``AWS::SecurityHub::Standard`` resource specifies the enablement of a security standard. The standard is identified by the ``StandardsArn`` property. To view a list of ASH standards and their Amazon Resource Names (ARNs), use the [DescribeStandards](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_DescribeStandards.html) API operation.\n You must create a separate ``AWS::SecurityHub::Standard`` resource for each standard that you want to enable.\n For more information about ASH standards, see [standards reference](https://docs.aws.amazon.com/securityhub/latest/userguide/standards-reference.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-standard.html)", "allOf": [ { "type": "object", @@ -9450,14 +9357,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeBuild::ReportGroup" + "AWS::SecurityHub::Standard" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeBuild::ReportGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-reportgroup.html)" + "The ``AWS::SecurityHub::Standard`` resource specifies the enablement of a security standard. The standard is identified by the ``StandardsArn`` property. To view a list of ASH standards and their Amazon Resource Names (ARNs), use the [DescribeStandards](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_DescribeStandards.html) API operation.\n You must create a separate ``AWS::SecurityHub::Standard`` resource for each standard that you want to enable.\n For more information about ASH standards, see [standards reference](https://docs.aws.amazon.com/securityhub/latest/userguide/standards-reference.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-standard.html)" ] }, "Properties": { - "$ref": "resources/aws-codebuild-reportgroup.json" + "$ref": "resources/aws-securityhub-standard.json" } }, "required": [ @@ -9471,9 +9378,9 @@ ], "additionalProperties": false }, - "AWS_ManagedBlockchain_Accessor": { + "AWS_IoT_CustomMetric": { "type": "object", - "markdownDescription": "Definition of AWS::ManagedBlockchain::com.amazonaws.taiga.webservice.api#Accessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-accessor.html)", + "markdownDescription": "A custom metric published by your devices to Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html)", "allOf": [ { "type": "object", @@ -9481,14 +9388,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ManagedBlockchain::Accessor" + "AWS::IoT::CustomMetric" ], "markdownEnumDescriptions": [ - "Definition of AWS::ManagedBlockchain::com.amazonaws.taiga.webservice.api#Accessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-accessor.html)" + "A custom metric published by your devices to Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-custommetric.html)" ] }, "Properties": { - "$ref": "resources/aws-managedblockchain-accessor.json" + "$ref": "resources/aws-iot-custommetric.json" } }, "required": [ @@ -9502,9 +9409,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_GameServerGroup": { + "AWS_EKS_Nodegroup": { "type": "object", - "markdownDescription": "The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift (GameLift) GameServerGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html)", + "markdownDescription": "Resource schema for AWS::EKS::Nodegroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html)", "allOf": [ { "type": "object", @@ -9512,14 +9419,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::GameServerGroup" + "AWS::EKS::Nodegroup" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift (GameLift) GameServerGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html)" + "Resource schema for AWS::EKS::Nodegroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-nodegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-gameservergroup.json" + "$ref": "resources/aws-eks-nodegroup.json" } }, "required": [ @@ -9533,9 +9440,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_Environment": { + "AWS_NetworkManager_CustomerGatewayAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::DataZone::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environment.html)", + "markdownDescription": "The AWS::NetworkManager::CustomerGatewayAssociation type associates a customer gateway with a device and optionally, with a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html)", "allOf": [ { "type": "object", @@ -9543,14 +9450,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::Environment" + "AWS::NetworkManager::CustomerGatewayAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::DataZone::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environment.html)" + "The AWS::NetworkManager::CustomerGatewayAssociation type associates a customer gateway with a device and optionally, with a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-environment.json" + "$ref": "resources/aws-networkmanager-customergatewayassociation.json" } }, "required": [ @@ -9564,9 +9471,9 @@ ], "additionalProperties": false }, - "AWS_GroundStation_MissionProfile": { + "AWS_SES_MailManagerTrafficPolicy": { "type": "object", - "markdownDescription": "AWS Ground Station Mission Profile resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerTrafficPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagertrafficpolicy.html)", "allOf": [ { "type": "object", @@ -9574,14 +9481,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GroundStation::MissionProfile" + "AWS::SES::MailManagerTrafficPolicy" ], "markdownEnumDescriptions": [ - "AWS Ground Station Mission Profile resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html)" + "Definition of AWS::SES::MailManagerTrafficPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagertrafficpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-groundstation-missionprofile.json" + "$ref": "resources/aws-ses-mailmanagertrafficpolicy.json" } }, "required": [ @@ -9595,9 +9502,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_ConnectorDefinition": { + "AWS_EKS_FargateProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::ConnectorDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html)", + "markdownDescription": "Resource Schema for AWS::EKS::FargateProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html)", "allOf": [ { "type": "object", @@ -9605,14 +9512,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::ConnectorDefinition" + "AWS::EKS::FargateProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::ConnectorDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html)" + "Resource Schema for AWS::EKS::FargateProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-fargateprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-connectordefinition.json" + "$ref": "resources/aws-eks-fargateprofile.json" } }, "required": [ @@ -9626,9 +9533,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolRiskConfigurationAttachment": { + "AWS_DataBrew_Ruleset": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolRiskConfigurationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html)", + "markdownDescription": "Resource schema for AWS::DataBrew::Ruleset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-ruleset.html)", "allOf": [ { "type": "object", @@ -9636,14 +9543,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolRiskConfigurationAttachment" + "AWS::DataBrew::Ruleset" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolRiskConfigurationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolriskconfigurationattachment.html)" + "Resource schema for AWS::DataBrew::Ruleset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-ruleset.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpoolriskconfigurationattachment.json" + "$ref": "resources/aws-databrew-ruleset.json" } }, "required": [ @@ -9657,9 +9564,9 @@ ], "additionalProperties": false }, - "AWS_NetworkFirewall_LoggingConfiguration": { + "AWS_Glue_SchemaVersion": { "type": "object", - "markdownDescription": "Resource type definition for AWS::NetworkFirewall::LoggingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html)", + "markdownDescription": "This resource represents an individual schema version of a schema defined in Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversion.html)", "allOf": [ { "type": "object", @@ -9667,14 +9574,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkFirewall::LoggingConfiguration" + "AWS::Glue::SchemaVersion" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::NetworkFirewall::LoggingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html)" + "This resource represents an individual schema version of a schema defined in Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversion.html)" ] }, "Properties": { - "$ref": "resources/aws-networkfirewall-loggingconfiguration.json" + "$ref": "resources/aws-glue-schemaversion.json" } }, "required": [ @@ -9688,9 +9595,9 @@ ], "additionalProperties": false }, - "AWS_EC2_IPAM": { + "AWS_SecurityHub_PolicyAssociation": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EC2::IPAM Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipam.html)", + "markdownDescription": "The AWS::SecurityHub::PolicyAssociation resource represents the AWS Security Hub Central Configuration Policy associations in your Target. Only the AWS Security Hub delegated administrator can create the resouce from the home region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html)", "allOf": [ { "type": "object", @@ -9698,18 +9605,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::IPAM" + "AWS::SecurityHub::PolicyAssociation" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EC2::IPAM Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipam.html)" + "The AWS::SecurityHub::PolicyAssociation resource represents the AWS Security Hub Central Configuration Policy associations in your Target. Only the AWS Security Hub delegated administrator can create the resouce from the home region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ipam.json" + "$ref": "resources/aws-securityhub-policyassociation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -9718,9 +9626,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackageV2_Channel": { + "AWS_SecurityHub_ConfigurationPolicy": { "type": "object", - "markdownDescription": "

Represents an entry point into AWS Elemental MediaPackage for an ABR video content stream sent from an upstream encoder such as AWS Elemental MediaLive. The channel continuously analyzes the content that it receives and prepares it to be distributed to consumers via one or more origin endpoints.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html)", + "markdownDescription": "The AWS::SecurityHub::ConfigurationPolicy resource represents the Central Configuration Policy in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html)", "allOf": [ { "type": "object", @@ -9728,14 +9636,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackageV2::Channel" + "AWS::SecurityHub::ConfigurationPolicy" ], "markdownEnumDescriptions": [ - "

Represents an entry point into AWS Elemental MediaPackage for an ABR video content stream sent from an upstream encoder such as AWS Elemental MediaLive. The channel continuously analyzes the content that it receives and prepares it to be distributed to consumers via one or more origin endpoints.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html)" + "The AWS::SecurityHub::ConfigurationPolicy resource represents the Central Configuration Policy in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackagev2-channel.json" + "$ref": "resources/aws-securityhub-configurationpolicy.json" } }, "required": [ @@ -9749,9 +9657,9 @@ ], "additionalProperties": false }, - "AWS_SecurityLake_AwsLogSource": { + "AWS_ObservabilityAdmin_OrganizationTelemetryRule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SecurityLake::AwsLogSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html)", + "markdownDescription": "The AWS::ObservabilityAdmin::OrganizationTelemetryRule resource defines a CloudWatch Observability Admin Organization Telemetry Rule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationtelemetryrule.html)", "allOf": [ { "type": "object", @@ -9759,14 +9667,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityLake::AwsLogSource" + "AWS::ObservabilityAdmin::OrganizationTelemetryRule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SecurityLake::AwsLogSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html)" + "The AWS::ObservabilityAdmin::OrganizationTelemetryRule resource defines a CloudWatch Observability Admin Organization Telemetry Rule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-organizationtelemetryrule.html)" ] }, "Properties": { - "$ref": "resources/aws-securitylake-awslogsource.json" + "$ref": "resources/aws-observabilityadmin-organizationtelemetryrule.json" } }, "required": [ @@ -9780,9 +9688,9 @@ ], "additionalProperties": false }, - "AWS_LakeFormation_TagAssociation": { + "AWS_ServiceCatalog_LaunchNotificationConstraint": { "type": "object", - "markdownDescription": "A resource schema representing a Lake Formation Tag Association. While tag associations are not explicit Lake Formation resources, this CloudFormation resource can be used to associate tags with Lake Formation entities. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tagassociation.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::LaunchNotificationConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html)", "allOf": [ { "type": "object", @@ -9790,14 +9698,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LakeFormation::TagAssociation" + "AWS::ServiceCatalog::LaunchNotificationConstraint" ], "markdownEnumDescriptions": [ - "A resource schema representing a Lake Formation Tag Association. While tag associations are not explicit Lake Formation resources, this CloudFormation resource can be used to associate tags with Lake Formation entities. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tagassociation.html)" + "Resource Type definition for AWS::ServiceCatalog::LaunchNotificationConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html)" ] }, "Properties": { - "$ref": "resources/aws-lakeformation-tagassociation.json" + "$ref": "resources/aws-servicecatalog-launchnotificationconstraint.json" } }, "required": [ @@ -9811,9 +9719,9 @@ ], "additionalProperties": false }, - "AWS_CertificateManager_Certificate": { + "AWS_NotificationsContacts_EmailContact": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CertificateManager::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html)", + "markdownDescription": "Definition of AWS::NotificationsContacts::EmailContact Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notificationscontacts-emailcontact.html)", "allOf": [ { "type": "object", @@ -9821,14 +9729,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CertificateManager::Certificate" + "AWS::NotificationsContacts::EmailContact" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CertificateManager::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html)" + "Definition of AWS::NotificationsContacts::EmailContact Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notificationscontacts-emailcontact.html)" ] }, "Properties": { - "$ref": "resources/aws-certificatemanager-certificate.json" + "$ref": "resources/aws-notificationscontacts-emailcontact.json" } }, "required": [ @@ -9842,9 +9750,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_TransitGatewayRegistration": { + "AWS_CodePipeline_CustomActionType": { "type": "object", - "markdownDescription": "The AWS::NetworkManager::TransitGatewayRegistration type registers a transit gateway in your global network. The transit gateway can be in any AWS Region, but it must be owned by the same AWS account that owns the global network. You cannot register a transit gateway in more than one global network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayregistration.html)", + "markdownDescription": "The AWS::CodePipeline::CustomActionType resource creates a custom action for activities that aren't included in the CodePipeline default actions, such as running an internally developed build process or a test suite. You can use these custom actions in the stage of a pipeline. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html)", "allOf": [ { "type": "object", @@ -9852,14 +9760,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::TransitGatewayRegistration" + "AWS::CodePipeline::CustomActionType" ], "markdownEnumDescriptions": [ - "The AWS::NetworkManager::TransitGatewayRegistration type registers a transit gateway in your global network. The transit gateway can be in any AWS Region, but it must be owned by the same AWS account that owns the global network. You cannot register a transit gateway in more than one global network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayregistration.html)" + "The AWS::CodePipeline::CustomActionType resource creates a custom action for activities that aren't included in the CodePipeline default actions, such as running an internally developed build process or a test suite. You can use these custom actions in the stage of a pipeline. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-transitgatewayregistration.json" + "$ref": "resources/aws-codepipeline-customactiontype.json" } }, "required": [ @@ -9873,9 +9781,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationEFS": { + "AWS_Athena_NamedQuery": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationEFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html)", + "markdownDescription": "Resource schema for AWS::Athena::NamedQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html)", "allOf": [ { "type": "object", @@ -9883,14 +9791,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationEFS" + "AWS::Athena::NamedQuery" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationEFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html)" + "Resource schema for AWS::Athena::NamedQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationefs.json" + "$ref": "resources/aws-athena-namedquery.json" } }, "required": [ @@ -9904,9 +9812,9 @@ ], "additionalProperties": false }, - "AWS_S3_AccessGrantsLocation": { + "AWS_FIS_ExperimentTemplate": { "type": "object", - "markdownDescription": "The AWS::S3::AccessGrantsLocation resource is an Amazon S3 resource type hosted in an access grants instance which can be the target of S3 access grants. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantslocation.html)", + "markdownDescription": "Resource schema for AWS::FIS::ExperimentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-experimenttemplate.html)", "allOf": [ { "type": "object", @@ -9914,18 +9822,19 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::AccessGrantsLocation" + "AWS::FIS::ExperimentTemplate" ], "markdownEnumDescriptions": [ - "The AWS::S3::AccessGrantsLocation resource is an Amazon S3 resource type hosted in an access grants instance which can be the target of S3 access grants. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantslocation.html)" + "Resource schema for AWS::FIS::ExperimentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-experimenttemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-accessgrantslocation.json" + "$ref": "resources/aws-fis-experimenttemplate.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -9934,9 +9843,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorks_Instance": { + "AWS_MSK_Configuration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorks::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html)", + "markdownDescription": "Resource Type definition for AWS::MSK::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-configuration.html)", "allOf": [ { "type": "object", @@ -9944,14 +9853,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorks::Instance" + "AWS::MSK::Configuration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorks::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html)" + "Resource Type definition for AWS::MSK::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-configuration.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworks-instance.json" + "$ref": "resources/aws-msk-configuration.json" } }, "required": [ @@ -9965,9 +9874,9 @@ ], "additionalProperties": false }, - "AWS_CustomerProfiles_EventTrigger": { + "AWS_Proton_EnvironmentAccountConnection": { "type": "object", - "markdownDescription": "An event trigger resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventtrigger.html)", + "markdownDescription": "Resource Schema describing various properties for AWS Proton Environment Account Connections resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmentaccountconnection.html)", "allOf": [ { "type": "object", @@ -9975,19 +9884,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CustomerProfiles::EventTrigger" + "AWS::Proton::EnvironmentAccountConnection" ], "markdownEnumDescriptions": [ - "An event trigger resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventtrigger.html)" + "Resource Schema describing various properties for AWS Proton Environment Account Connections resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmentaccountconnection.html)" ] }, "Properties": { - "$ref": "resources/aws-customerprofiles-eventtrigger.json" + "$ref": "resources/aws-proton-environmentaccountconnection.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -9996,9 +9904,9 @@ ], "additionalProperties": false }, - "AWS_CustomerProfiles_Integration": { + "AWS_IoT_CACertificate": { "type": "object", - "markdownDescription": "The resource schema for creating an Amazon Connect Customer Profiles Integration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-integration.html)", + "markdownDescription": "Registers a CA Certificate in IoT. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html)", "allOf": [ { "type": "object", @@ -10006,14 +9914,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CustomerProfiles::Integration" + "AWS::IoT::CACertificate" ], "markdownEnumDescriptions": [ - "The resource schema for creating an Amazon Connect Customer Profiles Integration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-integration.html)" + "Registers a CA Certificate in IoT. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html)" ] }, "Properties": { - "$ref": "resources/aws-customerprofiles-integration.json" + "$ref": "resources/aws-iot-cacertificate.json" } }, "required": [ @@ -10027,9 +9935,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_ServiceNetwork": { + "AWS_B2BI_Profile": { "type": "object", - "markdownDescription": "A service network is a logical boundary for a collection of services. You can associate services and VPCs with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html)", + "markdownDescription": "Definition of AWS::B2BI::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-profile.html)", "allOf": [ { "type": "object", @@ -10037,18 +9945,19 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::ServiceNetwork" + "AWS::B2BI::Profile" ], "markdownEnumDescriptions": [ - "A service network is a logical boundary for a collection of services. You can associate services and VPCs with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html)" + "Definition of AWS::B2BI::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-profile.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-servicenetwork.json" + "$ref": "resources/aws-b2bi-profile.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -10057,9 +9966,9 @@ ], "additionalProperties": false }, - "AWS_IAM_VirtualMFADevice": { + "AWS_SageMaker_NotebookInstanceLifecycleConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IAM::VirtualMFADevice \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::NotebookInstanceLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html)", "allOf": [ { "type": "object", @@ -10067,19 +9976,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::VirtualMFADevice" + "AWS::SageMaker::NotebookInstanceLifecycleConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IAM::VirtualMFADevice \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-virtualmfadevice.html)" + "Resource Type definition for AWS::SageMaker::NotebookInstanceLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-virtualmfadevice.json" + "$ref": "resources/aws-sagemaker-notebookinstancelifecycleconfig.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -10088,9 +9996,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolUICustomizationAttachment": { + "AWS_NetworkManager_TransitGatewayRouteTableAttachment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolUICustomizationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html)", + "markdownDescription": "AWS::NetworkManager::TransitGatewayRouteTableAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayroutetableattachment.html)", "allOf": [ { "type": "object", @@ -10098,14 +10006,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolUICustomizationAttachment" + "AWS::NetworkManager::TransitGatewayRouteTableAttachment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolUICustomizationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html)" + "AWS::NetworkManager::TransitGatewayRouteTableAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayroutetableattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpooluicustomizationattachment.json" + "$ref": "resources/aws-networkmanager-transitgatewayroutetableattachment.json" } }, "required": [ @@ -10119,9 +10027,9 @@ ], "additionalProperties": false }, - "AWS_EntityResolution_MatchingWorkflow": { + "AWS_IoTAnalytics_Channel": { "type": "object", - "markdownDescription": "MatchingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-matchingworkflow.html)", + "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html)", "allOf": [ { "type": "object", @@ -10129,19 +10037,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EntityResolution::MatchingWorkflow" + "AWS::IoTAnalytics::Channel" ], "markdownEnumDescriptions": [ - "MatchingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-matchingworkflow.html)" + "Resource Type definition for AWS::IoTAnalytics::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html)" ] }, "Properties": { - "$ref": "resources/aws-entityresolution-matchingworkflow.json" + "$ref": "resources/aws-iotanalytics-channel.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -10150,9 +10057,9 @@ ], "additionalProperties": false }, - "AWS_AppConfig_Application": { + "AWS_EC2_EgressOnlyInternetGateway": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppConfig::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-application.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::EgressOnlyInternetGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html)", "allOf": [ { "type": "object", @@ -10160,14 +10067,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppConfig::Application" + "AWS::EC2::EgressOnlyInternetGateway" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppConfig::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-application.html)" + "Resource Type definition for AWS::EC2::EgressOnlyInternetGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html)" ] }, "Properties": { - "$ref": "resources/aws-appconfig-application.json" + "$ref": "resources/aws-ec2-egressonlyinternetgateway.json" } }, "required": [ @@ -10212,9 +10119,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_PrivacyBudgetTemplate": { + "AWS_Lightsail_LoadBalancerTlsCertificate": { "type": "object", - "markdownDescription": "Represents a privacy budget within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-privacybudgettemplate.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::LoadBalancerTlsCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancertlscertificate.html)", "allOf": [ { "type": "object", @@ -10222,14 +10129,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::PrivacyBudgetTemplate" + "AWS::Lightsail::LoadBalancerTlsCertificate" ], "markdownEnumDescriptions": [ - "Represents a privacy budget within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-privacybudgettemplate.html)" + "Resource Type definition for AWS::Lightsail::LoadBalancerTlsCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancertlscertificate.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-privacybudgettemplate.json" + "$ref": "resources/aws-lightsail-loadbalancertlscertificate.json" } }, "required": [ @@ -10243,9 +10150,9 @@ ], "additionalProperties": false }, - "AWS_DocDB_DBCluster": { + "AWS_EC2_NetworkInsightsAccessScope": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DocDB::DBCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html)", + "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsAccessScope \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscope.html)", "allOf": [ { "type": "object", @@ -10253,14 +10160,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DocDB::DBCluster" + "AWS::EC2::NetworkInsightsAccessScope" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DocDB::DBCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbcluster.html)" + "Resource schema for AWS::EC2::NetworkInsightsAccessScope \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscope.html)" ] }, "Properties": { - "$ref": "resources/aws-docdb-dbcluster.json" + "$ref": "resources/aws-ec2-networkinsightsaccessscope.json" } }, "required": [ @@ -10273,9 +10180,9 @@ ], "additionalProperties": false }, - "AWS_AppRunner_Service": { + "AWS_EC2_ClientVpnAuthorizationRule": { "type": "object", - "markdownDescription": "The AWS::AppRunner::Service resource specifies an AppRunner Service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-service.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnAuthorizationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html)", "allOf": [ { "type": "object", @@ -10283,14 +10190,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppRunner::Service" + "AWS::EC2::ClientVpnAuthorizationRule" ], "markdownEnumDescriptions": [ - "The AWS::AppRunner::Service resource specifies an AppRunner Service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-service.html)" + "Resource Type definition for AWS::EC2::ClientVpnAuthorizationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html)" ] }, "Properties": { - "$ref": "resources/aws-apprunner-service.json" + "$ref": "resources/aws-ec2-clientvpnauthorizationrule.json" } }, "required": [ @@ -10304,9 +10211,9 @@ ], "additionalProperties": false }, - "AWS_Glue_DevEndpoint": { + "AWS_OpenSearchServerless_Collection": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::DevEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html)", + "markdownDescription": "Amazon OpenSearchServerless collection resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-collection.html)", "allOf": [ { "type": "object", @@ -10314,14 +10221,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::DevEndpoint" + "AWS::OpenSearchServerless::Collection" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::DevEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html)" + "Amazon OpenSearchServerless collection resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-collection.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-devendpoint.json" + "$ref": "resources/aws-opensearchserverless-collection.json" } }, "required": [ @@ -10335,9 +10242,9 @@ ], "additionalProperties": false }, - "AWS_KinesisAnalyticsV2_Application": { + "AWS_IoTWireless_NetworkAnalyzerConfiguration": { "type": "object", - "markdownDescription": "Creates an Amazon Kinesis Data Analytics application. For information about creating a Kinesis Data Analytics application, see [Creating an Application](https://docs.aws.amazon.com/kinesisanalytics/latest/java/getting-started.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html)", + "markdownDescription": "Create and manage NetworkAnalyzerConfiguration resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-networkanalyzerconfiguration.html)", "allOf": [ { "type": "object", @@ -10345,14 +10252,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisAnalyticsV2::Application" + "AWS::IoTWireless::NetworkAnalyzerConfiguration" ], "markdownEnumDescriptions": [ - "Creates an Amazon Kinesis Data Analytics application. For information about creating a Kinesis Data Analytics application, see [Creating an Application](https://docs.aws.amazon.com/kinesisanalytics/latest/java/getting-started.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html)" + "Create and manage NetworkAnalyzerConfiguration resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-networkanalyzerconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisanalyticsv2-application.json" + "$ref": "resources/aws-iotwireless-networkanalyzerconfiguration.json" } }, "required": [ @@ -10366,9 +10273,9 @@ ], "additionalProperties": false }, - "AWS_KafkaConnect_Connector": { + "AWS_Glue_CustomEntityType": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KafkaConnect::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-connector.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::CustomEntityType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-customentitytype.html)", "allOf": [ { "type": "object", @@ -10376,19 +10283,18 @@ "Type": { "type": "string", "enum": [ - "AWS::KafkaConnect::Connector" + "AWS::Glue::CustomEntityType" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KafkaConnect::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-connector.html)" + "Resource Type definition for AWS::Glue::CustomEntityType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-customentitytype.html)" ] }, "Properties": { - "$ref": "resources/aws-kafkaconnect-connector.json" + "$ref": "resources/aws-glue-customentitytype.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -10397,9 +10303,9 @@ ], "additionalProperties": false }, - "AWS_Batch_ConsumableResource": { + "AWS_WAFRegional_WebACL": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Batch::ConsumableResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-consumableresource.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html)", "allOf": [ { "type": "object", @@ -10407,14 +10313,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Batch::ConsumableResource" + "AWS::WAFRegional::WebACL" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Batch::ConsumableResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-consumableresource.html)" + "Resource Type definition for AWS::WAFRegional::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html)" ] }, "Properties": { - "$ref": "resources/aws-batch-consumableresource.json" + "$ref": "resources/aws-wafregional-webacl.json" } }, "required": [ @@ -10428,9 +10334,9 @@ ], "additionalProperties": false }, - "AWS_BillingConductor_PricingPlan": { + "AWS_ResourceGroups_TagSyncTask": { "type": "object", - "markdownDescription": "Pricing Plan enables you to customize your billing details consistent with the usage that accrues in each of your billing groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html)", + "markdownDescription": "Schema for ResourceGroups::TagSyncTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-tagsynctask.html)", "allOf": [ { "type": "object", @@ -10438,14 +10344,14 @@ "Type": { "type": "string", "enum": [ - "AWS::BillingConductor::PricingPlan" + "AWS::ResourceGroups::TagSyncTask" ], "markdownEnumDescriptions": [ - "Pricing Plan enables you to customize your billing details consistent with the usage that accrues in each of your billing groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html)" + "Schema for ResourceGroups::TagSyncTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-tagsynctask.html)" ] }, "Properties": { - "$ref": "resources/aws-billingconductor-pricingplan.json" + "$ref": "resources/aws-resourcegroups-tagsynctask.json" } }, "required": [ @@ -10459,9 +10365,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_WaitConditionHandle": { + "AWS_MediaConnect_Flow": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudFormation::WaitConditionHandle \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::Flow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html)", "allOf": [ { "type": "object", @@ -10469,18 +10375,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::WaitConditionHandle" + "AWS::MediaConnect::Flow" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudFormation::WaitConditionHandle \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html)" + "Resource schema for AWS::MediaConnect::Flow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-waitconditionhandle.json" + "$ref": "resources/aws-mediaconnect-flow.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -10489,9 +10396,9 @@ ], "additionalProperties": false }, - "AWS_IoTTwinMaker_Entity": { + "AWS_CloudFront_DistributionTenant": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTTwinMaker::Entity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-entity.html)", + "markdownDescription": "The distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distributiontenant.html)", "allOf": [ { "type": "object", @@ -10499,14 +10406,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTTwinMaker::Entity" + "AWS::CloudFront::DistributionTenant" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTTwinMaker::Entity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-entity.html)" + "The distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distributiontenant.html)" ] }, "Properties": { - "$ref": "resources/aws-iottwinmaker-entity.json" + "$ref": "resources/aws-cloudfront-distributiontenant.json" } }, "required": [ @@ -10520,9 +10427,9 @@ ], "additionalProperties": false }, - "AWS_BillingConductor_CustomLineItem": { + "AWS_ObservabilityAdmin_TelemetryRule": { "type": "object", - "markdownDescription": "A custom line item is an one time charge that is applied to a specific billing group's bill. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html)", + "markdownDescription": "The AWS::ObservabilityAdmin::TelemetryRule resource defines a CloudWatch Observability Admin Telemetry Rule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-telemetryrule.html)", "allOf": [ { "type": "object", @@ -10530,14 +10437,14 @@ "Type": { "type": "string", "enum": [ - "AWS::BillingConductor::CustomLineItem" + "AWS::ObservabilityAdmin::TelemetryRule" ], "markdownEnumDescriptions": [ - "A custom line item is an one time charge that is applied to a specific billing group's bill. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html)" + "The AWS::ObservabilityAdmin::TelemetryRule resource defines a CloudWatch Observability Admin Telemetry Rule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-observabilityadmin-telemetryrule.html)" ] }, "Properties": { - "$ref": "resources/aws-billingconductor-customlineitem.json" + "$ref": "resources/aws-observabilityadmin-telemetryrule.json" } }, "required": [ @@ -10551,9 +10458,9 @@ ], "additionalProperties": false }, - "AWS_Logs_DeliverySource": { + "AWS_AutoScaling_LaunchConfiguration": { "type": "object", - "markdownDescription": " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverysource.html)", + "markdownDescription": "The AWS::AutoScaling::LaunchConfiguration resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-launchconfiguration.html)", "allOf": [ { "type": "object", @@ -10561,14 +10468,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::DeliverySource" + "AWS::AutoScaling::LaunchConfiguration" ], "markdownEnumDescriptions": [ - " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverysource.html)" + "The AWS::AutoScaling::LaunchConfiguration resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-launchconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-deliverysource.json" + "$ref": "resources/aws-autoscaling-launchconfiguration.json" } }, "required": [ @@ -10582,9 +10489,9 @@ ], "additionalProperties": false }, - "AWS_S3Express_BucketPolicy": { + "AWS_EC2_VPCBlockPublicAccessExclusion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::S3Express::BucketPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-bucketpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCBlockPublicAccessExclusion. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessexclusion.html)", "allOf": [ { "type": "object", @@ -10592,14 +10499,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Express::BucketPolicy" + "AWS::EC2::VPCBlockPublicAccessExclusion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::S3Express::BucketPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-bucketpolicy.html)" + "Resource Type definition for AWS::EC2::VPCBlockPublicAccessExclusion. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessexclusion.html)" ] }, "Properties": { - "$ref": "resources/aws-s3express-bucketpolicy.json" + "$ref": "resources/aws-ec2-vpcblockpublicaccessexclusion.json" } }, "required": [ @@ -10613,9 +10520,9 @@ ], "additionalProperties": false }, - "AWS_ElasticBeanstalk_ConfigurationTemplate": { + "AWS_ElasticLoadBalancingV2_LoadBalancer": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElasticBeanstalk::ConfigurationTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html)", + "markdownDescription": "Specifies an Application Load Balancer, a Network Load Balancer, or a Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html)", "allOf": [ { "type": "object", @@ -10623,19 +10530,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticBeanstalk::ConfigurationTemplate" + "AWS::ElasticLoadBalancingV2::LoadBalancer" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElasticBeanstalk::ConfigurationTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html)" + "Specifies an Application Load Balancer, a Network Load Balancer, or a Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticbeanstalk-configurationtemplate.json" + "$ref": "resources/aws-elasticloadbalancingv2-loadbalancer.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -10644,9 +10550,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_Farm": { + "AWS_DataZone_ProjectProfile": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::Farm Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-farm.html)", + "markdownDescription": "Definition of AWS::DataZone::ProjectProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectprofile.html)", "allOf": [ { "type": "object", @@ -10654,14 +10560,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::Farm" + "AWS::DataZone::ProjectProfile" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::Farm Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-farm.html)" + "Definition of AWS::DataZone::ProjectProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-farm.json" + "$ref": "resources/aws-datazone-projectprofile.json" } }, "required": [ @@ -10675,9 +10581,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpaces_WorkspacesPool": { + "AWS_EC2_TransitGatewayMulticastGroupMember": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WorkSpaces::WorkspacesPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html)", + "markdownDescription": "The AWS::EC2::TransitGatewayMulticastGroupMember registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html)", "allOf": [ { "type": "object", @@ -10685,14 +10591,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpaces::WorkspacesPool" + "AWS::EC2::TransitGatewayMulticastGroupMember" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WorkSpaces::WorkspacesPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html)" + "The AWS::EC2::TransitGatewayMulticastGroupMember registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html)" ] }, "Properties": { - "$ref": "resources/aws-workspaces-workspacespool.json" + "$ref": "resources/aws-ec2-transitgatewaymulticastgroupmember.json" } }, "required": [ @@ -10706,9 +10612,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_ResolverQueryLoggingConfig": { + "AWS_Greengrass_LoggerDefinition": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::LoggerDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html)", "allOf": [ { "type": "object", @@ -10716,18 +10622,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::ResolverQueryLoggingConfig" + "AWS::Greengrass::LoggerDefinition" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html)" + "Resource Type definition for AWS::Greengrass::LoggerDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-resolverqueryloggingconfig.json" + "$ref": "resources/aws-greengrass-loggerdefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -10736,9 +10643,9 @@ ], "additionalProperties": false }, - "AWS_SSO_Assignment": { + "AWS_SSMContacts_Rotation": { "type": "object", - "markdownDescription": "Resource Type definition for SSO assignmet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html)", + "markdownDescription": "Resource Type definition for AWS::SSMContacts::Rotation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-rotation.html)", "allOf": [ { "type": "object", @@ -10746,14 +10653,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSO::Assignment" + "AWS::SSMContacts::Rotation" ], "markdownEnumDescriptions": [ - "Resource Type definition for SSO assignmet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html)" + "Resource Type definition for AWS::SSMContacts::Rotation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-rotation.html)" ] }, "Properties": { - "$ref": "resources/aws-sso-assignment.json" + "$ref": "resources/aws-ssmcontacts-rotation.json" } }, "required": [ @@ -10767,9 +10674,9 @@ ], "additionalProperties": false }, - "AWS_AutoScaling_ScheduledAction": { + "AWS_SageMaker_Workteam": { "type": "object", - "markdownDescription": "The AWS::AutoScaling::ScheduledAction resource specifies an Amazon EC2 Auto Scaling scheduled action so that the Auto Scaling group can change the number of instances available for your application in response to predictable load changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Workteam \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html)", "allOf": [ { "type": "object", @@ -10777,19 +10684,18 @@ "Type": { "type": "string", "enum": [ - "AWS::AutoScaling::ScheduledAction" + "AWS::SageMaker::Workteam" ], "markdownEnumDescriptions": [ - "The AWS::AutoScaling::ScheduledAction resource specifies an Amazon EC2 Auto Scaling scheduled action so that the Auto Scaling group can change the number of instances available for your application in response to predictable load changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html)" + "Resource Type definition for AWS::SageMaker::Workteam \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html)" ] }, "Properties": { - "$ref": "resources/aws-autoscaling-scheduledaction.json" + "$ref": "resources/aws-sagemaker-workteam.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -10798,9 +10704,9 @@ ], "additionalProperties": false }, - "AWS_EMR_WALWorkspace": { + "AWS_DynamoDB_Table": { "type": "object", - "markdownDescription": "Resource schema for AWS::EMR::WALWorkspace Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-walworkspace.html)", + "markdownDescription": "The ``AWS::DynamoDB::Table`` resource creates a DDB table. For more information, see [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html) in the *API Reference*.\n You should be aware of the following behaviors when working with DDB tables:\n + CFNlong typically creates DDB tables in parallel. However, if your template includes multiple DDB tables with indexes, you must declare dependencies so that the tables are created sequentially. DDBlong limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute).\n \n Our guidance is to use the latest schema documented for your CFNlong templates. This schema supports the provisioning of all table settings below. When using this schema in your CFNlong templates, please ensure that your Identity and Access Management (IAM) policies are updated with appropriate permissions to allow for the authorization of these setting changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html)", "allOf": [ { "type": "object", @@ -10808,18 +10714,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::WALWorkspace" + "AWS::DynamoDB::Table" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EMR::WALWorkspace Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-walworkspace.html)" + "The ``AWS::DynamoDB::Table`` resource creates a DDB table. For more information, see [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html) in the *API Reference*.\n You should be aware of the following behaviors when working with DDB tables:\n + CFNlong typically creates DDB tables in parallel. However, if your template includes multiple DDB tables with indexes, you must declare dependencies so that the tables are created sequentially. DDBlong limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute).\n \n Our guidance is to use the latest schema documented for your CFNlong templates. This schema supports the provisioning of all table settings below. When using this schema in your CFNlong templates, please ensure that your Identity and Access Management (IAM) policies are updated with appropriate permissions to allow for the authorization of these setting changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-walworkspace.json" + "$ref": "resources/aws-dynamodb-table.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -10828,9 +10735,9 @@ ], "additionalProperties": false }, - "AWS_EMR_SecurityConfiguration": { + "AWS_S3Outposts_Endpoint": { "type": "object", - "markdownDescription": "Use a SecurityConfiguration resource to configure data encryption, Kerberos authentication, and Amazon S3 authorization for EMRFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html)", + "markdownDescription": "Resource Type Definition for AWS::S3Outposts::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html)", "allOf": [ { "type": "object", @@ -10838,14 +10745,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::SecurityConfiguration" + "AWS::S3Outposts::Endpoint" ], "markdownEnumDescriptions": [ - "Use a SecurityConfiguration resource to configure data encryption, Kerberos authentication, and Amazon S3 authorization for EMRFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html)" + "Resource Type Definition for AWS::S3Outposts::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-securityconfiguration.json" + "$ref": "resources/aws-s3outposts-endpoint.json" } }, "required": [ @@ -10859,9 +10766,9 @@ ], "additionalProperties": false }, - "AWS_FraudDetector_Detector": { + "AWS_Lex_ResourcePolicy": { "type": "object", - "markdownDescription": "A resource schema for a Detector in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-detector.html)", + "markdownDescription": "A resource policy with specified policy statements that attaches to a Lex bot or bot alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -10869,14 +10776,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FraudDetector::Detector" + "AWS::Lex::ResourcePolicy" ], "markdownEnumDescriptions": [ - "A resource schema for a Detector in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-detector.html)" + "A resource policy with specified policy statements that attaches to a Lex bot or bot alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-frauddetector-detector.json" + "$ref": "resources/aws-lex-resourcepolicy.json" } }, "required": [ @@ -10890,9 +10797,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkInsightsAnalysis": { + "AWS_AmazonMQ_Broker": { "type": "object", - "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html)", + "markdownDescription": "Resource Type definition for AWS::AmazonMQ::Broker \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html)", "allOf": [ { "type": "object", @@ -10900,14 +10807,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkInsightsAnalysis" + "AWS::AmazonMQ::Broker" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EC2::NetworkInsightsAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html)" + "Resource Type definition for AWS::AmazonMQ::Broker \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-broker.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkinsightsanalysis.json" + "$ref": "resources/aws-amazonmq-broker.json" } }, "required": [ @@ -10921,9 +10828,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Domain": { + "AWS_QuickSight_Folder": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html)", + "markdownDescription": "Definition of the AWS::QuickSight::Folder Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-folder.html)", "allOf": [ { "type": "object", @@ -10931,19 +10838,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Domain" + "AWS::QuickSight::Folder" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-domain.html)" + "Definition of the AWS::QuickSight::Folder Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-folder.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-domain.json" + "$ref": "resources/aws-quicksight-folder.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -10952,9 +10858,9 @@ ], "additionalProperties": false }, - "AWS_MemoryDB_SubnetGroup": { + "AWS_CloudFormation_ResourceVersion": { "type": "object", - "markdownDescription": "The AWS::MemoryDB::SubnetGroup resource creates an Amazon MemoryDB Subnet Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-subnetgroup.html)", + "markdownDescription": "A resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html)", "allOf": [ { "type": "object", @@ -10962,14 +10868,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MemoryDB::SubnetGroup" + "AWS::CloudFormation::ResourceVersion" ], "markdownEnumDescriptions": [ - "The AWS::MemoryDB::SubnetGroup resource creates an Amazon MemoryDB Subnet Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-subnetgroup.html)" + "A resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html)" ] }, "Properties": { - "$ref": "resources/aws-memorydb-subnetgroup.json" + "$ref": "resources/aws-cloudformation-resourceversion.json" } }, "required": [ @@ -10983,9 +10889,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_FuotaTask": { + "AWS_Lightsail_Disk": { "type": "object", - "markdownDescription": "Create and manage FUOTA tasks. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-fuotatask.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Disk \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-disk.html)", "allOf": [ { "type": "object", @@ -10993,14 +10899,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::FuotaTask" + "AWS::Lightsail::Disk" ], "markdownEnumDescriptions": [ - "Create and manage FUOTA tasks. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-fuotatask.html)" + "Resource Type definition for AWS::Lightsail::Disk \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-disk.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-fuotatask.json" + "$ref": "resources/aws-lightsail-disk.json" } }, "required": [ @@ -11014,9 +10920,9 @@ ], "additionalProperties": false }, - "AWS_EC2_Instance": { + "AWS_Lightsail_LoadBalancer": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancer.html)", "allOf": [ { "type": "object", @@ -11024,18 +10930,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::Instance" + "AWS::Lightsail::LoadBalancer" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html)" + "Resource Type definition for AWS::Lightsail::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancer.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-instance.json" + "$ref": "resources/aws-lightsail-loadbalancer.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11044,9 +10951,9 @@ ], "additionalProperties": false }, - "AWS_WAFv2_IPSet": { + "AWS_DataSync_LocationAzureBlob": { "type": "object", - "markdownDescription": "Contains a list of IP addresses. This can be either IPV4 or IPV6. The list will be mutually \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html)", + "markdownDescription": "Resource Type definition for AWS::DataSync::LocationAzureBlob. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html)", "allOf": [ { "type": "object", @@ -11054,14 +10961,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFv2::IPSet" + "AWS::DataSync::LocationAzureBlob" ], "markdownEnumDescriptions": [ - "Contains a list of IP addresses. This can be either IPV4 or IPV6. The list will be mutually \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html)" + "Resource Type definition for AWS::DataSync::LocationAzureBlob. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html)" ] }, "Properties": { - "$ref": "resources/aws-wafv2-ipset.json" + "$ref": "resources/aws-datasync-locationazureblob.json" } }, "required": [ @@ -11075,9 +10982,9 @@ ], "additionalProperties": false }, - "AWS_EVS_Environment": { + "AWS_WorkSpacesWeb_UserSettings": { "type": "object", - "markdownDescription": "An environment created within the EVS service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::UserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html)", "allOf": [ { "type": "object", @@ -11085,14 +10992,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EVS::Environment" + "AWS::WorkSpacesWeb::UserSettings" ], "markdownEnumDescriptions": [ - "An environment created within the EVS service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html)" + "Definition of AWS::WorkSpacesWeb::UserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-usersettings.html)" ] }, "Properties": { - "$ref": "resources/aws-evs-environment.json" + "$ref": "resources/aws-workspacesweb-usersettings.json" } }, "required": [ @@ -11106,9 +11013,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_Stack": { + "AWS_NetworkManager_ConnectAttachment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html)", + "markdownDescription": "AWS::NetworkManager::ConnectAttachment Resource Type Definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectattachment.html)", "allOf": [ { "type": "object", @@ -11116,18 +11023,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::Stack" + "AWS::NetworkManager::ConnectAttachment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html)" + "AWS::NetworkManager::ConnectAttachment Resource Type Definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-stack.json" + "$ref": "resources/aws-networkmanager-connectattachment.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11136,9 +11044,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_ApiKey": { + "AWS_CodeBuild_Project": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::ApiKey`` resource creates a unique key that you can distribute to clients who are executing API Gateway ``Method`` resources that require an API key. To specify which API key clients must use, map the API key with the ``RestApi`` and ``Stage`` resources that include the methods that require a key. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html)", + "markdownDescription": "Resource Type definition for AWS::CodeBuild::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html)", "allOf": [ { "type": "object", @@ -11146,18 +11054,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::ApiKey" + "AWS::CodeBuild::Project" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::ApiKey`` resource creates a unique key that you can distribute to clients who are executing API Gateway ``Method`` resources that require an API key. To specify which API key clients must use, map the API key with the ``RestApi`` and ``Stage`` resources that include the methods that require a key. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html)" + "Resource Type definition for AWS::CodeBuild::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-apikey.json" + "$ref": "resources/aws-codebuild-project.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11166,9 +11075,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Model": { + "AWS_Cognito_UserPoolUser": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Model \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolUser \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html)", "allOf": [ { "type": "object", @@ -11176,18 +11085,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Model" + "AWS::Cognito::UserPoolUser" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Model \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html)" + "Resource Type definition for AWS::Cognito::UserPoolUser \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-model.json" + "$ref": "resources/aws-cognito-userpooluser.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11196,9 +11106,9 @@ ], "additionalProperties": false }, - "AWS_Location_RouteCalculator": { + "AWS_AppConfig_Application": { "type": "object", - "markdownDescription": "Definition of AWS::Location::RouteCalculator Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-routecalculator.html)", + "markdownDescription": "Resource Type definition for AWS::AppConfig::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-application.html)", "allOf": [ { "type": "object", @@ -11206,14 +11116,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Location::RouteCalculator" + "AWS::AppConfig::Application" ], "markdownEnumDescriptions": [ - "Definition of AWS::Location::RouteCalculator Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-routecalculator.html)" + "Resource Type definition for AWS::AppConfig::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-application.html)" ] }, "Properties": { - "$ref": "resources/aws-location-routecalculator.json" + "$ref": "resources/aws-appconfig-application.json" } }, "required": [ @@ -11227,9 +11137,9 @@ ], "additionalProperties": false }, - "AWS_Notifications_ManagedNotificationAccountContactAssociation": { + "AWS_EC2_TransitGatewayRouteTableAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for ManagedNotificationAccountContactAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationaccountcontactassociation.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html)", "allOf": [ { "type": "object", @@ -11237,14 +11147,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Notifications::ManagedNotificationAccountContactAssociation" + "AWS::EC2::TransitGatewayRouteTableAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for ManagedNotificationAccountContactAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationaccountcontactassociation.html)" + "Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-notifications-managednotificationaccountcontactassociation.json" + "$ref": "resources/aws-ec2-transitgatewayroutetableassociation.json" } }, "required": [ @@ -11258,9 +11168,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBCluster": { + "AWS_OpenSearchServerless_AccessPolicy": { "type": "object", - "markdownDescription": "The ``AWS::RDS::DBCluster`` resource creates an Amazon Aurora DB cluster or Multi-AZ DB cluster.\n For more information about creating an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n For more information about creating a Multi-AZ DB cluster, see [Creating a Multi-AZ DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html) in the *Amazon RDS User Guide*.\n You can only create this resource in AWS Regions where Amazon Aurora or Multi-AZ DB clusters are supported.\n *Updating DB clusters* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB cluster, then changes references from other dependent resources to point to the replacement DB cluster, and finally deletes the old DB cluster.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB cluster. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB cluster so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB cluster. For more information, see [Creating a DB cluster snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_CreateSnapshotCluster.html).\n 1. If you want to restore your DB cluster using a DB cluster snapshot, modify the updated template with your DB cluster changes and add the ``SnapshotIdentifier`` property with the ID of the DB cluster snapshot that you want to use.\n After you restore a DB cluster with a ``SnapshotIdentifier`` property, you must specify the same ``SnapshotIdentifier`` property for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the DB cluster snapshot again, and the data in the database is not changed. However, if you don't specify the ``SnapshotIdentifier`` property, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB cluster is restored from the specified ``SnapshotIdentifier`` property, and the original DB cluster is deleted.\n 1. Update the stack.\n \n Currently, when you are updating the stack for an Aurora Serverless DB cluster, you can't include changes to any other properties when you specify one of the following properties: ``PreferredBackupWindow``, ``PreferredMaintenanceWindow``, and ``Port``. This limitation doesn't apply to provisioned DB clusters.\n For more information about updating other properties of this resource, see ``ModifyDBCluster``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB clusters* \n The default ``DeletionPolicy`` for ``AWS::RDS::DBCluster`` resources is ``Snapshot``. For more information about how AWS CloudFormation deletes resources, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html)", + "markdownDescription": "Amazon OpenSearchServerless access policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-accesspolicy.html)", "allOf": [ { "type": "object", @@ -11268,18 +11178,19 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBCluster" + "AWS::OpenSearchServerless::AccessPolicy" ], "markdownEnumDescriptions": [ - "The ``AWS::RDS::DBCluster`` resource creates an Amazon Aurora DB cluster or Multi-AZ DB cluster.\n For more information about creating an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n For more information about creating a Multi-AZ DB cluster, see [Creating a Multi-AZ DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html) in the *Amazon RDS User Guide*.\n You can only create this resource in AWS Regions where Amazon Aurora or Multi-AZ DB clusters are supported.\n *Updating DB clusters* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB cluster, then changes references from other dependent resources to point to the replacement DB cluster, and finally deletes the old DB cluster.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB cluster. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB cluster so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB cluster. For more information, see [Creating a DB cluster snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_CreateSnapshotCluster.html).\n 1. If you want to restore your DB cluster using a DB cluster snapshot, modify the updated template with your DB cluster changes and add the ``SnapshotIdentifier`` property with the ID of the DB cluster snapshot that you want to use.\n After you restore a DB cluster with a ``SnapshotIdentifier`` property, you must specify the same ``SnapshotIdentifier`` property for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the DB cluster snapshot again, and the data in the database is not changed. However, if you don't specify the ``SnapshotIdentifier`` property, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB cluster is restored from the specified ``SnapshotIdentifier`` property, and the original DB cluster is deleted.\n 1. Update the stack.\n \n Currently, when you are updating the stack for an Aurora Serverless DB cluster, you can't include changes to any other properties when you specify one of the following properties: ``PreferredBackupWindow``, ``PreferredMaintenanceWindow``, and ``Port``. This limitation doesn't apply to provisioned DB clusters.\n For more information about updating other properties of this resource, see ``ModifyDBCluster``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB clusters* \n The default ``DeletionPolicy`` for ``AWS::RDS::DBCluster`` resources is ``Snapshot``. For more information about how AWS CloudFormation deletes resources, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html)" + "Amazon OpenSearchServerless access policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-accesspolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbcluster.json" + "$ref": "resources/aws-opensearchserverless-accesspolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11288,9 +11199,9 @@ ], "additionalProperties": false }, - "AWS_AppRunner_VpcIngressConnection": { + "AWS_WorkSpacesWeb_TrustStore": { "type": "object", - "markdownDescription": "The AWS::AppRunner::VpcIngressConnection resource is an App Runner resource that specifies an App Runner VpcIngressConnection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcingressconnection.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::TrustStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html)", "allOf": [ { "type": "object", @@ -11298,14 +11209,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppRunner::VpcIngressConnection" + "AWS::WorkSpacesWeb::TrustStore" ], "markdownEnumDescriptions": [ - "The AWS::AppRunner::VpcIngressConnection resource is an App Runner resource that specifies an App Runner VpcIngressConnection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcingressconnection.html)" + "Definition of AWS::WorkSpacesWeb::TrustStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html)" ] }, "Properties": { - "$ref": "resources/aws-apprunner-vpcingressconnection.json" + "$ref": "resources/aws-workspacesweb-truststore.json" } }, "required": [ @@ -11319,9 +11230,9 @@ ], "additionalProperties": false }, - "AWS_VerifiedPermissions_PolicyTemplate": { + "AWS_CustomerProfiles_EventStream": { "type": "object", - "markdownDescription": "Definition of AWS::VerifiedPermissions::PolicyTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policytemplate.html)", + "markdownDescription": "An Event Stream resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html)", "allOf": [ { "type": "object", @@ -11329,14 +11240,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VerifiedPermissions::PolicyTemplate" + "AWS::CustomerProfiles::EventStream" ], "markdownEnumDescriptions": [ - "Definition of AWS::VerifiedPermissions::PolicyTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policytemplate.html)" + "An Event Stream resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html)" ] }, "Properties": { - "$ref": "resources/aws-verifiedpermissions-policytemplate.json" + "$ref": "resources/aws-customerprofiles-eventstream.json" } }, "required": [ @@ -11350,9 +11261,9 @@ ], "additionalProperties": false }, - "AWS_IoT_Thing": { + "AWS_SQS_QueueInlinePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::Thing \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html)", + "markdownDescription": "Schema for SQS QueueInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queueinlinepolicy.html)", "allOf": [ { "type": "object", @@ -11360,18 +11271,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::Thing" + "AWS::SQS::QueueInlinePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::Thing \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html)" + "Schema for SQS QueueInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queueinlinepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-thing.json" + "$ref": "resources/aws-sqs-queueinlinepolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11380,9 +11292,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SecurityGroupEgress": { + "AWS_EC2_VPCGatewayAttachment": { "type": "object", - "markdownDescription": "Adds the specified outbound (egress) rule to a security group.\n An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 address range, the IP addresses that are specified by a prefix list, or the instances that are associated with a destination security group. For more information, see [Security group rules](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html).\n You must specify exactly one of the following destinations: an IPv4 address range, an IPv6 address range, a prefix list, or a security group.\n You must specify a protocol for each rule (for example, TCP). If the protocol is TCP or UDP, you must also specify a port or port range. If the protocol is ICMP or ICMPv6, you must also specify the ICMP/ICMPv6 type and code. To specify all types or all codes, use -1.\n Rule changes are propagated to instances associated with the security group as quickly as possible. However, a small delay might occur. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupegress.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcgatewayattachment.html)", "allOf": [ { "type": "object", @@ -11390,14 +11302,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SecurityGroupEgress" + "AWS::EC2::VPCGatewayAttachment" ], "markdownEnumDescriptions": [ - "Adds the specified outbound (egress) rule to a security group.\n An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 address range, the IP addresses that are specified by a prefix list, or the instances that are associated with a destination security group. For more information, see [Security group rules](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html).\n You must specify exactly one of the following destinations: an IPv4 address range, an IPv6 address range, a prefix list, or a security group.\n You must specify a protocol for each rule (for example, TCP). If the protocol is TCP or UDP, you must also specify a port or port range. If the protocol is ICMP or ICMPv6, you must also specify the ICMP/ICMPv6 type and code. To specify all types or all codes, use -1.\n Rule changes are propagated to instances associated with the security group as quickly as possible. However, a small delay might occur. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupegress.html)" + "Resource Type definition for AWS::EC2::VPCGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcgatewayattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-securitygroupegress.json" + "$ref": "resources/aws-ec2-vpcgatewayattachment.json" } }, "required": [ @@ -11411,9 +11323,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_App": { + "AWS_IoTFleetWise_SignalCatalog": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html)", + "markdownDescription": "Definition of AWS::IoTFleetWise::SignalCatalog Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html)", "allOf": [ { "type": "object", @@ -11421,19 +11333,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::App" + "AWS::IoTFleetWise::SignalCatalog" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-app.html)" + "Definition of AWS::IoTFleetWise::SignalCatalog Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-app.json" + "$ref": "resources/aws-iotfleetwise-signalcatalog.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -11442,9 +11353,9 @@ ], "additionalProperties": false }, - "AWS_IoT_SoftwarePackageVersion": { + "AWS_CloudFormation_Publisher": { "type": "object", - "markdownDescription": "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html)", + "markdownDescription": "Register as a publisher in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html)", "allOf": [ { "type": "object", @@ -11452,14 +11363,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::SoftwarePackageVersion" + "AWS::CloudFormation::Publisher" ], "markdownEnumDescriptions": [ - "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html)" + "Register as a publisher in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-softwarepackageversion.json" + "$ref": "resources/aws-cloudformation-publisher.json" } }, "required": [ @@ -11473,9 +11384,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_MalwareProtectionPlan": { + "AWS_Wisdom_KnowledgeBase": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GuardDuty::MalwareProtectionPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html)", + "markdownDescription": "Definition of AWS::Wisdom::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-knowledgebase.html)", "allOf": [ { "type": "object", @@ -11483,14 +11394,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::MalwareProtectionPlan" + "AWS::Wisdom::KnowledgeBase" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GuardDuty::MalwareProtectionPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-malwareprotectionplan.html)" + "Definition of AWS::Wisdom::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-knowledgebase.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-malwareprotectionplan.json" + "$ref": "resources/aws-wisdom-knowledgebase.json" } }, "required": [ @@ -11504,9 +11415,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_RealtimeLogConfig": { + "AWS_ResourceGroups_Group": { "type": "object", - "markdownDescription": "A real-time log configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html)", + "markdownDescription": "Schema for ResourceGroups::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html)", "allOf": [ { "type": "object", @@ -11514,14 +11425,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::RealtimeLogConfig" + "AWS::ResourceGroups::Group" ], "markdownEnumDescriptions": [ - "A real-time log configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html)" + "Schema for ResourceGroups::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-realtimelogconfig.json" + "$ref": "resources/aws-resourcegroups-group.json" } }, "required": [ @@ -11535,9 +11446,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_FeatureGroup": { + "AWS_EKS_AccessEntry": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::FeatureGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html)", + "markdownDescription": "An object representing an Amazon EKS AccessEntry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-accessentry.html)", "allOf": [ { "type": "object", @@ -11545,14 +11456,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::FeatureGroup" + "AWS::EKS::AccessEntry" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::FeatureGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html)" + "An object representing an Amazon EKS AccessEntry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-accessentry.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-featuregroup.json" + "$ref": "resources/aws-eks-accessentry.json" } }, "required": [ @@ -11566,9 +11477,9 @@ ], "additionalProperties": false }, - "AWS_LicenseManager_License": { + "AWS_Route53Resolver_ResolverRuleAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::LicenseManager::License \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html)", + "markdownDescription": "In the response to an [AssociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_AssociateResolverRule.html), [DisassociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_DisassociateResolverRule.html), or [ListResolverRuleAssociations](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_ListResolverRuleAssociations.html) request, provides information about an association between a resolver rule and a VPC. The association determines which DNS queries that originate in the VPC are forwarded to your network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html)", "allOf": [ { "type": "object", @@ -11576,14 +11487,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LicenseManager::License" + "AWS::Route53Resolver::ResolverRuleAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::LicenseManager::License \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-license.html)" + "In the response to an [AssociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_AssociateResolverRule.html), [DisassociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_DisassociateResolverRule.html), or [ListResolverRuleAssociations](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_ListResolverRuleAssociations.html) request, provides information about an association between a resolver rule and a VPC. The association determines which DNS queries that originate in the VPC are forwarded to your network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-licensemanager-license.json" + "$ref": "resources/aws-route53resolver-resolverruleassociation.json" } }, "required": [ @@ -11597,9 +11508,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_CacheCluster": { + "AWS_ApiGateway_Model": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::CacheCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-cachecluster.html)", + "markdownDescription": "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html)", "allOf": [ { "type": "object", @@ -11607,14 +11518,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::CacheCluster" + "AWS::ApiGateway::Model" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::CacheCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-cachecluster.html)" + "The ``AWS::ApiGateway::Model`` resource defines the structure of a request or response payload for an API method. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-cachecluster.json" + "$ref": "resources/aws-apigateway-model.json" } }, "required": [ @@ -11628,9 +11539,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_LoadBalancer": { + "AWS_IdentityStore_GroupMembership": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancer.html)", + "markdownDescription": "Resource Type Definition for AWS:IdentityStore::GroupMembership \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-groupmembership.html)", "allOf": [ { "type": "object", @@ -11638,14 +11549,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::LoadBalancer" + "AWS::IdentityStore::GroupMembership" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancer.html)" + "Resource Type Definition for AWS:IdentityStore::GroupMembership \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-groupmembership.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-loadbalancer.json" + "$ref": "resources/aws-identitystore-groupmembership.json" } }, "required": [ @@ -11659,9 +11570,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_Application": { + "AWS_MediaTailor_LiveSource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-application.html)", + "markdownDescription": "Definition of AWS::MediaTailor::LiveSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-livesource.html)", "allOf": [ { "type": "object", @@ -11669,14 +11580,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::Application" + "AWS::MediaTailor::LiveSource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-application.html)" + "Definition of AWS::MediaTailor::LiveSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-livesource.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-application.json" + "$ref": "resources/aws-mediatailor-livesource.json" } }, "required": [ @@ -11690,9 +11601,9 @@ ], "additionalProperties": false }, - "AWS_S3Outposts_BucketPolicy": { + "AWS_NetworkFirewall_FirewallPolicy": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::S3Outposts::BucketPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucketpolicy.html)", + "markdownDescription": "Resource type definition for AWS::NetworkFirewall::FirewallPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewallpolicy.html)", "allOf": [ { "type": "object", @@ -11700,14 +11611,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Outposts::BucketPolicy" + "AWS::NetworkFirewall::FirewallPolicy" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::S3Outposts::BucketPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucketpolicy.html)" + "Resource type definition for AWS::NetworkFirewall::FirewallPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewallpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-s3outposts-bucketpolicy.json" + "$ref": "resources/aws-networkfirewall-firewallpolicy.json" } }, "required": [ @@ -11721,9 +11632,9 @@ ], "additionalProperties": false }, - "AWS_ApplicationInsights_Application": { + "AWS_S3_MultiRegionAccessPointPolicy": { "type": "object", - "markdownDescription": "Resource schema for AWS::ApplicationInsights::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html)", + "markdownDescription": "The policy to be attached to a Multi Region Access Point \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html)", "allOf": [ { "type": "object", @@ -11731,14 +11642,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApplicationInsights::Application" + "AWS::S3::MultiRegionAccessPointPolicy" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ApplicationInsights::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html)" + "The policy to be attached to a Multi Region Access Point \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-applicationinsights-application.json" + "$ref": "resources/aws-s3-multiregionaccesspointpolicy.json" } }, "required": [ @@ -11752,9 +11663,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationFSxLustre": { + "AWS_ApiGatewayV2_VpcLink": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxLustre. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::VpcLink`` resource creates a VPC link. Supported only for HTTP APIs. The VPC link status must transition from ``PENDING`` to ``AVAILABLE`` to successfully create a VPC link, which can take up to 10 minutes. To learn more, see [Working with VPC Links for HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-vpc-links.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html)", "allOf": [ { "type": "object", @@ -11762,14 +11673,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationFSxLustre" + "AWS::ApiGatewayV2::VpcLink" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationFSxLustre. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html)" + "The ``AWS::ApiGatewayV2::VpcLink`` resource creates a VPC link. Supported only for HTTP APIs. The VPC link status must transition from ``PENDING`` to ``AVAILABLE`` to successfully create a VPC link, which can take up to 10 minutes. To learn more, see [Working with VPC Links for HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-vpc-links.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationfsxlustre.json" + "$ref": "resources/aws-apigatewayv2-vpclink.json" } }, "required": [ @@ -11783,9 +11694,9 @@ ], "additionalProperties": false }, - "AWS_ResilienceHub_App": { + "AWS_NeptuneGraph_Graph": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::ResilienceHub::App. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html)", + "markdownDescription": "The AWS::NeptuneGraph::Graph resource creates an Amazon NeptuneGraph Graph. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-graph.html)", "allOf": [ { "type": "object", @@ -11793,14 +11704,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ResilienceHub::App" + "AWS::NeptuneGraph::Graph" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::ResilienceHub::App. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html)" + "The AWS::NeptuneGraph::Graph resource creates an Amazon NeptuneGraph Graph. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-graph.html)" ] }, "Properties": { - "$ref": "resources/aws-resiliencehub-app.json" + "$ref": "resources/aws-neptunegraph-graph.json" } }, "required": [ @@ -11814,9 +11725,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkAclEntry": { + "AWS_Organizations_Organization": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::NetworkAclEntry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html)", + "markdownDescription": "Resource schema for AWS::Organizations::Organization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organization.html)", "allOf": [ { "type": "object", @@ -11824,19 +11735,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkAclEntry" + "AWS::Organizations::Organization" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::NetworkAclEntry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html)" + "Resource schema for AWS::Organizations::Organization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organization.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkaclentry.json" + "$ref": "resources/aws-organizations-organization.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -11845,9 +11755,9 @@ ], "additionalProperties": false }, - "AWS_MediaTailor_LiveSource": { + "AWS_GameLift_GameServerGroup": { "type": "object", - "markdownDescription": "Definition of AWS::MediaTailor::LiveSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-livesource.html)", + "markdownDescription": "The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift (GameLift) GameServerGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html)", "allOf": [ { "type": "object", @@ -11855,14 +11765,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaTailor::LiveSource" + "AWS::GameLift::GameServerGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaTailor::LiveSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-livesource.html)" + "The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift (GameLift) GameServerGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gameservergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-mediatailor-livesource.json" + "$ref": "resources/aws-gamelift-gameservergroup.json" } }, "required": [ @@ -11876,9 +11786,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_RefreshSchedule": { + "AWS_Redshift_Cluster": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::RefreshSchedule Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-refreshschedule.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html)", "allOf": [ { "type": "object", @@ -11886,18 +11796,19 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::RefreshSchedule" + "AWS::Redshift::Cluster" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::RefreshSchedule Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-refreshschedule.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-refreshschedule.json" + "$ref": "resources/aws-redshift-cluster.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11906,9 +11817,9 @@ ], "additionalProperties": false }, - "AWS_IAM_ManagedPolicy": { + "AWS_EMR_StudioSessionMapping": { "type": "object", - "markdownDescription": "Creates a new managed policy for your AWS-account.\n This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.\n As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.\n For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html)", "allOf": [ { "type": "object", @@ -11916,14 +11827,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::ManagedPolicy" + "AWS::EMR::StudioSessionMapping" ], "markdownEnumDescriptions": [ - "Creates a new managed policy for your AWS-account.\n This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.\n As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.\n For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-managedpolicy.json" + "$ref": "resources/aws-emr-studiosessionmapping.json" } }, "required": [ @@ -11937,9 +11848,9 @@ ], "additionalProperties": false }, - "AWS_Neptune_DBCluster": { + "AWS_IVS_RecordingConfiguration": { "type": "object", - "markdownDescription": "The AWS::Neptune::DBCluster resource creates an Amazon Neptune DB cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::RecordingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-recordingconfiguration.html)", "allOf": [ { "type": "object", @@ -11947,18 +11858,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Neptune::DBCluster" + "AWS::IVS::RecordingConfiguration" ], "markdownEnumDescriptions": [ - "The AWS::Neptune::DBCluster resource creates an Amazon Neptune DB cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html)" + "Resource Type definition for AWS::IVS::RecordingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-recordingconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-neptune-dbcluster.json" + "$ref": "resources/aws-ivs-recordingconfiguration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -11967,9 +11879,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_CustomPermissions": { + "AWS_GlobalAccelerator_Accelerator": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::CustomPermissions Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-custompermissions.html)", + "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::Accelerator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html)", "allOf": [ { "type": "object", @@ -11977,14 +11889,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::CustomPermissions" + "AWS::GlobalAccelerator::Accelerator" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::CustomPermissions Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-custompermissions.html)" + "Resource Type definition for AWS::GlobalAccelerator::Accelerator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-custompermissions.json" + "$ref": "resources/aws-globalaccelerator-accelerator.json" } }, "required": [ @@ -11998,9 +11910,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_TransitGatewayRouteTableAttachment": { + "AWS_EMR_SecurityConfiguration": { "type": "object", - "markdownDescription": "AWS::NetworkManager::TransitGatewayRouteTableAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayroutetableattachment.html)", + "markdownDescription": "Use a SecurityConfiguration resource to configure data encryption, Kerberos authentication, and Amazon S3 authorization for EMRFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html)", "allOf": [ { "type": "object", @@ -12008,14 +11920,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::TransitGatewayRouteTableAttachment" + "AWS::EMR::SecurityConfiguration" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::TransitGatewayRouteTableAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayroutetableattachment.html)" + "Use a SecurityConfiguration resource to configure data encryption, Kerberos authentication, and Amazon S3 authorization for EMRFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-transitgatewayroutetableattachment.json" + "$ref": "resources/aws-emr-securityconfiguration.json" } }, "required": [ @@ -12029,9 +11941,9 @@ ], "additionalProperties": false }, - "AWS_AppConfig_ConfigurationProfile": { + "AWS_IoTTwinMaker_Entity": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-configurationprofile.html)", + "markdownDescription": "Resource schema for AWS::IoTTwinMaker::Entity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-entity.html)", "allOf": [ { "type": "object", @@ -12039,14 +11951,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppConfig::ConfigurationProfile" + "AWS::IoTTwinMaker::Entity" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-configurationprofile.html)" + "Resource schema for AWS::IoTTwinMaker::Entity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-entity.html)" ] }, "Properties": { - "$ref": "resources/aws-appconfig-configurationprofile.json" + "$ref": "resources/aws-iottwinmaker-entity.json" } }, "required": [ @@ -12060,9 +11972,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorks_Layer": { + "AWS_SES_MailManagerRelay": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorks::Layer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerRelay Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerrelay.html)", "allOf": [ { "type": "object", @@ -12070,14 +11982,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorks::Layer" + "AWS::SES::MailManagerRelay" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorks::Layer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html)" + "Definition of AWS::SES::MailManagerRelay Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerrelay.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworks-layer.json" + "$ref": "resources/aws-ses-mailmanagerrelay.json" } }, "required": [ @@ -12091,9 +12003,9 @@ ], "additionalProperties": false }, - "AWS_CE_CostCategory": { + "AWS_APS_RuleGroupsNamespace": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CE::CostCategory. Cost Category enables you to map your cost and usage into meaningful categories. You can use Cost Category to organize your costs using a rule-based engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-costcategory.html)", + "markdownDescription": "RuleGroupsNamespace schema for cloudformation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-rulegroupsnamespace.html)", "allOf": [ { "type": "object", @@ -12101,14 +12013,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CE::CostCategory" + "AWS::APS::RuleGroupsNamespace" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CE::CostCategory. Cost Category enables you to map your cost and usage into meaningful categories. You can use Cost Category to organize your costs using a rule-based engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-costcategory.html)" + "RuleGroupsNamespace schema for cloudformation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-rulegroupsnamespace.html)" ] }, "Properties": { - "$ref": "resources/aws-ce-costcategory.json" + "$ref": "resources/aws-aps-rulegroupsnamespace.json" } }, "required": [ @@ -12122,9 +12034,9 @@ ], "additionalProperties": false }, - "AWS_GreengrassV2_Deployment": { + "AWS_EC2_VPCPeeringConnection": { "type": "object", - "markdownDescription": "Resource for Greengrass V2 deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-deployment.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCPeeringConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html)", "allOf": [ { "type": "object", @@ -12132,14 +12044,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GreengrassV2::Deployment" + "AWS::EC2::VPCPeeringConnection" ], "markdownEnumDescriptions": [ - "Resource for Greengrass V2 deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-deployment.html)" + "Resource Type definition for AWS::EC2::VPCPeeringConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrassv2-deployment.json" + "$ref": "resources/aws-ec2-vpcpeeringconnection.json" } }, "required": [ @@ -12153,9 +12065,9 @@ ], "additionalProperties": false }, - "AWS_Panorama_PackageVersion": { + "AWS_Logs_MetricFilter": { "type": "object", - "markdownDescription": "Registers a package version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-packageversion.html)", + "markdownDescription": "The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n The maximum number of metric filters that can be associated with a log group is 100. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html)", "allOf": [ { "type": "object", @@ -12163,14 +12075,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Panorama::PackageVersion" + "AWS::Logs::MetricFilter" ], "markdownEnumDescriptions": [ - "Registers a package version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-packageversion.html)" + "The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n The maximum number of metric filters that can be associated with a log group is 100. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html)" ] }, "Properties": { - "$ref": "resources/aws-panorama-packageversion.json" + "$ref": "resources/aws-logs-metricfilter.json" } }, "required": [ @@ -12184,9 +12096,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchServerless_VpcEndpoint": { + "AWS_EC2_SpotFleet": { "type": "object", - "markdownDescription": "Amazon OpenSearchServerless vpc endpoint resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-vpcendpoint.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::SpotFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html)", "allOf": [ { "type": "object", @@ -12194,14 +12106,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchServerless::VpcEndpoint" + "AWS::EC2::SpotFleet" ], "markdownEnumDescriptions": [ - "Amazon OpenSearchServerless vpc endpoint resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-vpcendpoint.html)" + "Resource Type definition for AWS::EC2::SpotFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchserverless-vpcendpoint.json" + "$ref": "resources/aws-ec2-spotfleet.json" } }, "required": [ @@ -12215,9 +12127,9 @@ ], "additionalProperties": false }, - "AWS_CodeGuruReviewer_RepositoryAssociation": { + "AWS_EC2_VPCDHCPOptionsAssociation": { "type": "object", - "markdownDescription": "This resource schema represents the RepositoryAssociation resource in the Amazon CodeGuru Reviewer service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html)", + "markdownDescription": "Associates a set of DHCP options with a VPC, or associates no DHCP options with the VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcdhcpoptionsassociation.html)", "allOf": [ { "type": "object", @@ -12225,14 +12137,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeGuruReviewer::RepositoryAssociation" + "AWS::EC2::VPCDHCPOptionsAssociation" ], "markdownEnumDescriptions": [ - "This resource schema represents the RepositoryAssociation resource in the Amazon CodeGuru Reviewer service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codegurureviewer-repositoryassociation.html)" + "Associates a set of DHCP options with a VPC, or associates no DHCP options with the VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcdhcpoptionsassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-codegurureviewer-repositoryassociation.json" + "$ref": "resources/aws-ec2-vpcdhcpoptionsassociation.json" } }, "required": [ @@ -12246,9 +12158,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchServerless_SecurityPolicy": { + "AWS_MediaConnect_FlowVpcInterface": { "type": "object", - "markdownDescription": "Amazon OpenSearchServerless security policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securitypolicy.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::FlowVpcInterface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html)", "allOf": [ { "type": "object", @@ -12256,14 +12168,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchServerless::SecurityPolicy" + "AWS::MediaConnect::FlowVpcInterface" ], "markdownEnumDescriptions": [ - "Amazon OpenSearchServerless security policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securitypolicy.html)" + "Resource schema for AWS::MediaConnect::FlowVpcInterface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchserverless-securitypolicy.json" + "$ref": "resources/aws-mediaconnect-flowvpcinterface.json" } }, "required": [ @@ -12277,9 +12189,9 @@ ], "additionalProperties": false }, - "AWS_InternetMonitor_Monitor": { + "AWS_StepFunctions_StateMachine": { "type": "object", - "markdownDescription": "Represents a monitor, which defines the monitoring boundaries for measurements that Internet Monitor publishes information about for an application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-internetmonitor-monitor.html)", + "markdownDescription": "Resource schema for StateMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html)", "allOf": [ { "type": "object", @@ -12287,14 +12199,14 @@ "Type": { "type": "string", "enum": [ - "AWS::InternetMonitor::Monitor" + "AWS::StepFunctions::StateMachine" ], "markdownEnumDescriptions": [ - "Represents a monitor, which defines the monitoring boundaries for measurements that Internet Monitor publishes information about for an application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-internetmonitor-monitor.html)" + "Resource schema for StateMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html)" ] }, "Properties": { - "$ref": "resources/aws-internetmonitor-monitor.json" + "$ref": "resources/aws-stepfunctions-statemachine.json" } }, "required": [ @@ -12308,9 +12220,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_AcceptedPortfolioShare": { + "AWS_Neptune_DBSubnetGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::AcceptedPortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html)", + "markdownDescription": "The AWS::Neptune::DBSubnetGroup type creates an Amazon Neptune DB subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same AWS Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html)", "allOf": [ { "type": "object", @@ -12318,14 +12230,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::AcceptedPortfolioShare" + "AWS::Neptune::DBSubnetGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::AcceptedPortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html)" + "The AWS::Neptune::DBSubnetGroup type creates an Amazon Neptune DB subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same AWS Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbsubnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-acceptedportfolioshare.json" + "$ref": "resources/aws-neptune-dbsubnetgroup.json" } }, "required": [ @@ -12339,9 +12251,9 @@ ], "additionalProperties": false }, - "AWS_MSK_ServerlessCluster": { + "AWS_Glue_Table": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MSK::ServerlessCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-serverlesscluster.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html)", "allOf": [ { "type": "object", @@ -12349,14 +12261,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MSK::ServerlessCluster" + "AWS::Glue::Table" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MSK::ServerlessCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-serverlesscluster.html)" + "Resource Type definition for AWS::Glue::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html)" ] }, "Properties": { - "$ref": "resources/aws-msk-serverlesscluster.json" + "$ref": "resources/aws-glue-table.json" } }, "required": [ @@ -12370,9 +12282,9 @@ ], "additionalProperties": false }, - "AWS_Lex_ResourcePolicy": { + "AWS_MediaPackage_PackagingConfiguration": { "type": "object", - "markdownDescription": "A resource policy with specified policy statements that attaches to a Lex bot or bot alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-resourcepolicy.html)", + "markdownDescription": "Resource schema for AWS::MediaPackage::PackagingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html)", "allOf": [ { "type": "object", @@ -12380,14 +12292,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lex::ResourcePolicy" + "AWS::MediaPackage::PackagingConfiguration" ], "markdownEnumDescriptions": [ - "A resource policy with specified policy statements that attaches to a Lex bot or bot alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-resourcepolicy.html)" + "Resource schema for AWS::MediaPackage::PackagingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-packagingconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-lex-resourcepolicy.json" + "$ref": "resources/aws-mediapackage-packagingconfiguration.json" } }, "required": [ @@ -12401,9 +12313,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Workflow": { + "AWS_SSO_ApplicationAssignment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html)", + "markdownDescription": "Resource Type definition for SSO application access grant to a user or group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html)", "allOf": [ { "type": "object", @@ -12411,18 +12323,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Workflow" + "AWS::SSO::ApplicationAssignment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html)" + "Resource Type definition for SSO application access grant to a user or group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-workflow.json" + "$ref": "resources/aws-sso-applicationassignment.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -12431,9 +12344,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_UserProfile": { + "AWS_IoTEvents_AlarmModel": { "type": "object", - "markdownDescription": "A user profile represents Amazon DataZone users. Amazon DataZone supports both IAM roles and SSO identities to interact with the Amazon DataZone Management Console and the data portal for different purposes. Domain administrators use IAM roles to perform the initial administrative domain-related work in the Amazon DataZone Management Console, including creating new Amazon DataZone domains, configuring metadata form types, and implementing policies. Data workers use their SSO corporate identities via Identity Center to log into the Amazon DataZone Data Portal and access projects where they have memberships. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html)", + "markdownDescription": "Represents an alarm model to monitor an ITE input attribute. You can use the alarm to get notified when the value is outside a specified range. For more information, see [Create an alarm model](https://docs.aws.amazon.com/iotevents/latest/developerguide/create-alarms.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-alarmmodel.html)", "allOf": [ { "type": "object", @@ -12441,14 +12354,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::UserProfile" + "AWS::IoTEvents::AlarmModel" ], "markdownEnumDescriptions": [ - "A user profile represents Amazon DataZone users. Amazon DataZone supports both IAM roles and SSO identities to interact with the Amazon DataZone Management Console and the data portal for different purposes. Domain administrators use IAM roles to perform the initial administrative domain-related work in the Amazon DataZone Management Console, including creating new Amazon DataZone domains, configuring metadata form types, and implementing policies. Data workers use their SSO corporate identities via Identity Center to log into the Amazon DataZone Data Portal and access projects where they have memberships. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html)" + "Represents an alarm model to monitor an ITE input attribute. You can use the alarm to get notified when the value is outside a specified range. For more information, see [Create an alarm model](https://docs.aws.amazon.com/iotevents/latest/developerguide/create-alarms.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-alarmmodel.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-userprofile.json" + "$ref": "resources/aws-iotevents-alarmmodel.json" } }, "required": [ @@ -12462,9 +12375,9 @@ ], "additionalProperties": false }, - "AWS_KMS_Alias": { + "AWS_ODB_CloudExadataInfrastructure": { "type": "object", - "markdownDescription": "The ``AWS::KMS::Alias`` resource specifies a display name for a [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys). You can use an alias to identify a KMS key in the KMS console, in the [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) operation, and in [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations), such as [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) and [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html).\n Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see [ABAC for](https://docs.aws.amazon.com/kms/latest/developerguide/abac.html) in the *Developer Guide*.\n Using an alias to refer to a KMS key can help you simplify key management. For example, an alias in your code can be associated with different KMS keys in different AWS-Regions. For more information, see [Using aliases](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html) in the *Developer Guide*.\n When specifying an alias, observe the following rules.\n + Each alias is associated with one KMS key, but multiple aliases can be associated with the same KMS key.\n + The alias and its associated KMS key must be in the same AWS-account and Region.\n + The alias name must be unique in the AWS-account and Region. However, you can create aliases with the same name in different AWS-Regions. For example, you can have an ``alias/projectKey`` in multiple Regions, each of which is associated with a KMS key in its Region.\n + Each alias name must begin with ``alias/`` followed by a name, such as ``alias/exampleKey``. The alias name can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). Alias names cannot begin with ``alias/aws/``. That alias name prefix is reserved for [](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk).\n \n *Regions* \n KMS CloudFormation resources are available in all AWS-Regions in which KMS and CFN are supported. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html)", + "markdownDescription": "The AWS::ODB::CloudExadataInfrastructure resource creates an Exadata Infrastructure \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-cloudexadatainfrastructure.html)", "allOf": [ { "type": "object", @@ -12472,19 +12385,18 @@ "Type": { "type": "string", "enum": [ - "AWS::KMS::Alias" + "AWS::ODB::CloudExadataInfrastructure" ], "markdownEnumDescriptions": [ - "The ``AWS::KMS::Alias`` resource specifies a display name for a [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys). You can use an alias to identify a KMS key in the KMS console, in the [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) operation, and in [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations), such as [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) and [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html).\n Adding, deleting, or updating an alias can allow or deny permission to the KMS key. For details, see [ABAC for](https://docs.aws.amazon.com/kms/latest/developerguide/abac.html) in the *Developer Guide*.\n Using an alias to refer to a KMS key can help you simplify key management. For example, an alias in your code can be associated with different KMS keys in different AWS-Regions. For more information, see [Using aliases](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html) in the *Developer Guide*.\n When specifying an alias, observe the following rules.\n + Each alias is associated with one KMS key, but multiple aliases can be associated with the same KMS key.\n + The alias and its associated KMS key must be in the same AWS-account and Region.\n + The alias name must be unique in the AWS-account and Region. However, you can create aliases with the same name in different AWS-Regions. For example, you can have an ``alias/projectKey`` in multiple Regions, each of which is associated with a KMS key in its Region.\n + Each alias name must begin with ``alias/`` followed by a name, such as ``alias/exampleKey``. The alias name can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-). Alias names cannot begin with ``alias/aws/``. That alias name prefix is reserved for [](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk).\n \n *Regions* \n KMS CloudFormation resources are available in all AWS-Regions in which KMS and CFN are supported. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html)" + "The AWS::ODB::CloudExadataInfrastructure resource creates an Exadata Infrastructure \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-cloudexadatainfrastructure.html)" ] }, "Properties": { - "$ref": "resources/aws-kms-alias.json" + "$ref": "resources/aws-odb-cloudexadatainfrastructure.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -12493,9 +12405,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Instance": { + "AWS_GameLift_MatchmakingConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html)", + "markdownDescription": "The AWS::GameLift::MatchmakingConfiguration resource creates an Amazon GameLift (GameLift) matchmaking configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html)", "allOf": [ { "type": "object", @@ -12503,14 +12415,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Instance" + "AWS::GameLift::MatchmakingConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html)" + "The AWS::GameLift::MatchmakingConfiguration resource creates an Amazon GameLift (GameLift) matchmaking configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-instance.json" + "$ref": "resources/aws-gamelift-matchmakingconfiguration.json" } }, "required": [ @@ -12524,9 +12436,9 @@ ], "additionalProperties": false }, - "AWS_Omics_RunGroup": { + "AWS_ControlTower_EnabledBaseline": { "type": "object", - "markdownDescription": "Definition of AWS::Omics::RunGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-rungroup.html)", + "markdownDescription": "Definition of AWS::ControlTower::EnabledBaseline Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html)", "allOf": [ { "type": "object", @@ -12534,18 +12446,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Omics::RunGroup" + "AWS::ControlTower::EnabledBaseline" ], "markdownEnumDescriptions": [ - "Definition of AWS::Omics::RunGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-rungroup.html)" + "Definition of AWS::ControlTower::EnabledBaseline Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html)" ] }, "Properties": { - "$ref": "resources/aws-omics-rungroup.json" + "$ref": "resources/aws-controltower-enabledbaseline.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -12554,9 +12467,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_Agreement": { + "AWS_ServiceDiscovery_PublicDnsNamespace": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Transfer::Agreement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-agreement.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::PublicDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html)", "allOf": [ { "type": "object", @@ -12564,14 +12477,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::Agreement" + "AWS::ServiceDiscovery::PublicDnsNamespace" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Transfer::Agreement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-agreement.html)" + "Resource Type definition for AWS::ServiceDiscovery::PublicDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-agreement.json" + "$ref": "resources/aws-servicediscovery-publicdnsnamespace.json" } }, "required": [ @@ -12585,9 +12498,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_PartnerAccount": { + "AWS_IoTAnalytics_Pipeline": { "type": "object", - "markdownDescription": "Create and manage partner account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-partneraccount.html)", + "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html)", "allOf": [ { "type": "object", @@ -12595,18 +12508,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::PartnerAccount" + "AWS::IoTAnalytics::Pipeline" ], "markdownEnumDescriptions": [ - "Create and manage partner account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-partneraccount.html)" + "Resource Type definition for AWS::IoTAnalytics::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-partneraccount.json" + "$ref": "resources/aws-iotanalytics-pipeline.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -12615,9 +12529,9 @@ ], "additionalProperties": false }, - "AWS_KMS_Key": { + "AWS_Glue_Workflow": { "type": "object", - "markdownDescription": "The ``AWS::KMS::Key`` resource specifies an [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys) in KMSlong. You can use this resource to create symmetric encryption KMS keys, asymmetric KMS keys for encryption or signing, and symmetric HMAC KMS keys. You can use ``AWS::KMS::Key`` to create [multi-Region primary keys](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html#mrk-primary-key) of all supported types. To replicate a multi-Region key, use the ``AWS::KMS::ReplicaKey`` resource.\n If you change the value of the ``KeySpec``, ``KeyUsage``, ``Origin``, or ``MultiRegion`` properties of an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing any of its immutable property values.\n KMS replaced the term *customer master key (CMK)* with ** and *KMS key*. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.\n You can use symmetric encryption KMS keys to encrypt and decrypt small amounts of data, but they are more commonly used to generate data keys and data key pairs. You can also use a symmetric encryption KMS key to encrypt data stored in AWS services that are [integrated with](https://docs.aws.amazon.com//kms/features/#AWS_Service_Integration). For more information, see [Symmetric encryption KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks) in the *Developer Guide*.\n You can use asymmetric KMS keys to encrypt and decrypt data or sign messages and verify signatures. To create an asymmetric key, you must specify an asymmetric ``KeySpec`` value and a ``KeyUsage`` value. For details, see [Asymmetric keys in](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) in the *Developer Guide*.\n You can use HMAC KMS keys (which are also symmetric keys) to generate and verify hash-based message authentication codes. To create an HMAC key, you must specify an HMAC ``KeySpec`` value and a ``KeyUsage`` value of ``GENERATE_VERIFY_MAC``. For details, see [HMAC keys in](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) in the *Developer Guide*.\n You can also create symmetric encryption, asymmetric, and HMAC multi-Region primary keys. To create a multi-Region primary key, set the ``MultiRegion`` property to ``true``. For information about multi-Region keys, see [Multi-Region keys in](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) in the *Developer Guide*.\n You cannot use the ``AWS::KMS::Key`` resource to specify a KMS key with [imported key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) or a KMS key in a [custom key store](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html).\n *Regions* \n KMS CloudFormation resources are available in all Regions in which KMS and CFN are supported. You can use the ``AWS::KMS::Key`` resource to create and manage all KMS key types that are supported in a Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html)", "allOf": [ { "type": "object", @@ -12625,14 +12539,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KMS::Key" + "AWS::Glue::Workflow" ], "markdownEnumDescriptions": [ - "The ``AWS::KMS::Key`` resource specifies an [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys) in KMSlong. You can use this resource to create symmetric encryption KMS keys, asymmetric KMS keys for encryption or signing, and symmetric HMAC KMS keys. You can use ``AWS::KMS::Key`` to create [multi-Region primary keys](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html#mrk-primary-key) of all supported types. To replicate a multi-Region key, use the ``AWS::KMS::ReplicaKey`` resource.\n If you change the value of the ``KeySpec``, ``KeyUsage``, ``Origin``, or ``MultiRegion`` properties of an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing any of its immutable property values.\n KMS replaced the term *customer master key (CMK)* with ** and *KMS key*. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.\n You can use symmetric encryption KMS keys to encrypt and decrypt small amounts of data, but they are more commonly used to generate data keys and data key pairs. You can also use a symmetric encryption KMS key to encrypt data stored in AWS services that are [integrated with](https://docs.aws.amazon.com//kms/features/#AWS_Service_Integration). For more information, see [Symmetric encryption KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks) in the *Developer Guide*.\n You can use asymmetric KMS keys to encrypt and decrypt data or sign messages and verify signatures. To create an asymmetric key, you must specify an asymmetric ``KeySpec`` value and a ``KeyUsage`` value. For details, see [Asymmetric keys in](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) in the *Developer Guide*.\n You can use HMAC KMS keys (which are also symmetric keys) to generate and verify hash-based message authentication codes. To create an HMAC key, you must specify an HMAC ``KeySpec`` value and a ``KeyUsage`` value of ``GENERATE_VERIFY_MAC``. For details, see [HMAC keys in](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) in the *Developer Guide*.\n You can also create symmetric encryption, asymmetric, and HMAC multi-Region primary keys. To create a multi-Region primary key, set the ``MultiRegion`` property to ``true``. For information about multi-Region keys, see [Multi-Region keys in](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) in the *Developer Guide*.\n You cannot use the ``AWS::KMS::Key`` resource to specify a KMS key with [imported key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) or a KMS key in a [custom key store](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html).\n *Regions* \n KMS CloudFormation resources are available in all Regions in which KMS and CFN are supported. You can use the ``AWS::KMS::Key`` resource to create and manage all KMS key types that are supported in a Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html)" + "Resource Type definition for AWS::Glue::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html)" ] }, "Properties": { - "$ref": "resources/aws-kms-key.json" + "$ref": "resources/aws-glue-workflow.json" } }, "required": [ @@ -12645,9 +12559,9 @@ ], "additionalProperties": false }, - "AWS_EC2_EgressOnlyInternetGateway": { + "AWS_MediaConnect_FlowSource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::EgressOnlyInternetGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::FlowSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html)", "allOf": [ { "type": "object", @@ -12655,14 +12569,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::EgressOnlyInternetGateway" + "AWS::MediaConnect::FlowSource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::EgressOnlyInternetGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-egressonlyinternetgateway.html)" + "Resource schema for AWS::MediaConnect::FlowSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-egressonlyinternetgateway.json" + "$ref": "resources/aws-mediaconnect-flowsource.json" } }, "required": [ @@ -12676,9 +12590,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_APNSChannel": { + "AWS_CloudFront_KeyGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html)", + "markdownDescription": "A key group.\n A key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html)", "allOf": [ { "type": "object", @@ -12686,14 +12600,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::APNSChannel" + "AWS::CloudFront::KeyGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::APNSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html)" + "A key group.\n A key group contains a list of public keys that you can use with [CloudFront signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-apnschannel.json" + "$ref": "resources/aws-cloudfront-keygroup.json" } }, "required": [ @@ -12707,9 +12621,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackageV2_OriginEndpointPolicy": { + "AWS_IAM_GroupPolicy": { "type": "object", - "markdownDescription": "

Represents a resource policy that allows or denies access to an origin endpoint.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html)", + "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM group.\n A group can also have managed policies attached to it. To attach a managed policy to a group, use [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a group, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html)", "allOf": [ { "type": "object", @@ -12717,14 +12631,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackageV2::OriginEndpointPolicy" + "AWS::IAM::GroupPolicy" ], "markdownEnumDescriptions": [ - "

Represents a resource policy that allows or denies access to an origin endpoint.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html)" + "Adds or updates an inline policy document that is embedded in the specified IAM group.\n A group can also have managed policies attached to it. To attach a managed policy to a group, use [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a group, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackagev2-originendpointpolicy.json" + "$ref": "resources/aws-iam-grouppolicy.json" } }, "required": [ @@ -12738,9 +12652,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_Campaign": { + "AWS_ElastiCache_User": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::Campaign \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html)", "allOf": [ { "type": "object", @@ -12748,14 +12662,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::Campaign" + "AWS::ElastiCache::User" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::Campaign \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html)" + "Resource Type definition for AWS::ElastiCache::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-campaign.json" + "$ref": "resources/aws-elasticache-user.json" } }, "required": [ @@ -12769,9 +12683,9 @@ ], "additionalProperties": false }, - "AWS_EMR_InstanceGroupConfig": { + "AWS_SNS_Topic": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EMR::InstanceGroupConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html)", + "markdownDescription": "The ``AWS::SNS::Topic`` resource creates a topic to which notifications can be published.\n One account can create a maximum of 100,000 standard topics and 1,000 FIFO topics. For more information, see [endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/sns.html) in the *General Reference*.\n The structure of ``AUTHPARAMS`` depends on the .signature of the API request. For more information, see [Examples of the complete Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html)", "allOf": [ { "type": "object", @@ -12779,19 +12693,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::InstanceGroupConfig" + "AWS::SNS::Topic" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EMR::InstanceGroupConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html)" + "The ``AWS::SNS::Topic`` resource creates a topic to which notifications can be published.\n One account can create a maximum of 100,000 standard topics and 1,000 FIFO topics. For more information, see [endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/sns.html) in the *General Reference*.\n The structure of ``AUTHPARAMS`` depends on the .signature of the API request. For more information, see [Examples of the complete Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-instancegroupconfig.json" + "$ref": "resources/aws-sns-topic.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -12800,9 +12713,9 @@ ], "additionalProperties": false }, - "AWS_Glue_DataQualityRuleset": { + "AWS_Batch_JobDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::DataQualityRuleset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-dataqualityruleset.html)", + "markdownDescription": "Resource Type definition for AWS::Batch::JobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html)", "allOf": [ { "type": "object", @@ -12810,18 +12723,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::DataQualityRuleset" + "AWS::Batch::JobDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::DataQualityRuleset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-dataqualityruleset.html)" + "Resource Type definition for AWS::Batch::JobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-dataqualityruleset.json" + "$ref": "resources/aws-batch-jobdefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -12830,9 +12744,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGateway": { + "AWS_S3_StorageLens": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TransitGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html)", + "markdownDescription": "The AWS::S3::StorageLens resource is an Amazon S3 resource type that you can use to create Storage Lens configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html)", "allOf": [ { "type": "object", @@ -12840,18 +12754,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGateway" + "AWS::S3::StorageLens" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TransitGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html)" + "The AWS::S3::StorageLens resource is an Amazon S3 resource type that you can use to create Storage Lens configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgateway.json" + "$ref": "resources/aws-s3-storagelens.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -12860,9 +12775,9 @@ ], "additionalProperties": false }, - "AWS_APS_Scraper": { + "AWS_Backup_BackupPlan": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::APS::Scraper \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-scraper.html)", + "markdownDescription": "Resource Type definition for AWS::Backup::BackupPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html)", "allOf": [ { "type": "object", @@ -12870,14 +12785,14 @@ "Type": { "type": "string", "enum": [ - "AWS::APS::Scraper" + "AWS::Backup::BackupPlan" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::APS::Scraper \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-scraper.html)" + "Resource Type definition for AWS::Backup::BackupPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html)" ] }, "Properties": { - "$ref": "resources/aws-aps-scraper.json" + "$ref": "resources/aws-backup-backupplan.json" } }, "required": [ @@ -12891,9 +12806,9 @@ ], "additionalProperties": false }, - "AWS_Inspector_AssessmentTarget": { + "AWS_S3_AccessPoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Inspector::AssessmentTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html)", + "markdownDescription": "The AWS::S3::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html)", "allOf": [ { "type": "object", @@ -12901,18 +12816,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Inspector::AssessmentTarget" + "AWS::S3::AccessPoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Inspector::AssessmentTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html)" + "The AWS::S3::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html)" ] }, "Properties": { - "$ref": "resources/aws-inspector-assessmenttarget.json" + "$ref": "resources/aws-s3-accesspoint.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -12921,9 +12837,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_VPCConnection": { + "AWS_IoT_Authorizer": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::VPCConnection Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-vpcconnection.html)", + "markdownDescription": "Creates an authorizer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html)", "allOf": [ { "type": "object", @@ -12931,18 +12847,19 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::VPCConnection" + "AWS::IoT::Authorizer" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::VPCConnection Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-vpcconnection.html)" + "Creates an authorizer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-vpcconnection.json" + "$ref": "resources/aws-iot-authorizer.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -12951,9 +12868,9 @@ ], "additionalProperties": false }, - "AWS_SQS_QueuePolicy": { + "AWS_NeptuneGraph_PrivateGraphEndpoint": { "type": "object", - "markdownDescription": "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queuepolicy.html)", + "markdownDescription": "The AWS::NeptuneGraph::PrivateGraphEndpoint resource creates an Amazon NeptuneGraph PrivateGraphEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-privategraphendpoint.html)", "allOf": [ { "type": "object", @@ -12961,14 +12878,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SQS::QueuePolicy" + "AWS::NeptuneGraph::PrivateGraphEndpoint" ], "markdownEnumDescriptions": [ - "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queuepolicy.html)" + "The AWS::NeptuneGraph::PrivateGraphEndpoint resource creates an Amazon NeptuneGraph PrivateGraphEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-privategraphendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-sqs-queuepolicy.json" + "$ref": "resources/aws-neptunegraph-privategraphendpoint.json" } }, "required": [ @@ -12982,9 +12899,9 @@ ], "additionalProperties": false }, - "AWS_IoT_Dimension": { + "AWS_Cognito_UserPoolGroup": { "type": "object", - "markdownDescription": "A dimension can be used to limit the scope of a metric used in a security profile for AWS IoT Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html)", "allOf": [ { "type": "object", @@ -12992,14 +12909,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::Dimension" + "AWS::Cognito::UserPoolGroup" ], "markdownEnumDescriptions": [ - "A dimension can be used to limit the scope of a metric used in a security profile for AWS IoT Device Defender. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-dimension.html)" + "Resource Type definition for AWS::Cognito::UserPoolGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-dimension.json" + "$ref": "resources/aws-cognito-userpoolgroup.json" } }, "required": [ @@ -13013,9 +12930,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Database": { + "AWS_AppSync_ApiKey": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::ApiKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html)", "allOf": [ { "type": "object", @@ -13023,14 +12940,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Database" + "AWS::AppSync::ApiKey" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html)" + "Resource Type definition for AWS::AppSync::ApiKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-database.json" + "$ref": "resources/aws-appsync-apikey.json" } }, "required": [ @@ -13044,9 +12961,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_Project": { + "AWS_Deadline_StorageProfile": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html)", + "markdownDescription": "Definition of AWS::Deadline::StorageProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-storageprofile.html)", "allOf": [ { "type": "object", @@ -13054,14 +12971,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::Project" + "AWS::Deadline::StorageProfile" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html)" + "Definition of AWS::Deadline::StorageProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-storageprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-project.json" + "$ref": "resources/aws-deadline-storageprofile.json" } }, "required": [ @@ -13075,9 +12992,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_GlobalNetwork": { + "AWS_ElasticBeanstalk_Application": { "type": "object", - "markdownDescription": "The AWS::NetworkManager::GlobalNetwork type specifies a global network of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-globalnetwork.html)", + "markdownDescription": "The AWS::ElasticBeanstalk::Application resource specifies an Elastic Beanstalk application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-application.html)", "allOf": [ { "type": "object", @@ -13085,14 +13002,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::GlobalNetwork" + "AWS::ElasticBeanstalk::Application" ], "markdownEnumDescriptions": [ - "The AWS::NetworkManager::GlobalNetwork type specifies a global network of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-globalnetwork.html)" + "The AWS::ElasticBeanstalk::Application resource specifies an Elastic Beanstalk application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-application.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-globalnetwork.json" + "$ref": "resources/aws-elasticbeanstalk-application.json" } }, "required": [ @@ -13105,9 +13022,9 @@ ], "additionalProperties": false }, - "AWS_Connect_Instance": { + "AWS_CleanRooms_IdNamespaceAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instance.html)", + "markdownDescription": "Represents an association between an ID namespace and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idnamespaceassociation.html)", "allOf": [ { "type": "object", @@ -13115,14 +13032,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::Instance" + "AWS::CleanRooms::IdNamespaceAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instance.html)" + "Represents an association between an ID namespace and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idnamespaceassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-instance.json" + "$ref": "resources/aws-cleanrooms-idnamespaceassociation.json" } }, "required": [ @@ -13136,9 +13053,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_GeoMatchSet": { + "AWS_RDS_DBShardGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::GeoMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html)", + "markdownDescription": "Creates a new DB shard group for Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.\n Valid for: Aurora DB clusters only \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbshardgroup.html)", "allOf": [ { "type": "object", @@ -13146,14 +13063,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::GeoMatchSet" + "AWS::RDS::DBShardGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::GeoMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html)" + "Creates a new DB shard group for Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.\n Valid for: Aurora DB clusters only \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbshardgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-geomatchset.json" + "$ref": "resources/aws-rds-dbshardgroup.json" } }, "required": [ @@ -13167,9 +13084,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_Macro": { + "AWS_AppSync_GraphQLApi": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudFormation::Macro \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::GraphQLApi \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html)", "allOf": [ { "type": "object", @@ -13177,14 +13094,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::Macro" + "AWS::AppSync::GraphQLApi" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudFormation::Macro \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html)" + "Resource Type definition for AWS::AppSync::GraphQLApi \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-macro.json" + "$ref": "resources/aws-appsync-graphqlapi.json" } }, "required": [ @@ -13198,9 +13115,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_DataAutomationProject": { + "AWS_Connect_Prompt": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::DataAutomationProject Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-dataautomationproject.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::Prompt \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-prompt.html)", "allOf": [ { "type": "object", @@ -13208,14 +13125,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::DataAutomationProject" + "AWS::Connect::Prompt" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::DataAutomationProject Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-dataautomationproject.html)" + "Resource Type definition for AWS::Connect::Prompt \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-prompt.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-dataautomationproject.json" + "$ref": "resources/aws-connect-prompt.json" } }, "required": [ @@ -13229,9 +13146,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Schema": { + "AWS_EntityResolution_PolicyStatement": { "type": "object", - "markdownDescription": "This resource represents a schema of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html)", + "markdownDescription": "Policy Statement defined in AWS Entity Resolution Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-policystatement.html)", "allOf": [ { "type": "object", @@ -13239,14 +13156,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Schema" + "AWS::EntityResolution::PolicyStatement" ], "markdownEnumDescriptions": [ - "This resource represents a schema of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html)" + "Policy Statement defined in AWS Entity Resolution Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-policystatement.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-schema.json" + "$ref": "resources/aws-entityresolution-policystatement.json" } }, "required": [ @@ -13260,9 +13177,9 @@ ], "additionalProperties": false }, - "AWS_EC2_EnclaveCertificateIamRoleAssociation": { + "AWS_Lex_Bot": { "type": "object", - "markdownDescription": "Associates an AWS Identity and Access Management (IAM) role with an AWS Certificate Manager (ACM) certificate. This association is based on Amazon Resource Names and it enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-enclavecertificateiamroleassociation.html)", + "markdownDescription": "Amazon Lex conversational bot performing automated tasks such as ordering a pizza, booking a hotel, and so on. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-bot.html)", "allOf": [ { "type": "object", @@ -13270,14 +13187,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::EnclaveCertificateIamRoleAssociation" + "AWS::Lex::Bot" ], "markdownEnumDescriptions": [ - "Associates an AWS Identity and Access Management (IAM) role with an AWS Certificate Manager (ACM) certificate. This association is based on Amazon Resource Names and it enables the certificate to be used by the ACM for Nitro Enclaves application inside an enclave. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-enclavecertificateiamroleassociation.html)" + "Amazon Lex conversational bot performing automated tasks such as ordering a pizza, booking a hotel, and so on. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-bot.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-enclavecertificateiamroleassociation.json" + "$ref": "resources/aws-lex-bot.json" } }, "required": [ @@ -13291,9 +13208,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_Function": { + "AWS_SSMIncidents_ResponsePlan": { "type": "object", - "markdownDescription": "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties.\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html)LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html)", + "markdownDescription": "Resource type definition for AWS::SSMIncidents::ResponsePlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-responseplan.html)", "allOf": [ { "type": "object", @@ -13301,14 +13218,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::Function" + "AWS::SSMIncidents::ResponsePlan" ], "markdownEnumDescriptions": [ - "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties.\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html)LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html)" + "Resource type definition for AWS::SSMIncidents::ResponsePlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-responseplan.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-function.json" + "$ref": "resources/aws-ssmincidents-responseplan.json" } }, "required": [ @@ -13322,9 +13239,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryReadiness_ReadinessCheck": { + "AWS_Detective_OrganizationAdmin": { "type": "object", - "markdownDescription": "Aws Route53 Recovery Readiness Check Schema and API specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-readinesscheck.html)", + "markdownDescription": "Resource schema for AWS::Detective::OrganizationAdmin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-organizationadmin.html)", "allOf": [ { "type": "object", @@ -13332,14 +13249,76 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryReadiness::ReadinessCheck" + "AWS::Detective::OrganizationAdmin" ], "markdownEnumDescriptions": [ - "Aws Route53 Recovery Readiness Check Schema and API specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-readinesscheck.html)" + "Resource schema for AWS::Detective::OrganizationAdmin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-organizationadmin.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoveryreadiness-readinesscheck.json" + "$ref": "resources/aws-detective-organizationadmin.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Connect_InstanceStorageConfig": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Connect::InstanceStorageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instancestorageconfig.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Connect::InstanceStorageConfig" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Connect::InstanceStorageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instancestorageconfig.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-connect-instancestorageconfig.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_BackupGateway_Hypervisor": { + "type": "object", + "markdownDescription": "Definition of AWS::BackupGateway::Hypervisor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backupgateway-hypervisor.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::BackupGateway::Hypervisor" + ], + "markdownEnumDescriptions": [ + "Definition of AWS::BackupGateway::Hypervisor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backupgateway-hypervisor.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-backupgateway-hypervisor.json" } }, "required": [ @@ -13352,9 +13331,9 @@ ], "additionalProperties": false }, - "AWS_S3_StorageLensGroup": { + "AWS_ApiGateway_RequestValidator": { "type": "object", - "markdownDescription": "The AWS::S3::StorageLensGroup resource is an Amazon S3 resource type that you can use to create Storage Lens Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelensgroup.html)", + "markdownDescription": "The ``AWS::ApiGateway::RequestValidator`` resource sets up basic validation rules for incoming requests to your API. For more information, see [Enable Basic Request Validation for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html)", "allOf": [ { "type": "object", @@ -13362,14 +13341,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::StorageLensGroup" + "AWS::ApiGateway::RequestValidator" ], "markdownEnumDescriptions": [ - "The AWS::S3::StorageLensGroup resource is an Amazon S3 resource type that you can use to create Storage Lens Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelensgroup.html)" + "The ``AWS::ApiGateway::RequestValidator`` resource sets up basic validation rules for incoming requests to your API. For more information, see [Enable Basic Request Validation for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-storagelensgroup.json" + "$ref": "resources/aws-apigateway-requestvalidator.json" } }, "required": [ @@ -13383,9 +13362,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_EventStream": { + "AWS_Logs_Destination": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::EventStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html)", + "markdownDescription": "The AWS::Logs::Destination resource specifies a CloudWatch Logs destination. A destination encapsulates a physical resource (such as an Amazon Kinesis data stream) and enables you to subscribe that resource to a stream of log events. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html)", "allOf": [ { "type": "object", @@ -13393,14 +13372,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::EventStream" + "AWS::Logs::Destination" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::EventStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html)" + "The AWS::Logs::Destination resource specifies a CloudWatch Logs destination. A destination encapsulates a physical resource (such as an Amazon Kinesis data stream) and enables you to subscribe that resource to a stream of log events. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-eventstream.json" + "$ref": "resources/aws-logs-destination.json" } }, "required": [ @@ -13414,9 +13393,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_ResourceDefinitionVersion": { + "AWS_Rekognition_Project": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::ResourceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html)", + "markdownDescription": "The AWS::Rekognition::Project type creates an Amazon Rekognition CustomLabels Project. A project is a grouping of the resources needed to create and manage Dataset and ProjectVersions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-project.html)", "allOf": [ { "type": "object", @@ -13424,14 +13403,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::ResourceDefinitionVersion" + "AWS::Rekognition::Project" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::ResourceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinitionversion.html)" + "The AWS::Rekognition::Project type creates an Amazon Rekognition CustomLabels Project. A project is a grouping of the resources needed to create and manage Dataset and ProjectVersions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-project.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-resourcedefinitionversion.json" + "$ref": "resources/aws-rekognition-project.json" } }, "required": [ @@ -13445,9 +13424,9 @@ ], "additionalProperties": false }, - "AWS_IoTEvents_AlarmModel": { + "AWS_ServiceCatalogAppRegistry_AttributeGroupAssociation": { "type": "object", - "markdownDescription": "Represents an alarm model to monitor an ITE input attribute. You can use the alarm to get notified when the value is outside a specified range. For more information, see [Create an alarm model](https://docs.aws.amazon.com/iotevents/latest/developerguide/create-alarms.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-alarmmodel.html)", + "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroupassociation.html)", "allOf": [ { "type": "object", @@ -13455,14 +13434,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTEvents::AlarmModel" + "AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation" ], "markdownEnumDescriptions": [ - "Represents an alarm model to monitor an ITE input attribute. You can use the alarm to get notified when the value is outside a specified range. For more information, see [Create an alarm model](https://docs.aws.amazon.com/iotevents/latest/developerguide/create-alarms.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-alarmmodel.html)" + "Resource Schema for AWS::ServiceCatalogAppRegistry::AttributeGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-attributegroupassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-iotevents-alarmmodel.json" + "$ref": "resources/aws-servicecatalogappregistry-attributegroupassociation.json" } }, "required": [ @@ -13476,9 +13455,9 @@ ], "additionalProperties": false }, - "AWS_Backup_RestoreTestingPlan": { + "AWS_ElasticLoadBalancingV2_Listener": { "type": "object", - "markdownDescription": "Definition of AWS::Backup::RestoreTestingPlan Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingplan.html)", + "markdownDescription": "Specifies a listener for an Application Load Balancer, Network Load Balancer, or Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html)", "allOf": [ { "type": "object", @@ -13486,14 +13465,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::RestoreTestingPlan" + "AWS::ElasticLoadBalancingV2::Listener" ], "markdownEnumDescriptions": [ - "Definition of AWS::Backup::RestoreTestingPlan Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingplan.html)" + "Specifies a listener for an Application Load Balancer, Network Load Balancer, or Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-restoretestingplan.json" + "$ref": "resources/aws-elasticloadbalancingv2-listener.json" } }, "required": [ @@ -13507,9 +13486,9 @@ ], "additionalProperties": false }, - "AWS_FSx_StorageVirtualMachine": { + "AWS_IoT_ThingPrincipalAttachment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::FSx::StorageVirtualMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-storagevirtualmachine.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::ThingPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html)", "allOf": [ { "type": "object", @@ -13517,14 +13496,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FSx::StorageVirtualMachine" + "AWS::IoT::ThingPrincipalAttachment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::FSx::StorageVirtualMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-storagevirtualmachine.html)" + "Resource Type definition for AWS::IoT::ThingPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-fsx-storagevirtualmachine.json" + "$ref": "resources/aws-iot-thingprincipalattachment.json" } }, "required": [ @@ -13538,9 +13517,9 @@ ], "additionalProperties": false }, - "AWS_CloudWatch_CompositeAlarm": { + "AWS_Config_OrganizationConformancePack": { "type": "object", - "markdownDescription": "The AWS::CloudWatch::CompositeAlarm type specifies an alarm which aggregates the states of other Alarms (Metric or Composite Alarms) as defined by the AlarmRule expression \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html)", + "markdownDescription": "Resource schema for AWS::Config::OrganizationConformancePack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html)", "allOf": [ { "type": "object", @@ -13548,14 +13527,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudWatch::CompositeAlarm" + "AWS::Config::OrganizationConformancePack" ], "markdownEnumDescriptions": [ - "The AWS::CloudWatch::CompositeAlarm type specifies an alarm which aggregates the states of other Alarms (Metric or Composite Alarms) as defined by the AlarmRule expression \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html)" + "Resource schema for AWS::Config::OrganizationConformancePack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudwatch-compositealarm.json" + "$ref": "resources/aws-config-organizationconformancepack.json" } }, "required": [ @@ -13569,9 +13548,9 @@ ], "additionalProperties": false }, - "AWS_SES_VdmAttributes": { + "AWS_Inspector_AssessmentTarget": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::VdmAttributes \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-vdmattributes.html)", + "markdownDescription": "Resource Type definition for AWS::Inspector::AssessmentTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html)", "allOf": [ { "type": "object", @@ -13579,14 +13558,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::VdmAttributes" + "AWS::Inspector::AssessmentTarget" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::VdmAttributes \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-vdmattributes.html)" + "Resource Type definition for AWS::Inspector::AssessmentTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttarget.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-vdmattributes.json" + "$ref": "resources/aws-inspector-assessmenttarget.json" } }, "required": [ @@ -13599,9 +13578,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_StreamingDistribution": { + "AWS_Route53RecoveryControl_ControlPanel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudFront::StreamingDistribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html)", + "markdownDescription": "AWS Route53 Recovery Control Control Panel resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-controlpanel.html)", "allOf": [ { "type": "object", @@ -13609,14 +13588,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::StreamingDistribution" + "AWS::Route53RecoveryControl::ControlPanel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudFront::StreamingDistribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html)" + "AWS Route53 Recovery Control Control Panel resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-controlpanel.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-streamingdistribution.json" + "$ref": "resources/aws-route53recoverycontrol-controlpanel.json" } }, "required": [ @@ -13630,9 +13609,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_Monitor": { + "AWS_Connect_Instance": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::Monitor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-monitor.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instance.html)", "allOf": [ { "type": "object", @@ -13640,14 +13619,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::Monitor" + "AWS::Connect::Instance" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::Monitor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-monitor.html)" + "Resource Type definition for AWS::Connect::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instance.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-monitor.json" + "$ref": "resources/aws-connect-instance.json" } }, "required": [ @@ -13661,9 +13640,9 @@ ], "additionalProperties": false }, - "AWS_APS_Workspace": { + "AWS_EC2_CapacityReservation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::APS::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-workspace.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html)", "allOf": [ { "type": "object", @@ -13671,18 +13650,19 @@ "Type": { "type": "string", "enum": [ - "AWS::APS::Workspace" + "AWS::EC2::CapacityReservation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::APS::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-workspace.html)" + "Resource Type definition for AWS::EC2::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html)" ] }, "Properties": { - "$ref": "resources/aws-aps-workspace.json" + "$ref": "resources/aws-ec2-capacityreservation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -13691,9 +13671,9 @@ ], "additionalProperties": false }, - "AWS_Location_TrackerConsumer": { + "AWS_Evidently_Segment": { "type": "object", - "markdownDescription": "Definition of AWS::Location::TrackerConsumer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-trackerconsumer.html)", + "markdownDescription": "Resource Type definition for AWS::Evidently::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-segment.html)", "allOf": [ { "type": "object", @@ -13701,14 +13681,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Location::TrackerConsumer" + "AWS::Evidently::Segment" ], "markdownEnumDescriptions": [ - "Definition of AWS::Location::TrackerConsumer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-trackerconsumer.html)" + "Resource Type definition for AWS::Evidently::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-segment.html)" ] }, "Properties": { - "$ref": "resources/aws-location-trackerconsumer.json" + "$ref": "resources/aws-evidently-segment.json" } }, "required": [ @@ -13722,9 +13702,9 @@ ], "additionalProperties": false }, - "AWS_Timestream_InfluxDBInstance": { + "AWS_Glue_SecurityConfiguration": { "type": "object", - "markdownDescription": "The AWS::Timestream::InfluxDBInstance resource creates an InfluxDB instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::SecurityConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html)", "allOf": [ { "type": "object", @@ -13732,18 +13712,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Timestream::InfluxDBInstance" + "AWS::Glue::SecurityConfiguration" ], "markdownEnumDescriptions": [ - "The AWS::Timestream::InfluxDBInstance resource creates an InfluxDB instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html)" + "Resource Type definition for AWS::Glue::SecurityConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-timestream-influxdbinstance.json" + "$ref": "resources/aws-glue-securityconfiguration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -13752,9 +13733,9 @@ ], "additionalProperties": false }, - "AWS_CustomerProfiles_SegmentDefinition": { + "AWS_Wisdom_AIAgentVersion": { "type": "object", - "markdownDescription": "A segment definition resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-segmentdefinition.html)", + "markdownDescription": "Definition of AWS::Wisdom::AIAgentVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagentversion.html)", "allOf": [ { "type": "object", @@ -13762,14 +13743,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CustomerProfiles::SegmentDefinition" + "AWS::Wisdom::AIAgentVersion" ], "markdownEnumDescriptions": [ - "A segment definition resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-segmentdefinition.html)" + "Definition of AWS::Wisdom::AIAgentVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagentversion.html)" ] }, "Properties": { - "$ref": "resources/aws-customerprofiles-segmentdefinition.json" + "$ref": "resources/aws-wisdom-aiagentversion.json" } }, "required": [ @@ -13783,9 +13764,9 @@ ], "additionalProperties": false }, - "AWS_CustomerProfiles_ObjectType": { + "AWS_Wisdom_AIPrompt": { "type": "object", - "markdownDescription": "An ObjectType resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html)", + "markdownDescription": "Definition of AWS::Wisdom::AIPrompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiprompt.html)", "allOf": [ { "type": "object", @@ -13793,14 +13774,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CustomerProfiles::ObjectType" + "AWS::Wisdom::AIPrompt" ], "markdownEnumDescriptions": [ - "An ObjectType resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-objecttype.html)" + "Definition of AWS::Wisdom::AIPrompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiprompt.html)" ] }, "Properties": { - "$ref": "resources/aws-customerprofiles-objecttype.json" + "$ref": "resources/aws-wisdom-aiprompt.json" } }, "required": [ @@ -13814,9 +13795,9 @@ ], "additionalProperties": false }, - "AWS_BillingConductor_PricingRule": { + "AWS_VerifiedPermissions_Policy": { "type": "object", - "markdownDescription": "A markup/discount that is defined for a specific set of services that can later be associated with a pricing plan. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html)", + "markdownDescription": "Definition of AWS::VerifiedPermissions::Policy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policy.html)", "allOf": [ { "type": "object", @@ -13824,14 +13805,14 @@ "Type": { "type": "string", "enum": [ - "AWS::BillingConductor::PricingRule" + "AWS::VerifiedPermissions::Policy" ], "markdownEnumDescriptions": [ - "A markup/discount that is defined for a specific set of services that can later be associated with a pricing plan. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html)" + "Definition of AWS::VerifiedPermissions::Policy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policy.html)" ] }, "Properties": { - "$ref": "resources/aws-billingconductor-pricingrule.json" + "$ref": "resources/aws-verifiedpermissions-policy.json" } }, "required": [ @@ -13845,9 +13826,9 @@ ], "additionalProperties": false }, - "AWS_EntityResolution_IdNamespace": { + "AWS_KMS_Key": { "type": "object", - "markdownDescription": "IdNamespace defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idnamespace.html)", + "markdownDescription": "The ``AWS::KMS::Key`` resource specifies an [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys) in KMSlong. You can use this resource to create symmetric encryption KMS keys, asymmetric KMS keys for encryption or signing, and symmetric HMAC KMS keys. You can use ``AWS::KMS::Key`` to create [multi-Region primary keys](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html#mrk-primary-key) of all supported types. To replicate a multi-Region key, use the ``AWS::KMS::ReplicaKey`` resource.\n If you change the value of the ``KeySpec``, ``KeyUsage``, ``Origin``, or ``MultiRegion`` properties of an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing any of its immutable property values.\n KMS replaced the term *customer master key (CMK)* with ** and *KMS key*. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.\n You can use symmetric encryption KMS keys to encrypt and decrypt small amounts of data, but they are more commonly used to generate data keys and data key pairs. You can also use a symmetric encryption KMS key to encrypt data stored in AWS services that are [integrated with](https://docs.aws.amazon.com//kms/features/#AWS_Service_Integration). For more information, see [Symmetric encryption KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks) in the *Developer Guide*.\n You can use asymmetric KMS keys to encrypt and decrypt data or sign messages and verify signatures. To create an asymmetric key, you must specify an asymmetric ``KeySpec`` value and a ``KeyUsage`` value. For details, see [Asymmetric keys in](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) in the *Developer Guide*.\n You can use HMAC KMS keys (which are also symmetric keys) to generate and verify hash-based message authentication codes. To create an HMAC key, you must specify an HMAC ``KeySpec`` value and a ``KeyUsage`` value of ``GENERATE_VERIFY_MAC``. For details, see [HMAC keys in](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) in the *Developer Guide*.\n You can also create symmetric encryption, asymmetric, and HMAC multi-Region primary keys. To create a multi-Region primary key, set the ``MultiRegion`` property to ``true``. For information about multi-Region keys, see [Multi-Region keys in](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) in the *Developer Guide*.\n You cannot use the ``AWS::KMS::Key`` resource to specify a KMS key with [imported key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) or a KMS key in a [custom key store](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html).\n *Regions* \n KMS CloudFormation resources are available in all Regions in which KMS and CFN are supported. You can use the ``AWS::KMS::Key`` resource to create and manage all KMS key types that are supported in a Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html)", "allOf": [ { "type": "object", @@ -13855,19 +13836,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EntityResolution::IdNamespace" + "AWS::KMS::Key" ], "markdownEnumDescriptions": [ - "IdNamespace defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idnamespace.html)" + "The ``AWS::KMS::Key`` resource specifies an [KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys) in KMSlong. You can use this resource to create symmetric encryption KMS keys, asymmetric KMS keys for encryption or signing, and symmetric HMAC KMS keys. You can use ``AWS::KMS::Key`` to create [multi-Region primary keys](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html#mrk-primary-key) of all supported types. To replicate a multi-Region key, use the ``AWS::KMS::ReplicaKey`` resource.\n If you change the value of the ``KeySpec``, ``KeyUsage``, ``Origin``, or ``MultiRegion`` properties of an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing any of its immutable property values.\n KMS replaced the term *customer master key (CMK)* with ** and *KMS key*. The concept has not changed. To prevent breaking changes, KMS is keeping some variations of this term.\n You can use symmetric encryption KMS keys to encrypt and decrypt small amounts of data, but they are more commonly used to generate data keys and data key pairs. You can also use a symmetric encryption KMS key to encrypt data stored in AWS services that are [integrated with](https://docs.aws.amazon.com//kms/features/#AWS_Service_Integration). For more information, see [Symmetric encryption KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks) in the *Developer Guide*.\n You can use asymmetric KMS keys to encrypt and decrypt data or sign messages and verify signatures. To create an asymmetric key, you must specify an asymmetric ``KeySpec`` value and a ``KeyUsage`` value. For details, see [Asymmetric keys in](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) in the *Developer Guide*.\n You can use HMAC KMS keys (which are also symmetric keys) to generate and verify hash-based message authentication codes. To create an HMAC key, you must specify an HMAC ``KeySpec`` value and a ``KeyUsage`` value of ``GENERATE_VERIFY_MAC``. For details, see [HMAC keys in](https://docs.aws.amazon.com/kms/latest/developerguide/hmac.html) in the *Developer Guide*.\n You can also create symmetric encryption, asymmetric, and HMAC multi-Region primary keys. To create a multi-Region primary key, set the ``MultiRegion`` property to ``true``. For information about multi-Region keys, see [Multi-Region keys in](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) in the *Developer Guide*.\n You cannot use the ``AWS::KMS::Key`` resource to specify a KMS key with [imported key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) or a KMS key in a [custom key store](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html).\n *Regions* \n KMS CloudFormation resources are available in all Regions in which KMS and CFN are supported. You can use the ``AWS::KMS::Key`` resource to create and manage all KMS key types that are supported in a Region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html)" ] }, "Properties": { - "$ref": "resources/aws-entityresolution-idnamespace.json" + "$ref": "resources/aws-kms-key.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -13876,9 +13856,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_IPSet": { + "AWS_IoTSiteWise_AssetModel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::AssetModel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html)", "allOf": [ { "type": "object", @@ -13886,14 +13866,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::IPSet" + "AWS::IoTSiteWise::AssetModel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html)" + "Resource schema for AWS::IoTSiteWise::AssetModel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-ipset.json" + "$ref": "resources/aws-iotsitewise-assetmodel.json" } }, "required": [ @@ -13907,9 +13887,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_Authorizer": { + "AWS_GuardDuty_Detector": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html)", + "markdownDescription": "Resource Type definition for AWS::GuardDuty::Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html)", "allOf": [ { "type": "object", @@ -13917,14 +13897,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::Authorizer" + "AWS::GuardDuty::Detector" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::Authorizer`` resource creates an authorization layer that API Gateway activates for methods that have authorization enabled. API Gateway activates the authorizer when a client calls those methods. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html)" + "Resource Type definition for AWS::GuardDuty::Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-authorizer.json" + "$ref": "resources/aws-guardduty-detector.json" } }, "required": [ @@ -13938,9 +13918,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolResourceServer": { + "AWS_WAFRegional_SizeConstraintSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolResourceServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html)", "allOf": [ { "type": "object", @@ -13948,14 +13928,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolResourceServer" + "AWS::WAFRegional::SizeConstraintSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolResourceServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html)" + "Resource Type definition for AWS::WAFRegional::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpoolresourceserver.json" + "$ref": "resources/aws-wafregional-sizeconstraintset.json" } }, "required": [ @@ -13969,9 +13949,9 @@ ], "additionalProperties": false }, - "AWS_M2_Environment": { + "AWS_AuditManager_Assessment": { "type": "object", - "markdownDescription": "Represents a runtime environment that can run migrated mainframe applications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-environment.html)", + "markdownDescription": "An entity that defines the scope of audit evidence collected by AWS Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html)", "allOf": [ { "type": "object", @@ -13979,19 +13959,18 @@ "Type": { "type": "string", "enum": [ - "AWS::M2::Environment" + "AWS::AuditManager::Assessment" ], "markdownEnumDescriptions": [ - "Represents a runtime environment that can run migrated mainframe applications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-environment.html)" + "An entity that defines the scope of audit evidence collected by AWS Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html)" ] }, "Properties": { - "$ref": "resources/aws-m2-environment.json" + "$ref": "resources/aws-auditmanager-assessment.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -14000,9 +13979,9 @@ ], "additionalProperties": false }, - "AWS_AppMesh_VirtualRouter": { + "AWS_Omics_VariantStore": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualRouter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html)", + "markdownDescription": "Definition of AWS::Omics::VariantStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-variantstore.html)", "allOf": [ { "type": "object", @@ -14010,14 +13989,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppMesh::VirtualRouter" + "AWS::Omics::VariantStore" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppMesh::VirtualRouter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html)" + "Definition of AWS::Omics::VariantStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-variantstore.html)" ] }, "Properties": { - "$ref": "resources/aws-appmesh-virtualrouter.json" + "$ref": "resources/aws-omics-variantstore.json" } }, "required": [ @@ -14031,9 +14010,9 @@ ], "additionalProperties": false }, - "AWS_Connect_UserHierarchyStructure": { + "AWS_Backup_Framework": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::UserHierarchyStructure \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchystructure.html)", + "markdownDescription": "Contains detailed information about a framework. Frameworks contain controls, which evaluate and report on your backup events and resources. Frameworks generate daily compliance results. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-framework.html)", "allOf": [ { "type": "object", @@ -14041,14 +14020,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::UserHierarchyStructure" + "AWS::Backup::Framework" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::UserHierarchyStructure \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchystructure.html)" + "Contains detailed information about a framework. Frameworks contain controls, which evaluate and report on your backup events and resources. Frameworks generate daily compliance results. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-framework.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-userhierarchystructure.json" + "$ref": "resources/aws-backup-framework.json" } }, "required": [ @@ -14062,9 +14041,9 @@ ], "additionalProperties": false }, - "AWS_EC2_Host": { + "AWS_Logs_Delivery": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::Host \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html)", + "markdownDescription": "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-delivery.html)", "allOf": [ { "type": "object", @@ -14072,14 +14051,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::Host" + "AWS::Logs::Delivery" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::Host \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html)" + "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-delivery.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-host.json" + "$ref": "resources/aws-logs-delivery.json" } }, "required": [ @@ -14093,9 +14072,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_Group": { + "AWS_Connect_TaskTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::TaskTemplate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-tasktemplate.html)", "allOf": [ { "type": "object", @@ -14103,14 +14082,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::Group" + "AWS::Connect::TaskTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-group.html)" + "Resource Type definition for AWS::Connect::TaskTemplate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-tasktemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-group.json" + "$ref": "resources/aws-connect-tasktemplate.json" } }, "required": [ @@ -14124,9 +14103,9 @@ ], "additionalProperties": false }, - "AWS_IoT_Authorizer": { + "AWS_Forecast_Dataset": { "type": "object", - "markdownDescription": "Creates an authorizer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html)", + "markdownDescription": "Resource Type Definition for AWS::Forecast::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-dataset.html)", "allOf": [ { "type": "object", @@ -14134,14 +14113,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::Authorizer" + "AWS::Forecast::Dataset" ], "markdownEnumDescriptions": [ - "Creates an authorizer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-authorizer.html)" + "Resource Type Definition for AWS::Forecast::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-dataset.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-authorizer.json" + "$ref": "resources/aws-forecast-dataset.json" } }, "required": [ @@ -14155,9 +14134,9 @@ ], "additionalProperties": false }, - "AWS_WAF_SizeConstraintSet": { + "AWS_ElasticBeanstalk_ApplicationVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAF::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html)", + "markdownDescription": "Resource Type definition for AWS::ElasticBeanstalk::ApplicationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-applicationversion.html)", "allOf": [ { "type": "object", @@ -14165,14 +14144,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAF::SizeConstraintSet" + "AWS::ElasticBeanstalk::ApplicationVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAF::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html)" + "Resource Type definition for AWS::ElasticBeanstalk::ApplicationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-applicationversion.html)" ] }, "Properties": { - "$ref": "resources/aws-waf-sizeconstraintset.json" + "$ref": "resources/aws-elasticbeanstalk-applicationversion.json" } }, "required": [ @@ -14186,9 +14165,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_Blueprint": { + "AWS_Logs_ResourcePolicy": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::Blueprint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-blueprint.html)", + "markdownDescription": "The resource schema for AWSLogs ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -14196,14 +14175,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::Blueprint" + "AWS::Logs::ResourcePolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::Blueprint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-blueprint.html)" + "The resource schema for AWSLogs ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-blueprint.json" + "$ref": "resources/aws-logs-resourcepolicy.json" } }, "required": [ @@ -14217,9 +14196,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VerifiedAccessEndpoint": { + "AWS_EventSchemas_Discoverer": { "type": "object", - "markdownDescription": "The AWS::EC2::VerifiedAccessEndpoint resource creates an AWS EC2 Verified Access Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html)", + "markdownDescription": "Resource Type definition for AWS::EventSchemas::Discoverer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-discoverer.html)", "allOf": [ { "type": "object", @@ -14227,14 +14206,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VerifiedAccessEndpoint" + "AWS::EventSchemas::Discoverer" ], "markdownEnumDescriptions": [ - "The AWS::EC2::VerifiedAccessEndpoint resource creates an AWS EC2 Verified Access Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html)" + "Resource Type definition for AWS::EventSchemas::Discoverer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-discoverer.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-verifiedaccessendpoint.json" + "$ref": "resources/aws-eventschemas-discoverer.json" } }, "required": [ @@ -14248,9 +14227,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_Dashboard": { + "AWS_APS_Scraper": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::Dashboard Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html)", + "markdownDescription": "Resource Type definition for AWS::APS::Scraper \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-scraper.html)", "allOf": [ { "type": "object", @@ -14258,14 +14237,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::Dashboard" + "AWS::APS::Scraper" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::Dashboard Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html)" + "Resource Type definition for AWS::APS::Scraper \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-scraper.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-dashboard.json" + "$ref": "resources/aws-aps-scraper.json" } }, "required": [ @@ -14310,9 +14289,9 @@ ], "additionalProperties": false }, - "AWS_ACMPCA_Certificate": { + "AWS_ServiceCatalogAppRegistry_Application": { "type": "object", - "markdownDescription": "The ``AWS::ACMPCA::Certificate`` resource is used to issue a certificate using your private certificate authority. For more information, see the [IssueCertificate](https://docs.aws.amazon.com/privateca/latest/APIReference/API_IssueCertificate.html) action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html)", + "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html)", "allOf": [ { "type": "object", @@ -14320,14 +14299,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ACMPCA::Certificate" + "AWS::ServiceCatalogAppRegistry::Application" ], "markdownEnumDescriptions": [ - "The ``AWS::ACMPCA::Certificate`` resource is used to issue a certificate using your private certificate authority. For more information, see the [IssueCertificate](https://docs.aws.amazon.com/privateca/latest/APIReference/API_IssueCertificate.html) action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html)" + "Resource Schema for AWS::ServiceCatalogAppRegistry::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html)" ] }, "Properties": { - "$ref": "resources/aws-acmpca-certificate.json" + "$ref": "resources/aws-servicecatalogappregistry-application.json" } }, "required": [ @@ -14341,9 +14320,9 @@ ], "additionalProperties": false }, - "AWS_CertificateManager_Account": { + "AWS_CloudFormation_HookTypeConfig": { "type": "object", - "markdownDescription": "Resource schema for AWS::CertificateManager::Account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-account.html)", + "markdownDescription": "Specifies the configuration data for a registered hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html)", "allOf": [ { "type": "object", @@ -14351,19 +14330,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CertificateManager::Account" + "AWS::CloudFormation::HookTypeConfig" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::CertificateManager::Account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-account.html)" + "Specifies the configuration data for a registered hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-certificatemanager-account.json" + "$ref": "resources/aws-cloudformation-hooktypeconfig.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -14372,9 +14350,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_ClusterParameterGroup": { + "AWS_CloudFormation_CustomResource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Redshift::ClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html)", + "markdownDescription": "Resource Type definition for AWS::CloudFormation::CustomResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-customresource.html)", "allOf": [ { "type": "object", @@ -14382,14 +14360,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::ClusterParameterGroup" + "AWS::CloudFormation::CustomResource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Redshift::ClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html)" + "Resource Type definition for AWS::CloudFormation::CustomResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-customresource.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-clusterparametergroup.json" + "$ref": "resources/aws-cloudformation-customresource.json" } }, "required": [ @@ -14403,9 +14381,9 @@ ], "additionalProperties": false }, - "AWS_S3_StorageLens": { + "AWS_EC2_InternetGateway": { "type": "object", - "markdownDescription": "The AWS::S3::StorageLens resource is an Amazon S3 resource type that you can use to create Storage Lens configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html)", + "markdownDescription": "Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html)", "allOf": [ { "type": "object", @@ -14413,19 +14391,18 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::StorageLens" + "AWS::EC2::InternetGateway" ], "markdownEnumDescriptions": [ - "The AWS::S3::StorageLens resource is an Amazon S3 resource type that you can use to create Storage Lens configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html)" + "Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-storagelens.json" + "$ref": "resources/aws-ec2-internetgateway.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -14434,9 +14411,9 @@ ], "additionalProperties": false }, - "AWS_EC2_RouteServerPeer": { + "AWS_FSx_Volume": { "type": "object", - "markdownDescription": "VPC Route Server Peer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html)", + "markdownDescription": "Resource Type definition for AWS::FSx::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-volume.html)", "allOf": [ { "type": "object", @@ -14444,14 +14421,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::RouteServerPeer" + "AWS::FSx::Volume" ], "markdownEnumDescriptions": [ - "VPC Route Server Peer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html)" + "Resource Type definition for AWS::FSx::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-volume.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-routeserverpeer.json" + "$ref": "resources/aws-fsx-volume.json" } }, "required": [ @@ -14465,9 +14442,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_IntegrationResponse": { + "AWS_DataZone_Project": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::IntegrationResponse`` resource updates an integration response for an WebSocket API. For more information, see [Set up WebSocket API Integration Responses in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-integration-responses.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html)", + "markdownDescription": "Amazon DataZone projects are business use case\u2013based groupings of people, assets (data), and tools used to simplify access to the AWS analytics. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-project.html)", "allOf": [ { "type": "object", @@ -14475,14 +14452,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::IntegrationResponse" + "AWS::DataZone::Project" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::IntegrationResponse`` resource updates an integration response for an WebSocket API. For more information, see [Set up WebSocket API Integration Responses in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-integration-responses.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html)" + "Amazon DataZone projects are business use case\u2013based groupings of people, assets (data), and tools used to simplify access to the AWS analytics. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-project.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-integrationresponse.json" + "$ref": "resources/aws-datazone-project.json" } }, "required": [ @@ -14496,9 +14473,9 @@ ], "additionalProperties": false }, - "AWS_Athena_DataCatalog": { + "AWS_DMS_Endpoint": { "type": "object", - "markdownDescription": "Resource schema for AWS::Athena::DataCatalog \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html)", + "markdownDescription": "Resource Type definition for AWS::DMS::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html)", "allOf": [ { "type": "object", @@ -14506,14 +14483,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Athena::DataCatalog" + "AWS::DMS::Endpoint" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Athena::DataCatalog \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html)" + "Resource Type definition for AWS::DMS::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-athena-datacatalog.json" + "$ref": "resources/aws-dms-endpoint.json" } }, "required": [ @@ -14527,9 +14504,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Trigger": { + "AWS_IVS_PublicKey": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Trigger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::PublicKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-publickey.html)", "allOf": [ { "type": "object", @@ -14537,19 +14514,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Trigger" + "AWS::IVS::PublicKey" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Trigger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html)" + "Resource Type definition for AWS::IVS::PublicKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-publickey.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-trigger.json" + "$ref": "resources/aws-ivs-publickey.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -14558,9 +14534,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_InputSecurityGroup": { + "AWS_WorkspacesInstances_Volume": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MediaLive::InputSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html)", + "markdownDescription": "Resource Type definition for AWS::WorkspacesInstances::Volume - Manages WorkSpaces Volume resources \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volume.html)", "allOf": [ { "type": "object", @@ -14568,18 +14544,19 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::InputSecurityGroup" + "AWS::WorkspacesInstances::Volume" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MediaLive::InputSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html)" + "Resource Type definition for AWS::WorkspacesInstances::Volume - Manages WorkSpaces Volume resources \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volume.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-inputsecuritygroup.json" + "$ref": "resources/aws-workspacesinstances-volume.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -14588,9 +14565,9 @@ ], "additionalProperties": false }, - "AWS_IoT_AccountAuditConfiguration": { + "AWS_Budgets_Budget": { "type": "object", - "markdownDescription": "Configures the Device Defender audit settings for this account. Settings include how audit notifications are sent and which audit checks are enabled or disabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Budgets::Budget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html)", "allOf": [ { "type": "object", @@ -14598,14 +14575,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::AccountAuditConfiguration" + "AWS::Budgets::Budget" ], "markdownEnumDescriptions": [ - "Configures the Device Defender audit settings for this account. Settings include how audit notifications are sent and which audit checks are enabled or disabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html)" + "Resource Type definition for AWS::Budgets::Budget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-accountauditconfiguration.json" + "$ref": "resources/aws-budgets-budget.json" } }, "required": [ @@ -14619,9 +14596,9 @@ ], "additionalProperties": false }, - "AWS_Lex_Bot": { + "AWS_ApiGateway_Resource": { "type": "object", - "markdownDescription": "Amazon Lex conversational bot performing automated tasks such as ordering a pizza, booking a hotel, and so on. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-bot.html)", + "markdownDescription": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html)", "allOf": [ { "type": "object", @@ -14629,14 +14606,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lex::Bot" + "AWS::ApiGateway::Resource" ], "markdownEnumDescriptions": [ - "Amazon Lex conversational bot performing automated tasks such as ordering a pizza, booking a hotel, and so on. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-bot.html)" + "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html)" ] }, "Properties": { - "$ref": "resources/aws-lex-bot.json" + "$ref": "resources/aws-apigateway-resource.json" } }, "required": [ @@ -14650,9 +14627,9 @@ ], "additionalProperties": false }, - "AWS_KafkaConnect_CustomPlugin": { + "AWS_ECR_PullThroughCacheRule": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-customplugin.html)", + "markdownDescription": "The ``AWS::ECR::PullThroughCacheRule`` resource creates or updates a pull through cache rule. A pull through cache rule provides a way to cache images from an upstream registry in your Amazon ECR private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html)", "allOf": [ { "type": "object", @@ -14660,19 +14637,18 @@ "Type": { "type": "string", "enum": [ - "AWS::KafkaConnect::CustomPlugin" + "AWS::ECR::PullThroughCacheRule" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-customplugin.html)" + "The ``AWS::ECR::PullThroughCacheRule`` resource creates or updates a pull through cache rule. A pull through cache rule provides a way to cache images from an upstream registry in your Amazon ECR private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html)" ] }, "Properties": { - "$ref": "resources/aws-kafkaconnect-customplugin.json" + "$ref": "resources/aws-ecr-pullthroughcacherule.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -14681,9 +14657,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_EnvironmentBlueprintConfiguration": { + "AWS_Pinpoint_VoiceChannel": { "type": "object", - "markdownDescription": "Definition of AWS::DataZone::EnvironmentBlueprintConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentblueprintconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::VoiceChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html)", "allOf": [ { "type": "object", @@ -14691,14 +14667,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::EnvironmentBlueprintConfiguration" + "AWS::Pinpoint::VoiceChannel" ], "markdownEnumDescriptions": [ - "Definition of AWS::DataZone::EnvironmentBlueprintConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentblueprintconfiguration.html)" + "Resource Type definition for AWS::Pinpoint::VoiceChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-environmentblueprintconfiguration.json" + "$ref": "resources/aws-pinpoint-voicechannel.json" } }, "required": [ @@ -14712,9 +14688,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Project": { + "AWS_RedshiftServerless_Workgroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html)", + "markdownDescription": "Definition of AWS::RedshiftServerless::Workgroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html)", "allOf": [ { "type": "object", @@ -14722,14 +14698,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Project" + "AWS::RedshiftServerless::Workgroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html)" + "Definition of AWS::RedshiftServerless::Workgroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-project.json" + "$ref": "resources/aws-redshiftserverless-workgroup.json" } }, "required": [ @@ -14743,9 +14719,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_Fleet": { + "AWS_EC2_Route": { "type": "object", - "markdownDescription": "The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html)", + "markdownDescription": "Specifies a route in a route table. For more information, see [Routes](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html#route-table-routes) in the *Amazon VPC User Guide*.\n You must specify either a destination CIDR block or prefix list ID. You must also specify exactly one of the resources as the target.\n If you create a route that references a transit gateway in the same template where you create the transit gateway, you must declare a dependency on the transit gateway attachment. The route table cannot use the transit gateway until it has successfully attached to the VPC. Add a [DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) in the ``AWS::EC2::Route`` resource to explicitly declare a dependency on the ``AWS::EC2::TransitGatewayAttachment`` resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html)", "allOf": [ { "type": "object", @@ -14753,14 +14729,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::Fleet" + "AWS::EC2::Route" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html)" + "Specifies a route in a route table. For more information, see [Routes](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html#route-table-routes) in the *Amazon VPC User Guide*.\n You must specify either a destination CIDR block or prefix list ID. You must also specify exactly one of the resources as the target.\n If you create a route that references a transit gateway in the same template where you create the transit gateway, you must declare a dependency on the transit gateway attachment. The route table cannot use the transit gateway until it has successfully attached to the VPC. Add a [DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) in the ``AWS::EC2::Route`` resource to explicitly declare a dependency on the ``AWS::EC2::TransitGatewayAttachment`` resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-fleet.json" + "$ref": "resources/aws-ec2-route.json" } }, "required": [ @@ -14774,9 +14750,9 @@ ], "additionalProperties": false }, - "AWS_Shield_ProactiveEngagement": { + "AWS_Transfer_Agreement": { "type": "object", - "markdownDescription": "Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-proactiveengagement.html)", + "markdownDescription": "Resource Type definition for AWS::Transfer::Agreement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-agreement.html)", "allOf": [ { "type": "object", @@ -14784,14 +14760,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Shield::ProactiveEngagement" + "AWS::Transfer::Agreement" ], "markdownEnumDescriptions": [ - "Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-proactiveengagement.html)" + "Resource Type definition for AWS::Transfer::Agreement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-agreement.html)" ] }, "Properties": { - "$ref": "resources/aws-shield-proactiveengagement.json" + "$ref": "resources/aws-transfer-agreement.json" } }, "required": [ @@ -14805,9 +14781,9 @@ ], "additionalProperties": false }, - "AWS_RoboMaker_SimulationApplication": { + "AWS_IoT_ResourceSpecificLogging": { "type": "object", - "markdownDescription": "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html)", + "markdownDescription": "Resource-specific logging allows you to specify a logging level for a specific thing group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-resourcespecificlogging.html)", "allOf": [ { "type": "object", @@ -14815,14 +14791,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RoboMaker::SimulationApplication" + "AWS::IoT::ResourceSpecificLogging" ], "markdownEnumDescriptions": [ - "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html)" + "Resource-specific logging allows you to specify a logging level for a specific thing group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-resourcespecificlogging.html)" ] }, "Properties": { - "$ref": "resources/aws-robomaker-simulationapplication.json" + "$ref": "resources/aws-iot-resourcespecificlogging.json" } }, "required": [ @@ -14836,9 +14812,9 @@ ], "additionalProperties": false }, - "AWS_FSx_Snapshot": { + "AWS_MediaLive_Channel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::FSx::Snapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-snapshot.html)", + "markdownDescription": "Resource Type definition for AWS::MediaLive::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html)", "allOf": [ { "type": "object", @@ -14846,19 +14822,18 @@ "Type": { "type": "string", "enum": [ - "AWS::FSx::Snapshot" + "AWS::MediaLive::Channel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::FSx::Snapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-snapshot.html)" + "Resource Type definition for AWS::MediaLive::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html)" ] }, "Properties": { - "$ref": "resources/aws-fsx-snapshot.json" + "$ref": "resources/aws-medialive-channel.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -14867,9 +14842,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_User": { + "AWS_WAFRegional_RateBasedRule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::RateBasedRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html)", "allOf": [ { "type": "object", @@ -14877,14 +14852,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::User" + "AWS::WAFRegional::RateBasedRule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-user.html)" + "Resource Type definition for AWS::WAFRegional::RateBasedRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-user.json" + "$ref": "resources/aws-wafregional-ratebasedrule.json" } }, "required": [ @@ -14898,9 +14873,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_IdNamespaceAssociation": { + "AWS_MediaConnect_FlowEntitlement": { "type": "object", - "markdownDescription": "Represents an association between an ID namespace and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idnamespaceassociation.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::FlowEntitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html)", "allOf": [ { "type": "object", @@ -14908,14 +14883,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::IdNamespaceAssociation" + "AWS::MediaConnect::FlowEntitlement" ], "markdownEnumDescriptions": [ - "Represents an association between an ID namespace and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idnamespaceassociation.html)" + "Resource schema for AWS::MediaConnect::FlowEntitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-idnamespaceassociation.json" + "$ref": "resources/aws-mediaconnect-flowentitlement.json" } }, "required": [ @@ -14929,9 +14904,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_Location": { + "AWS_ApiGatewayV2_Route": { "type": "object", - "markdownDescription": "The AWS::GameLift::Location resource creates an Amazon GameLift (GameLift) custom location. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-location.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::Route`` resource creates a route for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html)", "allOf": [ { "type": "object", @@ -14939,14 +14914,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::Location" + "AWS::ApiGatewayV2::Route" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::Location resource creates an Amazon GameLift (GameLift) custom location. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-location.html)" + "The ``AWS::ApiGatewayV2::Route`` resource creates a route for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-location.json" + "$ref": "resources/aws-apigatewayv2-route.json" } }, "required": [ @@ -14960,9 +14935,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_HookVersion": { + "AWS_EC2_VerifiedAccessGroup": { "type": "object", - "markdownDescription": "Publishes new or first hook version to AWS CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html)", + "markdownDescription": "The AWS::EC2::VerifiedAccessGroup resource creates an AWS EC2 Verified Access Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessgroup.html)", "allOf": [ { "type": "object", @@ -14970,14 +14945,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::HookVersion" + "AWS::EC2::VerifiedAccessGroup" ], "markdownEnumDescriptions": [ - "Publishes new or first hook version to AWS CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html)" + "The AWS::EC2::VerifiedAccessGroup resource creates an AWS EC2 Verified Access Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-hookversion.json" + "$ref": "resources/aws-ec2-verifiedaccessgroup.json" } }, "required": [ @@ -14991,9 +14966,9 @@ ], "additionalProperties": false }, - "AWS_DevOpsGuru_LogAnomalyDetectionIntegration": { + "AWS_DAX_ParameterGroup": { "type": "object", - "markdownDescription": "This resource schema represents the LogAnomalyDetectionIntegration resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-loganomalydetectionintegration.html)", + "markdownDescription": "Resource Type definition for AWS::DAX::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html)", "allOf": [ { "type": "object", @@ -15001,14 +14976,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DevOpsGuru::LogAnomalyDetectionIntegration" + "AWS::DAX::ParameterGroup" ], "markdownEnumDescriptions": [ - "This resource schema represents the LogAnomalyDetectionIntegration resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-loganomalydetectionintegration.html)" + "Resource Type definition for AWS::DAX::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-devopsguru-loganomalydetectionintegration.json" + "$ref": "resources/aws-dax-parametergroup.json" } }, "required": [ @@ -15021,9 +14996,9 @@ ], "additionalProperties": false }, - "AWS_ResourceGroups_TagSyncTask": { + "AWS_Deadline_MeteredProduct": { "type": "object", - "markdownDescription": "Schema for ResourceGroups::TagSyncTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-tagsynctask.html)", + "markdownDescription": "Definition of AWS::Deadline::MeteredProduct Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-meteredproduct.html)", "allOf": [ { "type": "object", @@ -15031,19 +15006,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ResourceGroups::TagSyncTask" + "AWS::Deadline::MeteredProduct" ], "markdownEnumDescriptions": [ - "Schema for ResourceGroups::TagSyncTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-tagsynctask.html)" + "Definition of AWS::Deadline::MeteredProduct Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-meteredproduct.html)" ] }, "Properties": { - "$ref": "resources/aws-resourcegroups-tagsynctask.json" + "$ref": "resources/aws-deadline-meteredproduct.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -15052,9 +15026,9 @@ ], "additionalProperties": false }, - "AWS_PCS_Queue": { + "AWS_Logs_SubscriptionFilter": { "type": "object", - "markdownDescription": "AWS::PCS::Queue resource creates an AWS PCS queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html)", + "markdownDescription": "The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n + A logical destination that belongs to a different account, for cross-account delivery.\n + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.\n \n There can be as many as two subscription filters associated with a log group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html)", "allOf": [ { "type": "object", @@ -15062,14 +15036,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCS::Queue" + "AWS::Logs::SubscriptionFilter" ], "markdownEnumDescriptions": [ - "AWS::PCS::Queue resource creates an AWS PCS queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html)" + "The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n + A logical destination that belongs to a different account, for cross-account delivery.\n + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.\n \n There can be as many as two subscription filters associated with a log group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html)" ] }, "Properties": { - "$ref": "resources/aws-pcs-queue.json" + "$ref": "resources/aws-logs-subscriptionfilter.json" } }, "required": [ @@ -15083,9 +15057,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_TargetGroup": { + "AWS_Events_Rule": { "type": "object", - "markdownDescription": "A target group is a collection of targets, or compute resources, that run your application or service. A target group can only be used by a single service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html)", + "markdownDescription": "Resource Type definition for AWS::Events::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)", "allOf": [ { "type": "object", @@ -15093,19 +15067,18 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::TargetGroup" + "AWS::Events::Rule" ], "markdownEnumDescriptions": [ - "A target group is a collection of targets, or compute resources, that run your application or service. A target group can only be used by a single service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-targetgroup.html)" + "Resource Type definition for AWS::Events::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-targetgroup.json" + "$ref": "resources/aws-events-rule.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -15114,9 +15087,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_LicenseEndpoint": { + "AWS_Kendra_Faq": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::LicenseEndpoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-licenseendpoint.html)", + "markdownDescription": "A Kendra FAQ resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-faq.html)", "allOf": [ { "type": "object", @@ -15124,14 +15097,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::LicenseEndpoint" + "AWS::Kendra::Faq" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::LicenseEndpoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-licenseendpoint.html)" + "A Kendra FAQ resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-faq.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-licenseendpoint.json" + "$ref": "resources/aws-kendra-faq.json" } }, "required": [ @@ -15145,9 +15118,9 @@ ], "additionalProperties": false }, - "AWS_ControlTower_EnabledBaseline": { + "AWS_Wisdom_MessageTemplate": { "type": "object", - "markdownDescription": "Definition of AWS::ControlTower::EnabledBaseline Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html)", + "markdownDescription": "Definition of AWS::Wisdom::MessageTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplate.html)", "allOf": [ { "type": "object", @@ -15155,14 +15128,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ControlTower::EnabledBaseline" + "AWS::Wisdom::MessageTemplate" ], "markdownEnumDescriptions": [ - "Definition of AWS::ControlTower::EnabledBaseline Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledbaseline.html)" + "Definition of AWS::Wisdom::MessageTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-controltower-enabledbaseline.json" + "$ref": "resources/aws-wisdom-messagetemplate.json" } }, "required": [ @@ -15176,9 +15149,9 @@ ], "additionalProperties": false }, - "AWS_ElasticLoadBalancingV2_ListenerRule": { + "AWS_Deadline_Fleet": { "type": "object", - "markdownDescription": "Specifies a listener rule. The listener must be associated with an Application Load Balancer. Each rule consists of a priority, one or more actions, and one or more conditions.\n For more information, see [Quotas for your Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html) in the *User Guide for Application Load Balancers*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html)", + "markdownDescription": "Definition of AWS::Deadline::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-fleet.html)", "allOf": [ { "type": "object", @@ -15186,14 +15159,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticLoadBalancingV2::ListenerRule" + "AWS::Deadline::Fleet" ], "markdownEnumDescriptions": [ - "Specifies a listener rule. The listener must be associated with an Application Load Balancer. Each rule consists of a priority, one or more actions, and one or more conditions.\n For more information, see [Quotas for your Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html) in the *User Guide for Application Load Balancers*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html)" + "Definition of AWS::Deadline::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-fleet.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticloadbalancingv2-listenerrule.json" + "$ref": "resources/aws-deadline-fleet.json" } }, "required": [ @@ -15207,9 +15180,9 @@ ], "additionalProperties": false }, - "AWS_EntityResolution_SchemaMapping": { + "AWS_InternetMonitor_Monitor": { "type": "object", - "markdownDescription": "SchemaMapping defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-schemamapping.html)", + "markdownDescription": "Represents a monitor, which defines the monitoring boundaries for measurements that Internet Monitor publishes information about for an application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-internetmonitor-monitor.html)", "allOf": [ { "type": "object", @@ -15217,14 +15190,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EntityResolution::SchemaMapping" + "AWS::InternetMonitor::Monitor" ], "markdownEnumDescriptions": [ - "SchemaMapping defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-schemamapping.html)" + "Represents a monitor, which defines the monitoring boundaries for measurements that Internet Monitor publishes information about for an application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-internetmonitor-monitor.html)" ] }, "Properties": { - "$ref": "resources/aws-entityresolution-schemamapping.json" + "$ref": "resources/aws-internetmonitor-monitor.json" } }, "required": [ @@ -15238,9 +15211,9 @@ ], "additionalProperties": false }, - "AWS_Kinesis_Stream": { + "AWS_CodeBuild_SourceCredential": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Kinesis::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html)", + "markdownDescription": "Resource Type definition for AWS::CodeBuild::SourceCredential \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html)", "allOf": [ { "type": "object", @@ -15248,18 +15221,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Kinesis::Stream" + "AWS::CodeBuild::SourceCredential" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Kinesis::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html)" + "Resource Type definition for AWS::CodeBuild::SourceCredential \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesis-stream.json" + "$ref": "resources/aws-codebuild-sourcecredential.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -15268,9 +15242,9 @@ ], "additionalProperties": false }, - "AWS_Config_ConfigurationRecorder": { + "AWS_SageMaker_MlflowTrackingServer": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Config::ConfigurationRecorder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::MlflowTrackingServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-mlflowtrackingserver.html)", "allOf": [ { "type": "object", @@ -15278,14 +15252,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::ConfigurationRecorder" + "AWS::SageMaker::MlflowTrackingServer" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Config::ConfigurationRecorder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html)" + "Resource Type definition for AWS::SageMaker::MlflowTrackingServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-mlflowtrackingserver.html)" ] }, "Properties": { - "$ref": "resources/aws-config-configurationrecorder.json" + "$ref": "resources/aws-sagemaker-mlflowtrackingserver.json" } }, "required": [ @@ -15299,9 +15273,9 @@ ], "additionalProperties": false }, - "AWS_ECS_Cluster": { + "AWS_SNS_TopicInlinePolicy": { "type": "object", - "markdownDescription": "The ``AWS::ECS::Cluster`` resource creates an Amazon Elastic Container Service (Amazon ECS) cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html)", + "markdownDescription": "Schema for AWS::SNS::TopicInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicinlinepolicy.html)", "allOf": [ { "type": "object", @@ -15309,18 +15283,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ECS::Cluster" + "AWS::SNS::TopicInlinePolicy" ], "markdownEnumDescriptions": [ - "The ``AWS::ECS::Cluster`` resource creates an Amazon Elastic Container Service (Amazon ECS) cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html)" + "Schema for AWS::SNS::TopicInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicinlinepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ecs-cluster.json" + "$ref": "resources/aws-sns-topicinlinepolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -15329,9 +15304,9 @@ ], "additionalProperties": false }, - "AWS_EC2_IPAMAllocation": { + "AWS_Config_ConfigRule": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EC2::IPAMAllocation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamallocation.html)", + "markdownDescription": "You must first create and start the CC configuration recorder in order to create CC managed rules with CFNlong. For more information, see [Managing the Configuration Recorder](https://docs.aws.amazon.com/config/latest/developerguide/stop-start-recorder.html).\n Adds or updates an CC rule to evaluate if your AWS resources comply with your desired configurations. For information on how many CC rules you can have per account, see [Service Limits](https://docs.aws.amazon.com/config/latest/developerguide/configlimits.html) in the *Developer Guide*.\n There are two types of rules: *Managed Rules* and *Custom Rules*. You can use the ``ConfigRule`` resource to create both CC Managed Rules and CC Custom Rules.\n CC Managed Rules are predefined, customizable rules created by CC. For a list of managed rules, see [List of Managed Rules](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html). If you are adding an CC managed rule, you must specify the rule's identifier for the ``SourceIdentifier`` key.\n CC Custom Rules are rules that you create from scratch. There are two ways to create CC custom rules: with Lambda functions ([Developer Guide](https://docs.aws.amazon.com/config/latest/developerguide/gettingstarted-concepts.html#gettingstarted-concepts-function)) and with CFNGUARDshort ([Guard GitHub Repository](https://docs.aws.amazon.com/https://github.com/aws-cloudformation/cloudformation-guard)), a policy-as-code language. CC custom rules created with LAMlong are called *Custom Lambda Rules* and CC custom rules created with CFNGUARDshort are called *Custom Policy Rules*.\n If you are adding a new CC Custom LAM rule, you first need to create an LAMlong function that the rule invokes to evaluate your resources. When you use the ``ConfigRule`` resource to add a Custom LAM rule to CC, you must specify the Amazon Resource Name (ARN) that LAMlong assigns to the function. You specify the ARN in the ``SourceIdentifier`` key. This key is part of the ``Source`` object, which is part of the ``ConfigRule`` object. \n For any new CC rule that you add, specify the ``ConfigRuleName`` in the ``ConfigRule`` object. Do not specify the ``ConfigRuleArn`` or the ``ConfigRuleId``. These values are generated by CC for new rules.\n If you are updating a rule that you added previously, you can specify the rule by ``ConfigRuleName``, ``ConfigRuleId``, or ``ConfigRuleArn`` in the ``ConfigRule`` data type that you use in this request.\n For more information about developing and using CC rules, see [Evaluating Resources with Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html)", "allOf": [ { "type": "object", @@ -15339,14 +15314,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::IPAMAllocation" + "AWS::Config::ConfigRule" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EC2::IPAMAllocation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamallocation.html)" + "You must first create and start the CC configuration recorder in order to create CC managed rules with CFNlong. For more information, see [Managing the Configuration Recorder](https://docs.aws.amazon.com/config/latest/developerguide/stop-start-recorder.html).\n Adds or updates an CC rule to evaluate if your AWS resources comply with your desired configurations. For information on how many CC rules you can have per account, see [Service Limits](https://docs.aws.amazon.com/config/latest/developerguide/configlimits.html) in the *Developer Guide*.\n There are two types of rules: *Managed Rules* and *Custom Rules*. You can use the ``ConfigRule`` resource to create both CC Managed Rules and CC Custom Rules.\n CC Managed Rules are predefined, customizable rules created by CC. For a list of managed rules, see [List of Managed Rules](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html). If you are adding an CC managed rule, you must specify the rule's identifier for the ``SourceIdentifier`` key.\n CC Custom Rules are rules that you create from scratch. There are two ways to create CC custom rules: with Lambda functions ([Developer Guide](https://docs.aws.amazon.com/config/latest/developerguide/gettingstarted-concepts.html#gettingstarted-concepts-function)) and with CFNGUARDshort ([Guard GitHub Repository](https://docs.aws.amazon.com/https://github.com/aws-cloudformation/cloudformation-guard)), a policy-as-code language. CC custom rules created with LAMlong are called *Custom Lambda Rules* and CC custom rules created with CFNGUARDshort are called *Custom Policy Rules*.\n If you are adding a new CC Custom LAM rule, you first need to create an LAMlong function that the rule invokes to evaluate your resources. When you use the ``ConfigRule`` resource to add a Custom LAM rule to CC, you must specify the Amazon Resource Name (ARN) that LAMlong assigns to the function. You specify the ARN in the ``SourceIdentifier`` key. This key is part of the ``Source`` object, which is part of the ``ConfigRule`` object. \n For any new CC rule that you add, specify the ``ConfigRuleName`` in the ``ConfigRule`` object. Do not specify the ``ConfigRuleArn`` or the ``ConfigRuleId``. These values are generated by CC for new rules.\n If you are updating a rule that you added previously, you can specify the rule by ``ConfigRuleName``, ``ConfigRuleId``, or ``ConfigRuleArn`` in the ``ConfigRule`` data type that you use in this request.\n For more information about developing and using CC rules, see [Evaluating Resources with Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ipamallocation.json" + "$ref": "resources/aws-config-configrule.json" } }, "required": [ @@ -15360,9 +15335,9 @@ ], "additionalProperties": false }, - "AWS_Logs_MetricFilter": { + "AWS_AppStream_Fleet": { "type": "object", - "markdownDescription": "The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n The maximum number of metric filters that can be associated with a log group is 100. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html)", "allOf": [ { "type": "object", @@ -15370,14 +15345,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::MetricFilter" + "AWS::AppStream::Fleet" ], "markdownEnumDescriptions": [ - "The ``AWS::Logs::MetricFilter`` resource specifies a metric filter that describes how CWL extracts information from logs and transforms it into Amazon CloudWatch metrics. If you have multiple metric filters that are associated with a log group, all the filters are applied to the log streams in that group.\n The maximum number of metric filters that can be associated with a log group is 100. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html)" + "Resource Type definition for AWS::AppStream::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-metricfilter.json" + "$ref": "resources/aws-appstream-fleet.json" } }, "required": [ @@ -15391,9 +15366,9 @@ ], "additionalProperties": false }, - "AWS_AccessAnalyzer_Analyzer": { + "AWS_SecretsManager_ResourcePolicy": { "type": "object", - "markdownDescription": "The AWS::AccessAnalyzer::Analyzer type specifies an analyzer of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html)", + "markdownDescription": "Resource Type definition for AWS::SecretsManager::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -15401,14 +15376,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AccessAnalyzer::Analyzer" + "AWS::SecretsManager::ResourcePolicy" ], "markdownEnumDescriptions": [ - "The AWS::AccessAnalyzer::Analyzer type specifies an analyzer of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html)" + "Resource Type definition for AWS::SecretsManager::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-accessanalyzer-analyzer.json" + "$ref": "resources/aws-secretsmanager-resourcepolicy.json" } }, "required": [ @@ -15422,9 +15397,9 @@ ], "additionalProperties": false }, - "AWS_IoTAnalytics_Channel": { + "AWS_SageMaker_Pipeline": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html)", "allOf": [ { "type": "object", @@ -15432,18 +15407,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTAnalytics::Channel" + "AWS::SageMaker::Pipeline" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoTAnalytics::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-channel.html)" + "Resource Type definition for AWS::SageMaker::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html)" ] }, "Properties": { - "$ref": "resources/aws-iotanalytics-channel.json" + "$ref": "resources/aws-sagemaker-pipeline.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -15452,9 +15428,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Alarm": { + "AWS_Deadline_QueueLimitAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Alarm \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-alarm.html)", + "markdownDescription": "Definition of AWS::Deadline::QueueLimitAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuelimitassociation.html)", "allOf": [ { "type": "object", @@ -15462,14 +15438,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Alarm" + "AWS::Deadline::QueueLimitAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Alarm \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-alarm.html)" + "Definition of AWS::Deadline::QueueLimitAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuelimitassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-alarm.json" + "$ref": "resources/aws-deadline-queuelimitassociation.json" } }, "required": [ @@ -15483,9 +15459,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetWise_Vehicle": { + "AWS_DataZone_UserProfile": { "type": "object", - "markdownDescription": "Definition of AWS::IoTFleetWise::Vehicle Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html)", + "markdownDescription": "A user profile represents Amazon DataZone users. Amazon DataZone supports both IAM roles and SSO identities to interact with the Amazon DataZone Management Console and the data portal for different purposes. Domain administrators use IAM roles to perform the initial administrative domain-related work in the Amazon DataZone Management Console, including creating new Amazon DataZone domains, configuring metadata form types, and implementing policies. Data workers use their SSO corporate identities via Identity Center to log into the Amazon DataZone Data Portal and access projects where they have memberships. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html)", "allOf": [ { "type": "object", @@ -15493,14 +15469,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetWise::Vehicle" + "AWS::DataZone::UserProfile" ], "markdownEnumDescriptions": [ - "Definition of AWS::IoTFleetWise::Vehicle Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-vehicle.html)" + "A user profile represents Amazon DataZone users. Amazon DataZone supports both IAM roles and SSO identities to interact with the Amazon DataZone Management Console and the data portal for different purposes. Domain administrators use IAM roles to perform the initial administrative domain-related work in the Amazon DataZone Management Console, including creating new Amazon DataZone domains, configuring metadata form types, and implementing policies. Data workers use their SSO corporate identities via Identity Center to log into the Amazon DataZone Data Portal and access projects where they have memberships. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-userprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleetwise-vehicle.json" + "$ref": "resources/aws-datazone-userprofile.json" } }, "required": [ @@ -15514,9 +15490,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_Alias": { + "AWS_Athena_PreparedStatement": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lambda::Alias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html)", + "markdownDescription": "Resource schema for AWS::Athena::PreparedStatement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-preparedstatement.html)", "allOf": [ { "type": "object", @@ -15524,14 +15500,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::Alias" + "AWS::Athena::PreparedStatement" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lambda::Alias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html)" + "Resource schema for AWS::Athena::PreparedStatement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-preparedstatement.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-alias.json" + "$ref": "resources/aws-athena-preparedstatement.json" } }, "required": [ @@ -15545,9 +15521,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_DelegatedAdmin": { + "AWS_SecretsManager_RotationSchedule": { "type": "object", - "markdownDescription": "The ``AWS::SecurityHub::DelegatedAdmin`` resource designates the delegated ASHlong administrator account for an organization. You must enable the integration between ASH and AOlong before you can designate a delegated ASH administrator. Only the management account for an organization can designate the delegated ASH administrator account. For more information, see [Designating the delegated administrator](https://docs.aws.amazon.com/securityhub/latest/userguide/designate-orgs-admin-account.html#designate-admin-instructions) in the *User Guide*.\n To change the delegated administrator account, remove the current delegated administrator account, and then designate the new account.\n To designate multiple delegated administrators in different organizations and AWS-Regions, we recommend using [mappings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/mappings-section-structure.html).\n Tags aren't supported for this resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-delegatedadmin.html)", + "markdownDescription": "Resource Type definition for AWS::SecretsManager::RotationSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html)", "allOf": [ { "type": "object", @@ -15555,14 +15531,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::DelegatedAdmin" + "AWS::SecretsManager::RotationSchedule" ], "markdownEnumDescriptions": [ - "The ``AWS::SecurityHub::DelegatedAdmin`` resource designates the delegated ASHlong administrator account for an organization. You must enable the integration between ASH and AOlong before you can designate a delegated ASH administrator. Only the management account for an organization can designate the delegated ASH administrator account. For more information, see [Designating the delegated administrator](https://docs.aws.amazon.com/securityhub/latest/userguide/designate-orgs-admin-account.html#designate-admin-instructions) in the *User Guide*.\n To change the delegated administrator account, remove the current delegated administrator account, and then designate the new account.\n To designate multiple delegated administrators in different organizations and AWS-Regions, we recommend using [mappings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/mappings-section-structure.html).\n Tags aren't supported for this resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-delegatedadmin.html)" + "Resource Type definition for AWS::SecretsManager::RotationSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-delegatedadmin.json" + "$ref": "resources/aws-secretsmanager-rotationschedule.json" } }, "required": [ @@ -15576,9 +15552,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetWise_Campaign": { + "AWS_EMR_Studio": { "type": "object", - "markdownDescription": "Definition of AWS::IoTFleetWise::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html)", + "markdownDescription": "Resource schema for AWS::EMR::Studio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html)", "allOf": [ { "type": "object", @@ -15586,14 +15562,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetWise::Campaign" + "AWS::EMR::Studio" ], "markdownEnumDescriptions": [ - "Definition of AWS::IoTFleetWise::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html)" + "Resource schema for AWS::EMR::Studio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleetwise-campaign.json" + "$ref": "resources/aws-emr-studio.json" } }, "required": [ @@ -15607,9 +15583,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_ImageVersion": { + "AWS_OpenSearchServerless_SecurityPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::ImageVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-imageversion.html)", + "markdownDescription": "Amazon OpenSearchServerless security policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securitypolicy.html)", "allOf": [ { "type": "object", @@ -15617,14 +15593,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::ImageVersion" + "AWS::OpenSearchServerless::SecurityPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::ImageVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-imageversion.html)" + "Amazon OpenSearchServerless security policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securitypolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-imageversion.json" + "$ref": "resources/aws-opensearchserverless-securitypolicy.json" } }, "required": [ @@ -15638,9 +15614,9 @@ ], "additionalProperties": false }, - "AWS_AutoScaling_AutoScalingGroup": { + "AWS_CloudFront_ConnectionGroup": { "type": "object", - "markdownDescription": "The ``AWS::AutoScaling::AutoScalingGroup`` resource defines an Amazon EC2 Auto Scaling group, which is a collection of Amazon EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management. \n For more information about Amazon EC2 Auto Scaling, see the [Amazon EC2 Auto Scaling User Guide](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html). \n Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a [launch template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) or a launch configuration. We strongly recommend that you do not use launch configurations. For more information, see [Launch configurations](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For help migrating from launch configurations to launch templates, see [Migrate CloudFormation stacks from launch configurations to launch templates](https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html) in the *Amazon EC2 Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html)", + "markdownDescription": "The connection group for your distribution tenants. When you first create a distribution tenant and you don't specify a connection group, CloudFront will automatically create a default connection group for you. When you create a new distribution tenant and don't specify a connection group, the default one will be associated with your distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-connectiongroup.html)", "allOf": [ { "type": "object", @@ -15648,14 +15624,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AutoScaling::AutoScalingGroup" + "AWS::CloudFront::ConnectionGroup" ], "markdownEnumDescriptions": [ - "The ``AWS::AutoScaling::AutoScalingGroup`` resource defines an Amazon EC2 Auto Scaling group, which is a collection of Amazon EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management. \n For more information about Amazon EC2 Auto Scaling, see the [Amazon EC2 Auto Scaling User Guide](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html). \n Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a [launch template](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) or a launch configuration. We strongly recommend that you do not use launch configurations. For more information, see [Launch configurations](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For help migrating from launch configurations to launch templates, see [Migrate CloudFormation stacks from launch configurations to launch templates](https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html) in the *Amazon EC2 Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html)" + "The connection group for your distribution tenants. When you first create a distribution tenant and you don't specify a connection group, CloudFront will automatically create a default connection group for you. When you create a new distribution tenant and don't specify a connection group, the default one will be associated with your distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-connectiongroup.html)" ] }, "Properties": { - "$ref": "resources/aws-autoscaling-autoscalinggroup.json" + "$ref": "resources/aws-cloudfront-connectiongroup.json" } }, "required": [ @@ -15669,9 +15645,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_Prompt": { + "AWS_Wisdom_AIGuardrailVersion": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::Prompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-prompt.html)", + "markdownDescription": "Definition of AWS::Wisdom::AIGuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrailversion.html)", "allOf": [ { "type": "object", @@ -15679,14 +15655,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::Prompt" + "AWS::Wisdom::AIGuardrailVersion" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::Prompt Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-prompt.html)" + "Definition of AWS::Wisdom::AIGuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrailversion.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-prompt.json" + "$ref": "resources/aws-wisdom-aiguardrailversion.json" } }, "required": [ @@ -15700,9 +15676,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_ConfiguredTable": { + "AWS_DevOpsGuru_LogAnomalyDetectionIntegration": { "type": "object", - "markdownDescription": "Represents a table that can be associated with collaborations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtable.html)", + "markdownDescription": "This resource schema represents the LogAnomalyDetectionIntegration resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-loganomalydetectionintegration.html)", "allOf": [ { "type": "object", @@ -15710,19 +15686,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::ConfiguredTable" + "AWS::DevOpsGuru::LogAnomalyDetectionIntegration" ], "markdownEnumDescriptions": [ - "Represents a table that can be associated with collaborations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtable.html)" + "This resource schema represents the LogAnomalyDetectionIntegration resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-loganomalydetectionintegration.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-configuredtable.json" + "$ref": "resources/aws-devopsguru-loganomalydetectionintegration.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -15731,9 +15706,9 @@ ], "additionalProperties": false }, - "AWS_Config_ConformancePack": { + "AWS_Pinpoint_APNSVoipChannel": { "type": "object", - "markdownDescription": "A conformance pack is a collection of AWS Config rules and remediation actions that can be easily deployed as a single entity in an account and a region or across an entire AWS Organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSVoipChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html)", "allOf": [ { "type": "object", @@ -15741,14 +15716,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::ConformancePack" + "AWS::Pinpoint::APNSVoipChannel" ], "markdownEnumDescriptions": [ - "A conformance pack is a collection of AWS Config rules and remediation actions that can be easily deployed as a single entity in an account and a region or across an entire AWS Organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-conformancepack.html)" + "Resource Type definition for AWS::Pinpoint::APNSVoipChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-config-conformancepack.json" + "$ref": "resources/aws-pinpoint-apnsvoipchannel.json" } }, "required": [ @@ -15762,9 +15737,9 @@ ], "additionalProperties": false }, - "AWS_DAX_ParameterGroup": { + "AWS_SSO_Application": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DAX::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html)", + "markdownDescription": "Resource Type definition for Identity Center (SSO) Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html)", "allOf": [ { "type": "object", @@ -15772,18 +15747,19 @@ "Type": { "type": "string", "enum": [ - "AWS::DAX::ParameterGroup" + "AWS::SSO::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DAX::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-parametergroup.html)" + "Resource Type definition for Identity Center (SSO) Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html)" ] }, "Properties": { - "$ref": "resources/aws-dax-parametergroup.json" + "$ref": "resources/aws-sso-application.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -15792,9 +15768,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_TaskDefinition": { + "AWS_WAFRegional_ByteMatchSet": { "type": "object", - "markdownDescription": "Creates a gateway task definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-taskdefinition.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html)", "allOf": [ { "type": "object", @@ -15802,14 +15778,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::TaskDefinition" + "AWS::WAFRegional::ByteMatchSet" ], "markdownEnumDescriptions": [ - "Creates a gateway task definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-taskdefinition.html)" + "Resource Type definition for AWS::WAFRegional::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-taskdefinition.json" + "$ref": "resources/aws-wafregional-bytematchset.json" } }, "required": [ @@ -15823,9 +15799,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_Version": { + "AWS_IVS_PlaybackKeyPair": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lambda::Version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::PlaybackKeyPair \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackkeypair.html)", "allOf": [ { "type": "object", @@ -15833,19 +15809,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::Version" + "AWS::IVS::PlaybackKeyPair" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lambda::Version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)" + "Resource Type definition for AWS::IVS::PlaybackKeyPair \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackkeypair.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-version.json" + "$ref": "resources/aws-ivs-playbackkeypair.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -15854,9 +15829,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetWise_DecoderManifest": { + "AWS_IoTSiteWise_Project": { "type": "object", - "markdownDescription": "Definition of AWS::IoTFleetWise::DecoderManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html)", "allOf": [ { "type": "object", @@ -15864,14 +15839,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetWise::DecoderManifest" + "AWS::IoTSiteWise::Project" ], "markdownEnumDescriptions": [ - "Definition of AWS::IoTFleetWise::DecoderManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html)" + "Resource schema for AWS::IoTSiteWise::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-project.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleetwise-decodermanifest.json" + "$ref": "resources/aws-iotsitewise-project.json" } }, "required": [ @@ -15885,9 +15860,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_Cluster": { + "AWS_M2_Application": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html)", + "markdownDescription": "Represents an application that runs on an AWS Mainframe Modernization Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-application.html)", "allOf": [ { "type": "object", @@ -15895,14 +15870,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::Cluster" + "AWS::M2::Application" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html)" + "Represents an application that runs on an AWS Mainframe Modernization Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-application.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-cluster.json" + "$ref": "resources/aws-m2-application.json" } }, "required": [ @@ -15916,9 +15891,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_CloudWatchAlarmTemplate": { + "AWS_IoTSiteWise_Portal": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::CloudWatchAlarmTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplate.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::Portal \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html)", "allOf": [ { "type": "object", @@ -15926,14 +15901,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::CloudWatchAlarmTemplate" + "AWS::IoTSiteWise::Portal" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::CloudWatchAlarmTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplate.html)" + "Resource schema for AWS::IoTSiteWise::Portal \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-portal.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-cloudwatchalarmtemplate.json" + "$ref": "resources/aws-iotsitewise-portal.json" } }, "required": [ @@ -15947,9 +15922,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_DistributionConfiguration": { + "AWS_Location_RouteCalculator": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::DistributionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html)", + "markdownDescription": "Definition of AWS::Location::RouteCalculator Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-routecalculator.html)", "allOf": [ { "type": "object", @@ -15957,14 +15932,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::DistributionConfiguration" + "AWS::Location::RouteCalculator" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::DistributionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html)" + "Definition of AWS::Location::RouteCalculator Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-routecalculator.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-distributionconfiguration.json" + "$ref": "resources/aws-location-routecalculator.json" } }, "required": [ @@ -15978,9 +15953,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_DataSet": { + "AWS_SecurityLake_Subscriber": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::DataSet Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dataset.html)", + "markdownDescription": "Resource Type definition for AWS::SecurityLake::Subscriber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html)", "allOf": [ { "type": "object", @@ -15988,18 +15963,19 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::DataSet" + "AWS::SecurityLake::Subscriber" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::DataSet Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dataset.html)" + "Resource Type definition for AWS::SecurityLake::Subscriber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-dataset.json" + "$ref": "resources/aws-securitylake-subscriber.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -16008,9 +15984,9 @@ ], "additionalProperties": false }, - "AWS_SES_ReceiptRuleSet": { + "AWS_Connect_Rule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::ReceiptRuleSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html)", + "markdownDescription": "Creates a rule for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-rule.html)", "allOf": [ { "type": "object", @@ -16018,18 +15994,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::ReceiptRuleSet" + "AWS::Connect::Rule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::ReceiptRuleSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptruleset.html)" + "Creates a rule for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-rule.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-receiptruleset.json" + "$ref": "resources/aws-connect-rule.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -16038,9 +16015,9 @@ ], "additionalProperties": false }, - "AWS_CleanRoomsML_TrainingDataset": { + "AWS_Pinpoint_GCMChannel": { "type": "object", - "markdownDescription": "Definition of AWS::CleanRoomsML::TrainingDataset Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanroomsml-trainingdataset.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::GCMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html)", "allOf": [ { "type": "object", @@ -16048,14 +16025,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRoomsML::TrainingDataset" + "AWS::Pinpoint::GCMChannel" ], "markdownEnumDescriptions": [ - "Definition of AWS::CleanRoomsML::TrainingDataset Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanroomsml-trainingdataset.html)" + "Resource Type definition for AWS::Pinpoint::GCMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanroomsml-trainingdataset.json" + "$ref": "resources/aws-pinpoint-gcmchannel.json" } }, "required": [ @@ -16069,9 +16046,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_KnowledgeBase": { + "AWS_SecurityHub_SecurityControl": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-knowledgebase.html)", + "markdownDescription": "A security control in Security Hub describes a security best practice related to a specific resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html)", "allOf": [ { "type": "object", @@ -16079,14 +16056,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::KnowledgeBase" + "AWS::SecurityHub::SecurityControl" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::KnowledgeBase Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-knowledgebase.html)" + "A security control in Security Hub describes a security best practice related to a specific resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-knowledgebase.json" + "$ref": "resources/aws-securityhub-securitycontrol.json" } }, "required": [ @@ -16100,9 +16077,9 @@ ], "additionalProperties": false }, - "AWS_Location_PlaceIndex": { + "AWS_Oam_Link": { "type": "object", - "markdownDescription": "Definition of AWS::Location::PlaceIndex Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-placeindex.html)", + "markdownDescription": "Definition of AWS::Oam::Link Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html)", "allOf": [ { "type": "object", @@ -16110,14 +16087,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Location::PlaceIndex" + "AWS::Oam::Link" ], "markdownEnumDescriptions": [ - "Definition of AWS::Location::PlaceIndex Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-placeindex.html)" + "Definition of AWS::Oam::Link Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html)" ] }, "Properties": { - "$ref": "resources/aws-location-placeindex.json" + "$ref": "resources/aws-oam-link.json" } }, "required": [ @@ -16131,9 +16108,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_Integration": { + "AWS_KinesisAnalytics_Application": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html)", + "markdownDescription": "Resource Type definition for AWS::KinesisAnalytics::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html)", "allOf": [ { "type": "object", @@ -16141,14 +16118,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::Integration" + "AWS::KinesisAnalytics::Application" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html)" + "Resource Type definition for AWS::KinesisAnalytics::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-application.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-integration.json" + "$ref": "resources/aws-kinesisanalytics-application.json" } }, "required": [ @@ -16162,9 +16139,9 @@ ], "additionalProperties": false }, - "AWS_Synthetics_Group": { + "AWS_EC2_DHCPOptions": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Synthetics::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-group.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::DHCPOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcpoptions.html)", "allOf": [ { "type": "object", @@ -16172,19 +16149,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Synthetics::Group" + "AWS::EC2::DHCPOptions" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Synthetics::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-group.html)" + "Resource Type definition for AWS::EC2::DHCPOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcpoptions.html)" ] }, "Properties": { - "$ref": "resources/aws-synthetics-group.json" + "$ref": "resources/aws-ec2-dhcpoptions.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -16193,9 +16169,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_InstanceSnapshot": { + "AWS_IoT_ScheduledAudit": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::InstanceSnapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instancesnapshot.html)", + "markdownDescription": "Scheduled audits can be used to specify the checks you want to perform during an audit and how often the audit should be run. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html)", "allOf": [ { "type": "object", @@ -16203,14 +16179,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::InstanceSnapshot" + "AWS::IoT::ScheduledAudit" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::InstanceSnapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instancesnapshot.html)" + "Scheduled audits can be used to specify the checks you want to perform during an audit and how often the audit should be run. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-instancesnapshot.json" + "$ref": "resources/aws-iot-scheduledaudit.json" } }, "required": [ @@ -16224,9 +16200,9 @@ ], "additionalProperties": false }, - "AWS_QBusiness_DataAccessor": { + "AWS_QuickSight_DataSource": { "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::DataAccessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-dataaccessor.html)", + "markdownDescription": "Definition of the AWS::QuickSight::DataSource Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-datasource.html)", "allOf": [ { "type": "object", @@ -16234,14 +16210,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QBusiness::DataAccessor" + "AWS::QuickSight::DataSource" ], "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::DataAccessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-dataaccessor.html)" + "Definition of the AWS::QuickSight::DataSource Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-datasource.html)" ] }, "Properties": { - "$ref": "resources/aws-qbusiness-dataaccessor.json" + "$ref": "resources/aws-quicksight-datasource.json" } }, "required": [ @@ -16255,9 +16231,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackage_OriginEndpoint": { + "AWS_Pinpoint_EmailChannel": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaPackage::OriginEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::EmailChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html)", "allOf": [ { "type": "object", @@ -16265,14 +16241,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackage::OriginEndpoint" + "AWS::Pinpoint::EmailChannel" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaPackage::OriginEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html)" + "Resource Type definition for AWS::Pinpoint::EmailChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackage-originendpoint.json" + "$ref": "resources/aws-pinpoint-emailchannel.json" } }, "required": [ @@ -16286,9 +16262,9 @@ ], "additionalProperties": false }, - "AWS_IoT_Logging": { + "AWS_IoTFleetWise_DecoderManifest": { "type": "object", - "markdownDescription": "Logging Options enable you to configure your IoT V2 logging role and default logging level so that you can monitor progress events logs as it passes from your devices through Iot core service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html)", + "markdownDescription": "Definition of AWS::IoTFleetWise::DecoderManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html)", "allOf": [ { "type": "object", @@ -16296,14 +16272,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::Logging" + "AWS::IoTFleetWise::DecoderManifest" ], "markdownEnumDescriptions": [ - "Logging Options enable you to configure your IoT V2 logging role and default logging level so that you can monitor progress events logs as it passes from your devices through Iot core service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html)" + "Definition of AWS::IoTFleetWise::DecoderManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-logging.json" + "$ref": "resources/aws-iotfleetwise-decodermanifest.json" } }, "required": [ @@ -16317,9 +16293,9 @@ ], "additionalProperties": false }, - "AWS_Proton_EnvironmentTemplate": { + "AWS_GuardDuty_PublishingDestination": { "type": "object", - "markdownDescription": "Definition of AWS::Proton::EnvironmentTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmenttemplate.html)", + "markdownDescription": "Resource Type definition for AWS::GuardDuty::PublishingDestination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-publishingdestination.html)", "allOf": [ { "type": "object", @@ -16327,18 +16303,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Proton::EnvironmentTemplate" + "AWS::GuardDuty::PublishingDestination" ], "markdownEnumDescriptions": [ - "Definition of AWS::Proton::EnvironmentTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmenttemplate.html)" + "Resource Type definition for AWS::GuardDuty::PublishingDestination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-publishingdestination.html)" ] }, "Properties": { - "$ref": "resources/aws-proton-environmenttemplate.json" + "$ref": "resources/aws-guardduty-publishingdestination.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -16347,9 +16324,9 @@ ], "additionalProperties": false }, - "AWS_Athena_CapacityReservation": { + "AWS_SES_ReceiptRule": { "type": "object", - "markdownDescription": "Resource schema for AWS::Athena::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-capacityreservation.html)", + "markdownDescription": "Resource Type definition for AWS::SES::ReceiptRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html)", "allOf": [ { "type": "object", @@ -16357,14 +16334,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Athena::CapacityReservation" + "AWS::SES::ReceiptRule" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Athena::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-capacityreservation.html)" + "Resource Type definition for AWS::SES::ReceiptRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html)" ] }, "Properties": { - "$ref": "resources/aws-athena-capacityreservation.json" + "$ref": "resources/aws-ses-receiptrule.json" } }, "required": [ @@ -16378,9 +16355,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_CloudFormationProvisionedProduct": { + "AWS_SageMaker_AppImageConfig": { "type": "object", - "markdownDescription": "Resource Schema for AWS::ServiceCatalog::CloudFormationProvisionedProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::AppImageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html)", "allOf": [ { "type": "object", @@ -16388,18 +16365,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::CloudFormationProvisionedProduct" + "AWS::SageMaker::AppImageConfig" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::ServiceCatalog::CloudFormationProvisionedProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationprovisionedproduct.html)" + "Resource Type definition for AWS::SageMaker::AppImageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-appimageconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-cloudformationprovisionedproduct.json" + "$ref": "resources/aws-sagemaker-appimageconfig.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -16408,9 +16386,9 @@ ], "additionalProperties": false }, - "AWS_SSMContacts_Contact": { + "AWS_GameLift_Alias": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSMContacts::Contact \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html)", + "markdownDescription": "The AWS::GameLift::Alias resource creates an alias for an Amazon GameLift (GameLift) fleet destination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html)", "allOf": [ { "type": "object", @@ -16418,14 +16396,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMContacts::Contact" + "AWS::GameLift::Alias" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSMContacts::Contact \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html)" + "The AWS::GameLift::Alias resource creates an alias for an Amazon GameLift (GameLift) fleet destination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmcontacts-contact.json" + "$ref": "resources/aws-gamelift-alias.json" } }, "required": [ @@ -16439,9 +16417,9 @@ ], "additionalProperties": false }, - "AWS_Route53_HealthCheck": { + "AWS_EC2_CarrierGateway": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53::HealthCheck. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html)", + "markdownDescription": "Resource Type definition for Carrier Gateway which describes the Carrier Gateway resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-carriergateway.html)", "allOf": [ { "type": "object", @@ -16449,14 +16427,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53::HealthCheck" + "AWS::EC2::CarrierGateway" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53::HealthCheck. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html)" + "Resource Type definition for Carrier Gateway which describes the Carrier Gateway resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-carriergateway.html)" ] }, "Properties": { - "$ref": "resources/aws-route53-healthcheck.json" + "$ref": "resources/aws-ec2-carriergateway.json" } }, "required": [ @@ -16470,9 +16448,9 @@ ], "additionalProperties": false }, - "AWS_GlobalAccelerator_EndpointGroup": { + "AWS_ImageBuilder_ImageRecipe": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::EndpointGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::ImageRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html)", "allOf": [ { "type": "object", @@ -16480,14 +16458,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GlobalAccelerator::EndpointGroup" + "AWS::ImageBuilder::ImageRecipe" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GlobalAccelerator::EndpointGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html)" + "Resource schema for AWS::ImageBuilder::ImageRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html)" ] }, "Properties": { - "$ref": "resources/aws-globalaccelerator-endpointgroup.json" + "$ref": "resources/aws-imagebuilder-imagerecipe.json" } }, "required": [ @@ -16501,9 +16479,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_IntelligentPromptRouter": { + "AWS_Redshift_EventSubscription": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::IntelligentPromptRouter Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-intelligentpromptrouter.html)", + "markdownDescription": "The `AWS::Redshift::EventSubscription` resource creates an Amazon Redshift Event Subscription. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html)", "allOf": [ { "type": "object", @@ -16511,14 +16489,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::IntelligentPromptRouter" + "AWS::Redshift::EventSubscription" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::IntelligentPromptRouter Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-intelligentpromptrouter.html)" + "The `AWS::Redshift::EventSubscription` resource creates an Amazon Redshift Event Subscription. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-eventsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-intelligentpromptrouter.json" + "$ref": "resources/aws-redshift-eventsubscription.json" } }, "required": [ @@ -16532,9 +16510,9 @@ ], "additionalProperties": false }, - "AWS_Backup_BackupVault": { + "AWS_ResourceExplorer2_DefaultViewAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Backup::BackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html)", + "markdownDescription": "Definition of AWS::ResourceExplorer2::DefaultViewAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-defaultviewassociation.html)", "allOf": [ { "type": "object", @@ -16542,14 +16520,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::BackupVault" + "AWS::ResourceExplorer2::DefaultViewAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Backup::BackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html)" + "Definition of AWS::ResourceExplorer2::DefaultViewAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-defaultviewassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-backupvault.json" + "$ref": "resources/aws-resourceexplorer2-defaultviewassociation.json" } }, "required": [ @@ -16563,9 +16541,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpaces_ConnectionAlias": { + "AWS_SSO_InstanceAccessControlAttributeConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WorkSpaces::ConnectionAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html)", + "markdownDescription": "Resource Type definition for SSO InstanceAccessControlAttributeConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instanceaccesscontrolattributeconfiguration.html)", "allOf": [ { "type": "object", @@ -16573,14 +16551,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpaces::ConnectionAlias" + "AWS::SSO::InstanceAccessControlAttributeConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WorkSpaces::ConnectionAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html)" + "Resource Type definition for SSO InstanceAccessControlAttributeConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instanceaccesscontrolattributeconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-workspaces-connectionalias.json" + "$ref": "resources/aws-sso-instanceaccesscontrolattributeconfiguration.json" } }, "required": [ @@ -16594,9 +16572,9 @@ ], "additionalProperties": false }, - "AWS_ResourceGroups_Group": { + "AWS_NetworkManager_LinkAssociation": { "type": "object", - "markdownDescription": "Schema for ResourceGroups::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html)", + "markdownDescription": "The AWS::NetworkManager::LinkAssociation type associates a link to a device. The device and link must be in the same global network and the same site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html)", "allOf": [ { "type": "object", @@ -16604,14 +16582,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ResourceGroups::Group" + "AWS::NetworkManager::LinkAssociation" ], "markdownEnumDescriptions": [ - "Schema for ResourceGroups::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourcegroups-group.html)" + "The AWS::NetworkManager::LinkAssociation type associates a link to a device. The device and link must be in the same global network and the same site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-resourcegroups-group.json" + "$ref": "resources/aws-networkmanager-linkassociation.json" } }, "required": [ @@ -16625,9 +16603,9 @@ ], "additionalProperties": false }, - "AWS_Connect_PredefinedAttribute": { + "AWS_CloudFormation_ModuleDefaultVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::PredefinedAttribute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-predefinedattribute.html)", + "markdownDescription": "A module that has been registered in the CloudFormation registry as the default version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html)", "allOf": [ { "type": "object", @@ -16635,19 +16613,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::PredefinedAttribute" + "AWS::CloudFormation::ModuleDefaultVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::PredefinedAttribute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-predefinedattribute.html)" + "A module that has been registered in the CloudFormation registry as the default version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-predefinedattribute.json" + "$ref": "resources/aws-cloudformation-moduledefaultversion.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -16656,9 +16633,9 @@ ], "additionalProperties": false }, - "AWS_ManagedBlockchain_Node": { + "AWS_SES_ConfigurationSetEventDestination": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ManagedBlockchain::Node \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html)", + "markdownDescription": "Resource Type definition for AWS::SES::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html)", "allOf": [ { "type": "object", @@ -16666,14 +16643,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ManagedBlockchain::Node" + "AWS::SES::ConfigurationSetEventDestination" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ManagedBlockchain::Node \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html)" + "Resource Type definition for AWS::SES::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html)" ] }, "Properties": { - "$ref": "resources/aws-managedblockchain-node.json" + "$ref": "resources/aws-ses-configurationseteventdestination.json" } }, "required": [ @@ -16687,9 +16664,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_PortfolioPrincipalAssociation": { + "AWS_FraudDetector_Detector": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::PortfolioPrincipalAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html)", + "markdownDescription": "A resource schema for a Detector in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-detector.html)", "allOf": [ { "type": "object", @@ -16697,14 +16674,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::PortfolioPrincipalAssociation" + "AWS::FraudDetector::Detector" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::PortfolioPrincipalAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html)" + "A resource schema for a Detector in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-detector.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-portfolioprincipalassociation.json" + "$ref": "resources/aws-frauddetector-detector.json" } }, "required": [ @@ -16718,9 +16695,9 @@ ], "additionalProperties": false }, - "AWS_AmplifyUIBuilder_Theme": { + "AWS_AppStream_User": { "type": "object", - "markdownDescription": "Definition of AWS::AmplifyUIBuilder::Theme Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-theme.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html)", "allOf": [ { "type": "object", @@ -16728,18 +16705,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AmplifyUIBuilder::Theme" + "AWS::AppStream::User" ], "markdownEnumDescriptions": [ - "Definition of AWS::AmplifyUIBuilder::Theme Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-theme.html)" + "Resource Type definition for AWS::AppStream::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html)" ] }, "Properties": { - "$ref": "resources/aws-amplifyuibuilder-theme.json" + "$ref": "resources/aws-appstream-user.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -16748,9 +16726,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_RestApi": { + "AWS_SageMaker_DeviceFleet": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html)", + "markdownDescription": "Resource schema for AWS::SageMaker::DeviceFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html)", "allOf": [ { "type": "object", @@ -16758,18 +16736,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::RestApi" + "AWS::SageMaker::DeviceFleet" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html)" + "Resource schema for AWS::SageMaker::DeviceFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-restapi.json" + "$ref": "resources/aws-sagemaker-devicefleet.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -16778,9 +16757,9 @@ ], "additionalProperties": false }, - "AWS_WAF_XssMatchSet": { + "AWS_CloudFront_CloudFrontOriginAccessIdentity": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAF::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html)", + "markdownDescription": "The request to create a new origin access identity (OAI). An origin access identity is a special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of your Amazon S3 content. For more information, see [Restricting Access to Amazon S3 Content by Using an Origin Access Identity](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html)", "allOf": [ { "type": "object", @@ -16788,14 +16767,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAF::XssMatchSet" + "AWS::CloudFront::CloudFrontOriginAccessIdentity" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAF::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html)" + "The request to create a new origin access identity (OAI). An origin access identity is a special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of your Amazon S3 content. For more information, see [Restricting Access to Amazon S3 Content by Using an Origin Access Identity](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cloudfrontoriginaccessidentity.html)" ] }, "Properties": { - "$ref": "resources/aws-waf-xssmatchset.json" + "$ref": "resources/aws-cloudfront-cloudfrontoriginaccessidentity.json" } }, "required": [ @@ -16809,9 +16788,9 @@ ], "additionalProperties": false }, - "AWS_CloudWatch_Alarm": { + "AWS_InspectorV2_Filter": { "type": "object", - "markdownDescription": "The ``AWS::CloudWatch::Alarm`` type specifies an alarm and associates it with the specified metric or metric math expression.\n When this operation creates an alarm, the alarm state is immediately set to ``INSUFFICIENT_DATA``. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed.\n When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-alarm.html)", + "markdownDescription": "Inspector Filter resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-filter.html)", "allOf": [ { "type": "object", @@ -16819,14 +16798,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudWatch::Alarm" + "AWS::InspectorV2::Filter" ], "markdownEnumDescriptions": [ - "The ``AWS::CloudWatch::Alarm`` type specifies an alarm and associates it with the specified metric or metric math expression.\n When this operation creates an alarm, the alarm state is immediately set to ``INSUFFICIENT_DATA``. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed.\n When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-alarm.html)" + "Inspector Filter resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-filter.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudwatch-alarm.json" + "$ref": "resources/aws-inspectorv2-filter.json" } }, "required": [ @@ -16840,9 +16819,9 @@ ], "additionalProperties": false }, - "AWS_Personalize_Dataset": { + "AWS_Cognito_ManagedLoginBranding": { "type": "object", - "markdownDescription": "Resource schema for AWS::Personalize::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-dataset.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::ManagedLoginBranding \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html)", "allOf": [ { "type": "object", @@ -16850,14 +16829,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Personalize::Dataset" + "AWS::Cognito::ManagedLoginBranding" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Personalize::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-dataset.html)" + "Resource Type definition for AWS::Cognito::ManagedLoginBranding \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html)" ] }, "Properties": { - "$ref": "resources/aws-personalize-dataset.json" + "$ref": "resources/aws-cognito-managedloginbranding.json" } }, "required": [ @@ -16871,9 +16850,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_MatchmakingRuleSet": { + "AWS_RefactorSpaces_Service": { "type": "object", - "markdownDescription": "The AWS::GameLift::MatchmakingRuleSet resource creates an Amazon GameLift (GameLift) matchmaking rule set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html)", + "markdownDescription": "Definition of AWS::RefactorSpaces::Service Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-service.html)", "allOf": [ { "type": "object", @@ -16881,14 +16860,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::MatchmakingRuleSet" + "AWS::RefactorSpaces::Service" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::MatchmakingRuleSet resource creates an Amazon GameLift (GameLift) matchmaking rule set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html)" + "Definition of AWS::RefactorSpaces::Service Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-service.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-matchmakingruleset.json" + "$ref": "resources/aws-refactorspaces-service.json" } }, "required": [ @@ -16902,9 +16881,9 @@ ], "additionalProperties": false }, - "AWS_Forecast_DatasetGroup": { + "AWS_QuickSight_VPCConnection": { "type": "object", - "markdownDescription": "Represents a dataset group that holds a collection of related datasets \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-datasetgroup.html)", + "markdownDescription": "Definition of the AWS::QuickSight::VPCConnection Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-vpcconnection.html)", "allOf": [ { "type": "object", @@ -16912,19 +16891,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Forecast::DatasetGroup" + "AWS::QuickSight::VPCConnection" ], "markdownEnumDescriptions": [ - "Represents a dataset group that holds a collection of related datasets \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-datasetgroup.html)" + "Definition of the AWS::QuickSight::VPCConnection Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-vpcconnection.html)" ] }, "Properties": { - "$ref": "resources/aws-forecast-datasetgroup.json" + "$ref": "resources/aws-quicksight-vpcconnection.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -16933,9 +16911,9 @@ ], "additionalProperties": false }, - "AWS_Evidently_Segment": { + "AWS_B2BI_Partnership": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Evidently::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-segment.html)", + "markdownDescription": "Definition of AWS::B2BI::Partnership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-partnership.html)", "allOf": [ { "type": "object", @@ -16943,14 +16921,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Evidently::Segment" + "AWS::B2BI::Partnership" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Evidently::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-segment.html)" + "Definition of AWS::B2BI::Partnership Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-partnership.html)" ] }, "Properties": { - "$ref": "resources/aws-evidently-segment.json" + "$ref": "resources/aws-b2bi-partnership.json" } }, "required": [ @@ -16964,9 +16942,9 @@ ], "additionalProperties": false }, - "AWS_IoTCoreDeviceAdvisor_SuiteDefinition": { + "AWS_Signer_SigningProfile": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotcoredeviceadvisor-suitedefinition.html)", + "markdownDescription": "A signing profile is a signing template that can be used to carry out a pre-defined signing job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html)", "allOf": [ { "type": "object", @@ -16974,14 +16952,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTCoreDeviceAdvisor::SuiteDefinition" + "AWS::Signer::SigningProfile" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotcoredeviceadvisor-suitedefinition.html)" + "A signing profile is a signing template that can be used to carry out a pre-defined signing job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-signingprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-iotcoredeviceadvisor-suitedefinition.json" + "$ref": "resources/aws-signer-signingprofile.json" } }, "required": [ @@ -16995,9 +16973,9 @@ ], "additionalProperties": false }, - "AWS_Connect_ViewVersion": { + "AWS_ECR_ReplicationConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::ViewVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-viewversion.html)", + "markdownDescription": "The ``AWS::ECR::ReplicationConfiguration`` resource creates or updates the replication configuration for a private registry. The first time a replication configuration is applied to a private registry, a service-linked IAM role is created in your account for the replication process. For more information, see [Using Service-Linked Roles for Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/using-service-linked-roles.html) in the *Amazon Elastic Container Registry User Guide*.\n When configuring cross-account replication, the destination account must grant the source account permission to replicate. This permission is controlled using a private registry permissions policy. For more information, see ``AWS::ECR::RegistryPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html)", "allOf": [ { "type": "object", @@ -17005,14 +16983,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::ViewVersion" + "AWS::ECR::ReplicationConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::ViewVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-viewversion.html)" + "The ``AWS::ECR::ReplicationConfiguration`` resource creates or updates the replication configuration for a private registry. The first time a replication configuration is applied to a private registry, a service-linked IAM role is created in your account for the replication process. For more information, see [Using Service-Linked Roles for Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/using-service-linked-roles.html) in the *Amazon Elastic Container Registry User Guide*.\n When configuring cross-account replication, the destination account must grant the source account permission to replicate. This permission is controlled using a private registry permissions policy. For more information, see ``AWS::ECR::RegistryPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-viewversion.json" + "$ref": "resources/aws-ecr-replicationconfiguration.json" } }, "required": [ @@ -17026,9 +17004,9 @@ ], "additionalProperties": false }, - "AWS_DAX_Cluster": { + "AWS_CodeGuruProfiler_ProfilingGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DAX::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html)", + "markdownDescription": "This resource schema represents the Profiling Group resource in the Amazon CodeGuru Profiler service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html)", "allOf": [ { "type": "object", @@ -17036,14 +17014,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DAX::Cluster" + "AWS::CodeGuruProfiler::ProfilingGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DAX::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html)" + "This resource schema represents the Profiling Group resource in the Amazon CodeGuru Profiler service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeguruprofiler-profilinggroup.html)" ] }, "Properties": { - "$ref": "resources/aws-dax-cluster.json" + "$ref": "resources/aws-codeguruprofiler-profilinggroup.json" } }, "required": [ @@ -17057,9 +17035,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPNConnection": { + "AWS_IoTTwinMaker_SyncJob": { "type": "object", - "markdownDescription": "Specifies a VPN connection between a virtual private gateway and a VPN customer gateway or a transit gateway and a VPN customer gateway.\n To specify a VPN connection between a transit gateway and customer gateway, use the ``TransitGatewayId`` and ``CustomerGatewayId`` properties.\n To specify a VPN connection between a virtual private gateway and customer gateway, use the ``VpnGatewayId`` and ``CustomerGatewayId`` properties.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnection.html)", + "markdownDescription": "Resource schema for AWS::IoTTwinMaker::SyncJob \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-syncjob.html)", "allOf": [ { "type": "object", @@ -17067,14 +17045,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPNConnection" + "AWS::IoTTwinMaker::SyncJob" ], "markdownEnumDescriptions": [ - "Specifies a VPN connection between a virtual private gateway and a VPN customer gateway or a transit gateway and a VPN customer gateway.\n To specify a VPN connection between a transit gateway and customer gateway, use the ``TransitGatewayId`` and ``CustomerGatewayId`` properties.\n To specify a VPN connection between a virtual private gateway and customer gateway, use the ``VpnGatewayId`` and ``CustomerGatewayId`` properties.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnection.html)" + "Resource schema for AWS::IoTTwinMaker::SyncJob \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-syncjob.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpnconnection.json" + "$ref": "resources/aws-iottwinmaker-syncjob.json" } }, "required": [ @@ -17088,9 +17066,9 @@ ], "additionalProperties": false }, - "AWS_ARCZonalShift_AutoshiftObserverNotificationStatus": { + "AWS_ElastiCache_ReplicationGroup": { "type": "object", - "markdownDescription": "Definition of AWS::ARCZonalShift::AutoshiftObserverNotificationStatus Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-autoshiftobservernotificationstatus.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::ReplicationGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)", "allOf": [ { "type": "object", @@ -17098,14 +17076,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ARCZonalShift::AutoshiftObserverNotificationStatus" + "AWS::ElastiCache::ReplicationGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::ARCZonalShift::AutoshiftObserverNotificationStatus Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-autoshiftobservernotificationstatus.html)" + "Resource Type definition for AWS::ElastiCache::ReplicationGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-arczonalshift-autoshiftobservernotificationstatus.json" + "$ref": "resources/aws-elasticache-replicationgroup.json" } }, "required": [ @@ -17119,9 +17097,9 @@ ], "additionalProperties": false }, - "AWS_DirectoryService_MicrosoftAD": { + "AWS_Chatbot_CustomAction": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DirectoryService::MicrosoftAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html)", + "markdownDescription": "Definition of AWS::Chatbot::CustomAction Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-customaction.html)", "allOf": [ { "type": "object", @@ -17129,14 +17107,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DirectoryService::MicrosoftAD" + "AWS::Chatbot::CustomAction" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DirectoryService::MicrosoftAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html)" + "Definition of AWS::Chatbot::CustomAction Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-customaction.html)" ] }, "Properties": { - "$ref": "resources/aws-directoryservice-microsoftad.json" + "$ref": "resources/aws-chatbot-customaction.json" } }, "required": [ @@ -17150,9 +17128,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesThinClient_Environment": { + "AWS_XRay_TransactionSearchConfig": { "type": "object", - "markdownDescription": "Resource type definition for AWS::WorkSpacesThinClient::Environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesthinclient-environment.html)", + "markdownDescription": "This schema provides construct and validation rules for AWS-XRay TransactionSearchConfig resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-transactionsearchconfig.html)", "allOf": [ { "type": "object", @@ -17160,19 +17138,18 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesThinClient::Environment" + "AWS::XRay::TransactionSearchConfig" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::WorkSpacesThinClient::Environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesthinclient-environment.html)" + "This schema provides construct and validation rules for AWS-XRay TransactionSearchConfig resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-transactionsearchconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesthinclient-environment.json" + "$ref": "resources/aws-xray-transactionsearchconfig.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -17181,9 +17158,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_WebACLAssociation": { + "AWS_DAX_SubnetGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::WebACLAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html)", + "markdownDescription": "Resource Type definition for AWS::DAX::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html)", "allOf": [ { "type": "object", @@ -17191,14 +17168,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::WebACLAssociation" + "AWS::DAX::SubnetGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::WebACLAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html)" + "Resource Type definition for AWS::DAX::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-webaclassociation.json" + "$ref": "resources/aws-dax-subnetgroup.json" } }, "required": [ @@ -17212,9 +17189,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_ApplicationSettings": { + "AWS_CodeStar_GitHubRepository": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::ApplicationSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html)", + "markdownDescription": "Resource Type definition for AWS::CodeStar::GitHubRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html)", "allOf": [ { "type": "object", @@ -17222,14 +17199,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::ApplicationSettings" + "AWS::CodeStar::GitHubRepository" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::ApplicationSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html)" + "Resource Type definition for AWS::CodeStar::GitHubRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-applicationsettings.json" + "$ref": "resources/aws-codestar-githubrepository.json" } }, "required": [ @@ -17243,9 +17220,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkPerformanceMetricSubscription": { + "AWS_EC2_Instance": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::NetworkPerformanceMetricSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkperformancemetricsubscription.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html)", "allOf": [ { "type": "object", @@ -17253,19 +17230,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkPerformanceMetricSubscription" + "AWS::EC2::Instance" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::NetworkPerformanceMetricSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkperformancemetricsubscription.html)" + "Resource Type definition for AWS::EC2::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instance.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkperformancemetricsubscription.json" + "$ref": "resources/aws-ec2-instance.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -17274,9 +17250,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_PartnerApp": { + "AWS_IoTSiteWise_ComputationModel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::PartnerApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-partnerapp.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::ComputationModel. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html)", "allOf": [ { "type": "object", @@ -17284,14 +17260,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::PartnerApp" + "AWS::IoTSiteWise::ComputationModel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::PartnerApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-partnerapp.html)" + "Resource schema for AWS::IoTSiteWise::ComputationModel. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-partnerapp.json" + "$ref": "resources/aws-iotsitewise-computationmodel.json" } }, "required": [ @@ -17305,9 +17281,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationFSxWindows": { + "AWS_RUM_AppMonitor": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxWindows. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html)", + "markdownDescription": "Resource Type definition for AWS::RUM::AppMonitor \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rum-appmonitor.html)", "allOf": [ { "type": "object", @@ -17315,14 +17291,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationFSxWindows" + "AWS::RUM::AppMonitor" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationFSxWindows. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html)" + "Resource Type definition for AWS::RUM::AppMonitor \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rum-appmonitor.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationfsxwindows.json" + "$ref": "resources/aws-rum-appmonitor.json" } }, "required": [ @@ -17336,9 +17312,9 @@ ], "additionalProperties": false }, - "AWS_Inspector_AssessmentTemplate": { + "AWS_ElastiCache_ParameterGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Inspector::AssessmentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html)", "allOf": [ { "type": "object", @@ -17346,14 +17322,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Inspector::AssessmentTemplate" + "AWS::ElastiCache::ParameterGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Inspector::AssessmentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html)" + "Resource Type definition for AWS::ElastiCache::ParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-parametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-inspector-assessmenttemplate.json" + "$ref": "resources/aws-elasticache-parametergroup.json" } }, "required": [ @@ -17367,9 +17343,9 @@ ], "additionalProperties": false }, - "AWS_EC2_ClientVpnTargetNetworkAssociation": { + "AWS_CustomerProfiles_SegmentDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnTargetNetworkAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html)", + "markdownDescription": "A segment definition resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-segmentdefinition.html)", "allOf": [ { "type": "object", @@ -17377,14 +17353,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::ClientVpnTargetNetworkAssociation" + "AWS::CustomerProfiles::SegmentDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::ClientVpnTargetNetworkAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpntargetnetworkassociation.html)" + "A segment definition resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-segmentdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-clientvpntargetnetworkassociation.json" + "$ref": "resources/aws-customerprofiles-segmentdefinition.json" } }, "required": [ @@ -17398,9 +17374,9 @@ ], "additionalProperties": false }, - "AWS_FraudDetector_List": { + "AWS_EMRContainers_VirtualCluster": { "type": "object", - "markdownDescription": "A resource schema for a List in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-list.html)", + "markdownDescription": "Resource Schema of AWS::EMRContainers::VirtualCluster Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html)", "allOf": [ { "type": "object", @@ -17408,14 +17384,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FraudDetector::List" + "AWS::EMRContainers::VirtualCluster" ], "markdownEnumDescriptions": [ - "A resource schema for a List in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-list.html)" + "Resource Schema of AWS::EMRContainers::VirtualCluster Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html)" ] }, "Properties": { - "$ref": "resources/aws-frauddetector-list.json" + "$ref": "resources/aws-emrcontainers-virtualcluster.json" } }, "required": [ @@ -17429,9 +17405,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_ChannelNamespace": { + "AWS_ApiGatewayV2_IntegrationResponse": { "type": "object", - "markdownDescription": "Resource schema for AppSync ChannelNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::IntegrationResponse`` resource updates an integration response for an WebSocket API. For more information, see [Set up WebSocket API Integration Responses in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-integration-responses.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html)", "allOf": [ { "type": "object", @@ -17439,14 +17415,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::ChannelNamespace" + "AWS::ApiGatewayV2::IntegrationResponse" ], "markdownEnumDescriptions": [ - "Resource schema for AppSync ChannelNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html)" + "The ``AWS::ApiGatewayV2::IntegrationResponse`` resource updates an integration response for an WebSocket API. For more information, see [Set up WebSocket API Integration Responses in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-integration-responses.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integrationresponse.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-channelnamespace.json" + "$ref": "resources/aws-apigatewayv2-integrationresponse.json" } }, "required": [ @@ -17460,9 +17436,9 @@ ], "additionalProperties": false }, - "AWS_ECR_PublicRepository": { + "AWS_IVS_PlaybackRestrictionPolicy": { "type": "object", - "markdownDescription": "The ``AWS::ECR::PublicRepository`` resource specifies an Amazon Elastic Container Registry Public (Amazon ECR Public) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR public repositories](https://docs.aws.amazon.com/AmazonECR/latest/public/public-repositories.html) in the *Amazon ECR Public User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::PlaybackRestrictionPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackrestrictionpolicy.html)", "allOf": [ { "type": "object", @@ -17470,14 +17446,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECR::PublicRepository" + "AWS::IVS::PlaybackRestrictionPolicy" ], "markdownEnumDescriptions": [ - "The ``AWS::ECR::PublicRepository`` resource specifies an Amazon Elastic Container Registry Public (Amazon ECR Public) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR public repositories](https://docs.aws.amazon.com/AmazonECR/latest/public/public-repositories.html) in the *Amazon ECR Public User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html)" + "Resource Type definition for AWS::IVS::PlaybackRestrictionPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackrestrictionpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ecr-publicrepository.json" + "$ref": "resources/aws-ivs-playbackrestrictionpolicy.json" } }, "required": [ @@ -17490,9 +17466,9 @@ ], "additionalProperties": false }, - "AWS_SES_EmailIdentity": { + "AWS_Glue_Crawler": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::EmailIdentity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Crawler \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html)", "allOf": [ { "type": "object", @@ -17500,14 +17476,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::EmailIdentity" + "AWS::Glue::Crawler" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::EmailIdentity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html)" + "Resource Type definition for AWS::Glue::Crawler \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-emailidentity.json" + "$ref": "resources/aws-glue-crawler.json" } }, "required": [ @@ -17521,9 +17497,9 @@ ], "additionalProperties": false }, - "AWS_IoT_RoleAlias": { + "AWS_CloudWatch_Alarm": { "type": "object", - "markdownDescription": "Use the AWS::IoT::RoleAlias resource to declare an AWS IoT RoleAlias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html)", + "markdownDescription": "The ``AWS::CloudWatch::Alarm`` type specifies an alarm and associates it with the specified metric or metric math expression.\n When this operation creates an alarm, the alarm state is immediately set to ``INSUFFICIENT_DATA``. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed.\n When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-alarm.html)", "allOf": [ { "type": "object", @@ -17531,14 +17507,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::RoleAlias" + "AWS::CloudWatch::Alarm" ], "markdownEnumDescriptions": [ - "Use the AWS::IoT::RoleAlias resource to declare an AWS IoT RoleAlias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html)" + "The ``AWS::CloudWatch::Alarm`` type specifies an alarm and associates it with the specified metric or metric math expression.\n When this operation creates an alarm, the alarm state is immediately set to ``INSUFFICIENT_DATA``. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed.\n When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-alarm.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-rolealias.json" + "$ref": "resources/aws-cloudwatch-alarm.json" } }, "required": [ @@ -17552,9 +17528,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_Permission": { + "AWS_SSM_MaintenanceWindowTarget": { "type": "object", - "markdownDescription": "The ``AWS::Lambda::Permission`` resource grants an AWS service or another account permission to use a function. You can apply the policy at the function level, or specify a qualifier to restrict access to a single version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name (ARN) of that version or alias to invoke the function.\n To grant permission to another account, specify the account ID as the ``Principal``. To grant permission to an organization defined in AOlong, specify the organization ID as the ``PrincipalOrgID``. For AWS services, the principal is a domain-style identifier defined by the service, like ``s3.amazonaws.com`` or ``sns.amazonaws.com``. For AWS services, you can also specify the ARN of the associated resource as the ``SourceArn``. If you grant permission to a service principal without specifying the source, other accounts could potentially configure resources in their account to invoke your Lambda function.\n If your function has a function URL, you can specify the ``FunctionUrlAuthType`` parameter. This adds a condition to your permission that only applies when your function URL's ``AuthType`` matches the specified ``FunctionUrlAuthType``. For more information about the ``AuthType`` parameter, see [Security and auth model for function URLs](https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html).\n This resource adds a statement to a resource-based permission policy for the function. For more information about function policies, see [Lambda Function Policies](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)", + "markdownDescription": "Resource Type definition for AWS::SSM::MaintenanceWindowTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html)", "allOf": [ { "type": "object", @@ -17562,14 +17538,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::Permission" + "AWS::SSM::MaintenanceWindowTarget" ], "markdownEnumDescriptions": [ - "The ``AWS::Lambda::Permission`` resource grants an AWS service or another account permission to use a function. You can apply the policy at the function level, or specify a qualifier to restrict access to a single version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name (ARN) of that version or alias to invoke the function.\n To grant permission to another account, specify the account ID as the ``Principal``. To grant permission to an organization defined in AOlong, specify the organization ID as the ``PrincipalOrgID``. For AWS services, the principal is a domain-style identifier defined by the service, like ``s3.amazonaws.com`` or ``sns.amazonaws.com``. For AWS services, you can also specify the ARN of the associated resource as the ``SourceArn``. If you grant permission to a service principal without specifying the source, other accounts could potentially configure resources in their account to invoke your Lambda function.\n If your function has a function URL, you can specify the ``FunctionUrlAuthType`` parameter. This adds a condition to your permission that only applies when your function URL's ``AuthType`` matches the specified ``FunctionUrlAuthType``. For more information about the ``AuthType`` parameter, see [Security and auth model for function URLs](https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html).\n This resource adds a statement to a resource-based permission policy for the function. For more information about function policies, see [Lambda Function Policies](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)" + "Resource Type definition for AWS::SSM::MaintenanceWindowTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtarget.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-permission.json" + "$ref": "resources/aws-ssm-maintenancewindowtarget.json" } }, "required": [ @@ -17583,9 +17559,9 @@ ], "additionalProperties": false }, - "AWS_Connect_AgentStatus": { + "AWS_IVS_StreamKey": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::AgentStatus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-agentstatus.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::StreamKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-streamkey.html)", "allOf": [ { "type": "object", @@ -17593,14 +17569,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::AgentStatus" + "AWS::IVS::StreamKey" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::AgentStatus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-agentstatus.html)" + "Resource Type definition for AWS::IVS::StreamKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-streamkey.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-agentstatus.json" + "$ref": "resources/aws-ivs-streamkey.json" } }, "required": [ @@ -17614,9 +17590,9 @@ ], "additionalProperties": false }, - "AWS_PCAConnectorAD_TemplateGroupAccessControlEntry": { + "AWS_QBusiness_WebExperience": { "type": "object", - "markdownDescription": "Definition of AWS::PCAConnectorAD::TemplateGroupAccessControlEntry Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-templategroupaccesscontrolentry.html)", + "markdownDescription": "Definition of AWS::QBusiness::WebExperience Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html)", "allOf": [ { "type": "object", @@ -17624,14 +17600,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCAConnectorAD::TemplateGroupAccessControlEntry" + "AWS::QBusiness::WebExperience" ], "markdownEnumDescriptions": [ - "Definition of AWS::PCAConnectorAD::TemplateGroupAccessControlEntry Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-templategroupaccesscontrolentry.html)" + "Definition of AWS::QBusiness::WebExperience Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html)" ] }, "Properties": { - "$ref": "resources/aws-pcaconnectorad-templategroupaccesscontrolentry.json" + "$ref": "resources/aws-qbusiness-webexperience.json" } }, "required": [ @@ -17645,9 +17621,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_ImageRecipe": { + "AWS_AutoScaling_ScheduledAction": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::ImageRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html)", + "markdownDescription": "The AWS::AutoScaling::ScheduledAction resource specifies an Amazon EC2 Auto Scaling scheduled action so that the Auto Scaling group can change the number of instances available for your application in response to predictable load changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html)", "allOf": [ { "type": "object", @@ -17655,14 +17631,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::ImageRecipe" + "AWS::AutoScaling::ScheduledAction" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::ImageRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagerecipe.html)" + "The AWS::AutoScaling::ScheduledAction resource specifies an Amazon EC2 Auto Scaling scheduled action so that the Auto Scaling group can change the number of instances available for your application in response to predictable load changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-imagerecipe.json" + "$ref": "resources/aws-autoscaling-scheduledaction.json" } }, "required": [ @@ -17676,9 +17652,9 @@ ], "additionalProperties": false }, - "AWS_ControlTower_LandingZone": { + "AWS_ECS_CapacityProvider": { "type": "object", - "markdownDescription": "Definition of AWS::ControlTower::LandingZone Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-landingzone.html)", + "markdownDescription": "Resource Type definition for AWS::ECS::CapacityProvider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html)", "allOf": [ { "type": "object", @@ -17686,19 +17662,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ControlTower::LandingZone" + "AWS::ECS::CapacityProvider" ], "markdownEnumDescriptions": [ - "Definition of AWS::ControlTower::LandingZone Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-landingzone.html)" + "Resource Type definition for AWS::ECS::CapacityProvider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-controltower-landingzone.json" + "$ref": "resources/aws-ecs-capacityprovider.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -17707,9 +17682,9 @@ ], "additionalProperties": false }, - "AWS_IoT_SoftwarePackage": { + "AWS_AppIntegrations_EventIntegration": { "type": "object", - "markdownDescription": "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html)", + "markdownDescription": "Resource Type definition for AWS::AppIntegrations::EventIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-eventintegration.html)", "allOf": [ { "type": "object", @@ -17717,18 +17692,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::SoftwarePackage" + "AWS::AppIntegrations::EventIntegration" ], "markdownEnumDescriptions": [ - "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackage.html)" + "Resource Type definition for AWS::AppIntegrations::EventIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-eventintegration.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-softwarepackage.json" + "$ref": "resources/aws-appintegrations-eventintegration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -17737,9 +17713,9 @@ ], "additionalProperties": false }, - "AWS_SES_ReceiptFilter": { + "AWS_DataSync_LocationHDFS": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::ReceiptFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationHDFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html)", "allOf": [ { "type": "object", @@ -17747,14 +17723,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::ReceiptFilter" + "AWS::DataSync::LocationHDFS" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::ReceiptFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptfilter.html)" + "Resource schema for AWS::DataSync::LocationHDFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-receiptfilter.json" + "$ref": "resources/aws-datasync-locationhdfs.json" } }, "required": [ @@ -17768,9 +17744,9 @@ ], "additionalProperties": false }, - "AWS_Connect_Queue": { + "AWS_EC2_IPAMPoolCidr": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-queue.html)", + "markdownDescription": "Resource Schema of AWS::EC2::IPAMPoolCidr Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampoolcidr.html)", "allOf": [ { "type": "object", @@ -17778,14 +17754,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::Queue" + "AWS::EC2::IPAMPoolCidr" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-queue.html)" + "Resource Schema of AWS::EC2::IPAMPoolCidr Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampoolcidr.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-queue.json" + "$ref": "resources/aws-ec2-ipampoolcidr.json" } }, "required": [ @@ -17799,9 +17775,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_ImageBuilder": { + "AWS_M2_Deployment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::ImageBuilder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html)", + "markdownDescription": "Represents a deployment resource of an AWS Mainframe Modernization (M2) application to a specified environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-deployment.html)", "allOf": [ { "type": "object", @@ -17809,14 +17785,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::ImageBuilder" + "AWS::M2::Deployment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::ImageBuilder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html)" + "Represents a deployment resource of an AWS Mainframe Modernization (M2) application to a specified environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-deployment.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-imagebuilder.json" + "$ref": "resources/aws-m2-deployment.json" } }, "required": [ @@ -17830,9 +17806,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_ServerlessCache": { + "AWS_EC2_LocalGatewayRoute": { "type": "object", - "markdownDescription": "The AWS::ElastiCache::ServerlessCache resource creates an Amazon ElastiCache Serverless Cache. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-serverlesscache.html)", + "markdownDescription": "Resource Type definition for Local Gateway Route which describes a route for a local gateway route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html)", "allOf": [ { "type": "object", @@ -17840,19 +17816,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::ServerlessCache" + "AWS::EC2::LocalGatewayRoute" ], "markdownEnumDescriptions": [ - "The AWS::ElastiCache::ServerlessCache resource creates an Amazon ElastiCache Serverless Cache. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-serverlesscache.html)" + "Resource Type definition for Local Gateway Route which describes a route for a local gateway route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-serverlesscache.json" + "$ref": "resources/aws-ec2-localgatewayroute.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -17861,9 +17836,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_MlflowTrackingServer": { + "AWS_SSMGuiConnect_Preferences": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::MlflowTrackingServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-mlflowtrackingserver.html)", + "markdownDescription": "Definition of AWS::SSMGuiConnect::Preferences Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmguiconnect-preferences.html)", "allOf": [ { "type": "object", @@ -17871,19 +17846,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::MlflowTrackingServer" + "AWS::SSMGuiConnect::Preferences" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::MlflowTrackingServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-mlflowtrackingserver.html)" + "Definition of AWS::SSMGuiConnect::Preferences Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmguiconnect-preferences.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-mlflowtrackingserver.json" + "$ref": "resources/aws-ssmguiconnect-preferences.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -17892,9 +17866,9 @@ ], "additionalProperties": false }, - "AWS_SSM_Document": { + "AWS_Greengrass_CoreDefinitionVersion": { "type": "object", - "markdownDescription": "The AWS::SSM::Document resource is an SSM document in AWS Systems Manager that defines the actions that Systems Manager performs, which can be used to set up and run commands on your instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::CoreDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html)", "allOf": [ { "type": "object", @@ -17902,14 +17876,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::Document" + "AWS::Greengrass::CoreDefinitionVersion" ], "markdownEnumDescriptions": [ - "The AWS::SSM::Document resource is an SSM document in AWS Systems Manager that defines the actions that Systems Manager performs, which can be used to set up and run commands on your instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html)" + "Resource Type definition for AWS::Greengrass::CoreDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-document.json" + "$ref": "resources/aws-greengrass-coredefinitionversion.json" } }, "required": [ @@ -17923,9 +17897,9 @@ ], "additionalProperties": false }, - "AWS_FIS_TargetAccountConfiguration": { + "AWS_LakeFormation_DataLakeSettings": { "type": "object", - "markdownDescription": "Resource schema for AWS::FIS::TargetAccountConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-targetaccountconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::LakeFormation::DataLakeSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html)", "allOf": [ { "type": "object", @@ -17933,19 +17907,18 @@ "Type": { "type": "string", "enum": [ - "AWS::FIS::TargetAccountConfiguration" + "AWS::LakeFormation::DataLakeSettings" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::FIS::TargetAccountConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-targetaccountconfiguration.html)" + "Resource Type definition for AWS::LakeFormation::DataLakeSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html)" ] }, "Properties": { - "$ref": "resources/aws-fis-targetaccountconfiguration.json" + "$ref": "resources/aws-lakeformation-datalakesettings.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -17954,9 +17927,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackageV2_ChannelGroup": { + "AWS_CloudWatch_Dashboard": { "type": "object", - "markdownDescription": "

Represents a channel group that facilitates the grouping of multiple channels.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html)", + "markdownDescription": "Resource Type definition for AWS::CloudWatch::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html)", "allOf": [ { "type": "object", @@ -17964,14 +17937,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackageV2::ChannelGroup" + "AWS::CloudWatch::Dashboard" ], "markdownEnumDescriptions": [ - "

Represents a channel group that facilitates the grouping of multiple channels.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html)" + "Resource Type definition for AWS::CloudWatch::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackagev2-channelgroup.json" + "$ref": "resources/aws-cloudwatch-dashboard.json" } }, "required": [ @@ -17985,9 +17958,9 @@ ], "additionalProperties": false }, - "AWS_ApplicationAutoScaling_ScalingPolicy": { + "AWS_SageMaker_ModelPackageGroup": { "type": "object", - "markdownDescription": "The ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource defines a scaling policy that Application Auto Scaling uses to adjust the capacity of a scalable target. \n For more information, see [Target tracking scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) in the *Application Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelPackageGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html)", "allOf": [ { "type": "object", @@ -17995,14 +17968,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApplicationAutoScaling::ScalingPolicy" + "AWS::SageMaker::ModelPackageGroup" ], "markdownEnumDescriptions": [ - "The ``AWS::ApplicationAutoScaling::ScalingPolicy`` resource defines a scaling policy that Application Auto Scaling uses to adjust the capacity of a scalable target. \n For more information, see [Target tracking scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-target-tracking.html) and [Step scaling policies](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-step-scaling-policies.html) in the *Application Auto Scaling User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html)" + "Resource Type definition for AWS::SageMaker::ModelPackageGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-applicationautoscaling-scalingpolicy.json" + "$ref": "resources/aws-sagemaker-modelpackagegroup.json" } }, "required": [ @@ -18016,9 +17989,9 @@ ], "additionalProperties": false }, - "AWS_B2BI_Profile": { + "AWS_Glue_Registry": { "type": "object", - "markdownDescription": "Definition of AWS::B2BI::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-profile.html)", + "markdownDescription": "This resource creates a Registry for authoring schemas as part of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html)", "allOf": [ { "type": "object", @@ -18026,14 +17999,14 @@ "Type": { "type": "string", "enum": [ - "AWS::B2BI::Profile" + "AWS::Glue::Registry" ], "markdownEnumDescriptions": [ - "Definition of AWS::B2BI::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-profile.html)" + "This resource creates a Registry for authoring schemas as part of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html)" ] }, "Properties": { - "$ref": "resources/aws-b2bi-profile.json" + "$ref": "resources/aws-glue-registry.json" } }, "required": [ @@ -18047,9 +18020,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_OutpostResolver": { + "AWS_NetworkManager_TransitGatewayRegistration": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::OutpostResolver. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-outpostresolver.html)", + "markdownDescription": "The AWS::NetworkManager::TransitGatewayRegistration type registers a transit gateway in your global network. The transit gateway can be in any AWS Region, but it must be owned by the same AWS account that owns the global network. You cannot register a transit gateway in more than one global network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayregistration.html)", "allOf": [ { "type": "object", @@ -18057,14 +18030,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::OutpostResolver" + "AWS::NetworkManager::TransitGatewayRegistration" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::OutpostResolver. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-outpostresolver.html)" + "The AWS::NetworkManager::TransitGatewayRegistration type registers a transit gateway in your global network. The transit gateway can be in any AWS Region, but it must be owned by the same AWS account that owns the global network. You cannot register a transit gateway in more than one global network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewayregistration.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-outpostresolver.json" + "$ref": "resources/aws-networkmanager-transitgatewayregistration.json" } }, "required": [ @@ -18078,9 +18051,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_Rule": { + "AWS_DataZone_Environment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html)", + "markdownDescription": "Definition of AWS::DataZone::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environment.html)", "allOf": [ { "type": "object", @@ -18088,14 +18061,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::Rule" + "AWS::DataZone::Environment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html)" + "Definition of AWS::DataZone::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-rule.json" + "$ref": "resources/aws-datazone-environment.json" } }, "required": [ @@ -18109,9 +18082,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_Resolver": { + "AWS_Rekognition_StreamProcessor": { "type": "object", - "markdownDescription": "The ``AWS::AppSync::Resolver`` resource defines the logical GraphQL resolver that you attach to fields in a schema. Request and response templates for resolvers are written in Apache Velocity Template Language (VTL) format. For more information about resolvers, see [Resolver Mapping Template Reference](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference.html).\n When you submit an update, CFNLong updates resources based on differences between what you submit and the stack's current template. To cause this resource to be updated you must change a property value for this resource in the CFNshort template. Changing the S3 file content without changing a property value will not result in an update operation.\n See [Update Behaviors of Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html)", + "markdownDescription": "The AWS::Rekognition::StreamProcessor type is used to create an Amazon Rekognition StreamProcessor that you can use to analyze streaming videos.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-streamprocessor.html)", "allOf": [ { "type": "object", @@ -18119,14 +18092,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::Resolver" + "AWS::Rekognition::StreamProcessor" ], "markdownEnumDescriptions": [ - "The ``AWS::AppSync::Resolver`` resource defines the logical GraphQL resolver that you attach to fields in a schema. Request and response templates for resolvers are written in Apache Velocity Template Language (VTL) format. For more information about resolvers, see [Resolver Mapping Template Reference](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference.html).\n When you submit an update, CFNLong updates resources based on differences between what you submit and the stack's current template. To cause this resource to be updated you must change a property value for this resource in the CFNshort template. Changing the S3 file content without changing a property value will not result in an update operation.\n See [Update Behaviors of Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html)" + "The AWS::Rekognition::StreamProcessor type is used to create an Amazon Rekognition StreamProcessor that you can use to analyze streaming videos.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-streamprocessor.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-resolver.json" + "$ref": "resources/aws-rekognition-streamprocessor.json" } }, "required": [ @@ -18140,9 +18113,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_Limit": { + "AWS_Lightsail_Domain": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::Limit Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-limit.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-domain.html)", "allOf": [ { "type": "object", @@ -18150,14 +18123,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::Limit" + "AWS::Lightsail::Domain" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::Limit Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-limit.html)" + "Resource Type definition for AWS::Lightsail::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-limit.json" + "$ref": "resources/aws-lightsail-domain.json" } }, "required": [ @@ -18171,9 +18144,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_SecurityGroupIngress": { + "AWS_EC2_GatewayRouteTableAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroupingress.html)", + "markdownDescription": "Associates a gateway with a route table. The gateway and route table must be in the same VPC. This association causes the incoming traffic to the gateway to be routed according to the routes in the route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html)", "allOf": [ { "type": "object", @@ -18181,14 +18154,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::SecurityGroupIngress" + "AWS::EC2::GatewayRouteTableAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroupingress.html)" + "Associates a gateway with a route table. The gateway and route table must be in the same VPC. This association causes the incoming traffic to the gateway to be routed according to the routes in the route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-securitygroupingress.json" + "$ref": "resources/aws-ec2-gatewayroutetableassociation.json" } }, "required": [ @@ -18202,9 +18175,9 @@ ], "additionalProperties": false }, - "AWS_Organizations_Organization": { + "AWS_AppSync_SourceApiAssociation": { "type": "object", - "markdownDescription": "Resource schema for AWS::Organizations::Organization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organization.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::SourceApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-sourceapiassociation.html)", "allOf": [ { "type": "object", @@ -18212,14 +18185,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Organizations::Organization" + "AWS::AppSync::SourceApiAssociation" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Organizations::Organization \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organization.html)" + "Resource Type definition for AWS::AppSync::SourceApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-sourceapiassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-organizations-organization.json" + "$ref": "resources/aws-appsync-sourceapiassociation.json" } }, "required": [ @@ -18232,9 +18205,9 @@ ], "additionalProperties": false }, - "AWS_IoT_TopicRuleDestination": { + "AWS_Glue_Classifier": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::TopicRuleDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Classifier \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html)", "allOf": [ { "type": "object", @@ -18242,14 +18215,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::TopicRuleDestination" + "AWS::Glue::Classifier" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::TopicRuleDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicruledestination.html)" + "Resource Type definition for AWS::Glue::Classifier \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-topicruledestination.json" + "$ref": "resources/aws-glue-classifier.json" } }, "required": [ @@ -18262,9 +18235,9 @@ ], "additionalProperties": false }, - "AWS_Inspector_ResourceGroup": { + "AWS_Elasticsearch_Domain": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Inspector::ResourceGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html)", + "markdownDescription": "Resource Type definition for AWS::Elasticsearch::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html)", "allOf": [ { "type": "object", @@ -18272,19 +18245,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Inspector::ResourceGroup" + "AWS::Elasticsearch::Domain" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Inspector::ResourceGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html)" + "Resource Type definition for AWS::Elasticsearch::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-inspector-resourcegroup.json" + "$ref": "resources/aws-elasticsearch-domain.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -18293,9 +18265,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_ModelCard": { + "AWS_AppStream_AppBlockBuilder": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelCard. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelcard.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::AppBlockBuilder. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblockbuilder.html)", "allOf": [ { "type": "object", @@ -18303,14 +18275,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::ModelCard" + "AWS::AppStream::AppBlockBuilder" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::ModelCard. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelcard.html)" + "Resource Type definition for AWS::AppStream::AppBlockBuilder. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblockbuilder.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-modelcard.json" + "$ref": "resources/aws-appstream-appblockbuilder.json" } }, "required": [ @@ -18324,9 +18296,9 @@ ], "additionalProperties": false }, - "AWS_IoT_DomainConfiguration": { + "AWS_Batch_ConsumableResource": { "type": "object", - "markdownDescription": "Create and manage a Domain Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Batch::ConsumableResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-consumableresource.html)", "allOf": [ { "type": "object", @@ -18334,18 +18306,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::DomainConfiguration" + "AWS::Batch::ConsumableResource" ], "markdownEnumDescriptions": [ - "Create and manage a Domain Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html)" + "Resource Type definition for AWS::Batch::ConsumableResource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-consumableresource.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-domainconfiguration.json" + "$ref": "resources/aws-batch-consumableresource.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -18354,9 +18327,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_CoreDefinition": { + "AWS_Backup_RestoreTestingPlan": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::CoreDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html)", + "markdownDescription": "Definition of AWS::Backup::RestoreTestingPlan Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingplan.html)", "allOf": [ { "type": "object", @@ -18364,14 +18337,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::CoreDefinition" + "AWS::Backup::RestoreTestingPlan" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::CoreDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html)" + "Definition of AWS::Backup::RestoreTestingPlan Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingplan.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-coredefinition.json" + "$ref": "resources/aws-backup-restoretestingplan.json" } }, "required": [ @@ -18385,9 +18358,9 @@ ], "additionalProperties": false }, - "AWS_RefactorSpaces_Service": { + "AWS_NetworkManager_GlobalNetwork": { "type": "object", - "markdownDescription": "Definition of AWS::RefactorSpaces::Service Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-service.html)", + "markdownDescription": "The AWS::NetworkManager::GlobalNetwork type specifies a global network of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-globalnetwork.html)", "allOf": [ { "type": "object", @@ -18395,19 +18368,18 @@ "Type": { "type": "string", "enum": [ - "AWS::RefactorSpaces::Service" + "AWS::NetworkManager::GlobalNetwork" ], "markdownEnumDescriptions": [ - "Definition of AWS::RefactorSpaces::Service Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-service.html)" + "The AWS::NetworkManager::GlobalNetwork type specifies a global network of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-globalnetwork.html)" ] }, "Properties": { - "$ref": "resources/aws-refactorspaces-service.json" + "$ref": "resources/aws-networkmanager-globalnetwork.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -18416,9 +18388,9 @@ ], "additionalProperties": false }, - "AWS_Neptune_DBClusterParameterGroup": { + "AWS_EC2_LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { "type": "object", - "markdownDescription": "The AWS::Neptune::DBClusterParameterGroup resource creates a new Amazon Neptune DB cluster parameter group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html)", + "markdownDescription": "Resource Type definition for Local Gateway Route Table Virtual Interface Group Association which describes a local gateway route table virtual interface group association for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevirtualinterfacegroupassociation.html)", "allOf": [ { "type": "object", @@ -18426,14 +18398,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Neptune::DBClusterParameterGroup" + "AWS::EC2::LocalGatewayRouteTableVirtualInterfaceGroupAssociation" ], "markdownEnumDescriptions": [ - "The AWS::Neptune::DBClusterParameterGroup resource creates a new Amazon Neptune DB cluster parameter group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html)" + "Resource Type definition for Local Gateway Route Table Virtual Interface Group Association which describes a local gateway route table virtual interface group association for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevirtualinterfacegroupassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-neptune-dbclusterparametergroup.json" + "$ref": "resources/aws-ec2-localgatewayroutetablevirtualinterfacegroupassociation.json" } }, "required": [ @@ -18447,9 +18419,9 @@ ], "additionalProperties": false }, - "AWS_CodeStarConnections_SyncConfiguration": { + "AWS_BillingConductor_CustomLineItem": { "type": "object", - "markdownDescription": "Schema for AWS::CodeStarConnections::SyncConfiguration resource which is used to enables an AWS resource to be synchronized from a source-provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-syncconfiguration.html)", + "markdownDescription": "A custom line item is an one time charge that is applied to a specific billing group's bill. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html)", "allOf": [ { "type": "object", @@ -18457,14 +18429,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeStarConnections::SyncConfiguration" + "AWS::BillingConductor::CustomLineItem" ], "markdownEnumDescriptions": [ - "Schema for AWS::CodeStarConnections::SyncConfiguration resource which is used to enables an AWS resource to be synchronized from a source-provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-syncconfiguration.html)" + "A custom line item is an one time charge that is applied to a specific billing group's bill. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html)" ] }, "Properties": { - "$ref": "resources/aws-codestarconnections-syncconfiguration.json" + "$ref": "resources/aws-billingconductor-customlineitem.json" } }, "required": [ @@ -18478,9 +18450,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBInstance": { + "AWS_SageMaker_Project": { "type": "object", - "markdownDescription": "The ``AWS::RDS::DBInstance`` resource creates an Amazon DB instance. The new DB instance can be an RDS DB instance, or it can be a DB instance in an Aurora DB cluster.\n For more information about creating an RDS DB instance, see [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html) in the *Amazon RDS User Guide*.\n For more information about creating a DB instance in an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n If you import an existing DB instance, and the template configuration doesn't match the actual configuration of the DB instance, AWS CloudFormation applies the changes in the template during the import operation.\n If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an update that requires replacement, you can apply a stack policy to prevent DB instances from being replaced. For more information, see [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html).\n *Updating DB instances* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB instance, then changes references from other dependent resources to point to the replacement DB instance, and finally deletes the old DB instance.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB instance. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB instance so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB instance. For more information, see [Creating a DB Snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).\n 1. If you want to restore your instance using a DB snapshot, modify the updated template with your DB instance changes and add the ``DBSnapshotIdentifier`` property with the ID of the DB snapshot that you want to use.\n After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you can delete the ``DBSnapshotIdentifier`` property. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.\n 1. Update the stack.\n \n For more information about updating other properties of this resource, see ``ModifyDBInstance``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB instances* \n For DB instances that are part of an Aurora DB cluster, you can set a deletion policy for your DB instance to control how AWS CloudFormation handles the DB instance when the stack is deleted. For Amazon RDS DB instances, you can choose to *retain* the DB instance, to *delete* the DB instance, or to *create a snapshot* of the DB instance. The default AWS CloudFormation behavior depends on the ``DBClusterIdentifier`` property:\n 1. For ``AWS::RDS::DBInstance`` resources that don't specify the ``DBClusterIdentifier`` property, AWS CloudFormation saves a snapshot of the DB instance.\n 1. For ``AWS::RDS::DBInstance`` resources that do specify the ``DBClusterIdentifier`` property, AWS CloudFormation deletes the DB instance.\n \n For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html)", "allOf": [ { "type": "object", @@ -18488,18 +18460,19 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBInstance" + "AWS::SageMaker::Project" ], "markdownEnumDescriptions": [ - "The ``AWS::RDS::DBInstance`` resource creates an Amazon DB instance. The new DB instance can be an RDS DB instance, or it can be a DB instance in an Aurora DB cluster.\n For more information about creating an RDS DB instance, see [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html) in the *Amazon RDS User Guide*.\n For more information about creating a DB instance in an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n If you import an existing DB instance, and the template configuration doesn't match the actual configuration of the DB instance, AWS CloudFormation applies the changes in the template during the import operation.\n If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an update that requires replacement, you can apply a stack policy to prevent DB instances from being replaced. For more information, see [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html).\n *Updating DB instances* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB instance, then changes references from other dependent resources to point to the replacement DB instance, and finally deletes the old DB instance.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB instance. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB instance so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB instance. For more information, see [Creating a DB Snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).\n 1. If you want to restore your instance using a DB snapshot, modify the updated template with your DB instance changes and add the ``DBSnapshotIdentifier`` property with the ID of the DB snapshot that you want to use.\n After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you can delete the ``DBSnapshotIdentifier`` property. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.\n 1. Update the stack.\n \n For more information about updating other properties of this resource, see ``ModifyDBInstance``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB instances* \n For DB instances that are part of an Aurora DB cluster, you can set a deletion policy for your DB instance to control how AWS CloudFormation handles the DB instance when the stack is deleted. For Amazon RDS DB instances, you can choose to *retain* the DB instance, to *delete* the DB instance, or to *create a snapshot* of the DB instance. The default AWS CloudFormation behavior depends on the ``DBClusterIdentifier`` property:\n 1. For ``AWS::RDS::DBInstance`` resources that don't specify the ``DBClusterIdentifier`` property, AWS CloudFormation saves a snapshot of the DB instance.\n 1. For ``AWS::RDS::DBInstance`` resources that do specify the ``DBClusterIdentifier`` property, AWS CloudFormation deletes the DB instance.\n \n For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html)" + "Resource Type definition for AWS::SageMaker::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-project.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbinstance.json" + "$ref": "resources/aws-sagemaker-project.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -18508,9 +18481,9 @@ ], "additionalProperties": false }, - "AWS_Elasticsearch_Domain": { + "AWS_ServiceCatalog_Portfolio": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Elasticsearch::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::Portfolio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html)", "allOf": [ { "type": "object", @@ -18518,18 +18491,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Elasticsearch::Domain" + "AWS::ServiceCatalog::Portfolio" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Elasticsearch::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html)" + "Resource Type definition for AWS::ServiceCatalog::Portfolio \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolio.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticsearch-domain.json" + "$ref": "resources/aws-servicecatalog-portfolio.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -18538,9 +18512,9 @@ ], "additionalProperties": false }, - "AWS_IoT_ThingGroup": { + "AWS_ImageBuilder_ImagePipeline": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::ThingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::ImagePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html)", "allOf": [ { "type": "object", @@ -18548,14 +18522,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::ThingGroup" + "AWS::ImageBuilder::ImagePipeline" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::ThingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html)" + "Resource schema for AWS::ImageBuilder::ImagePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-thinggroup.json" + "$ref": "resources/aws-imagebuilder-imagepipeline.json" } }, "required": [ @@ -18568,9 +18542,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_FunctionDefinitionVersion": { + "AWS_SSM_ResourceDataSync": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::FunctionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html)", + "markdownDescription": "Resource Type definition for AWS::SSM::ResourceDataSync \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html)", "allOf": [ { "type": "object", @@ -18578,14 +18552,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::FunctionDefinitionVersion" + "AWS::SSM::ResourceDataSync" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::FunctionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html)" + "Resource Type definition for AWS::SSM::ResourceDataSync \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-functiondefinitionversion.json" + "$ref": "resources/aws-ssm-resourcedatasync.json" } }, "required": [ @@ -18599,9 +18573,9 @@ ], "additionalProperties": false }, - "AWS_SES_ContactList": { + "AWS_Lightsail_Container": { "type": "object", - "markdownDescription": "Resource schema for AWS::SES::ContactList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-container.html)", "allOf": [ { "type": "object", @@ -18609,18 +18583,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::ContactList" + "AWS::Lightsail::Container" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::SES::ContactList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-contactlist.html)" + "Resource Type definition for AWS::Lightsail::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-container.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-contactlist.json" + "$ref": "resources/aws-lightsail-container.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -18629,9 +18604,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_Assistant": { + "AWS_Logs_DeliveryDestination": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::Assistant Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistant.html)", + "markdownDescription": "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverydestination.html)", "allOf": [ { "type": "object", @@ -18639,14 +18614,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::Assistant" + "AWS::Logs::DeliveryDestination" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::Assistant Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistant.html)" + "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverydestination.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-assistant.json" + "$ref": "resources/aws-logs-deliverydestination.json" } }, "required": [ @@ -18660,9 +18635,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_Component": { + "AWS_IoT_RoleAlias": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::Component \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html)", + "markdownDescription": "Use the AWS::IoT::RoleAlias resource to declare an AWS IoT RoleAlias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html)", "allOf": [ { "type": "object", @@ -18670,14 +18645,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::Component" + "AWS::IoT::RoleAlias" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::Component \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-component.html)" + "Use the AWS::IoT::RoleAlias resource to declare an AWS IoT RoleAlias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-rolealias.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-component.json" + "$ref": "resources/aws-iot-rolealias.json" } }, "required": [ @@ -18691,9 +18666,9 @@ ], "additionalProperties": false }, - "AWS_Backup_RestoreTestingSelection": { + "Alexa_ASK_Skill": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Backup::RestoreTestingSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingselection.html)", + "markdownDescription": "Resource Type definition for Alexa::ASK::Skill \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-alexa-ask-skill.html)", "allOf": [ { "type": "object", @@ -18701,14 +18676,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::RestoreTestingSelection" + "Alexa::ASK::Skill" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Backup::RestoreTestingSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingselection.html)" + "Resource Type definition for Alexa::ASK::Skill \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-alexa-ask-skill.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-restoretestingselection.json" + "$ref": "resources/alexa-ask-skill.json" } }, "required": [ @@ -18722,9 +18697,9 @@ ], "additionalProperties": false }, - "AWS_AutoScalingPlans_ScalingPlan": { + "AWS_Config_RemediationConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AutoScalingPlans::ScalingPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html)", + "markdownDescription": "Resource Type definition for AWS::Config::RemediationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html)", "allOf": [ { "type": "object", @@ -18732,14 +18707,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AutoScalingPlans::ScalingPlan" + "AWS::Config::RemediationConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AutoScalingPlans::ScalingPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html)" + "Resource Type definition for AWS::Config::RemediationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-autoscalingplans-scalingplan.json" + "$ref": "resources/aws-config-remediationconfiguration.json" } }, "required": [ @@ -18753,9 +18728,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_Analysis": { + "AWS_IoT_BillingGroup": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::Analysis Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::BillingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html)", "allOf": [ { "type": "object", @@ -18763,19 +18738,18 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::Analysis" + "AWS::IoT::BillingGroup" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::Analysis Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-analysis.html)" + "Resource Type definition for AWS::IoT::BillingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-analysis.json" + "$ref": "resources/aws-iot-billinggroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -18784,9 +18758,9 @@ ], "additionalProperties": false }, - "AWS_DynamoDB_GlobalTable": { + "AWS_EC2_PrefixList": { "type": "object", - "markdownDescription": "Version: None. Resource Type definition for AWS::DynamoDB::GlobalTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html)", + "markdownDescription": "Resource schema of AWS::EC2::PrefixList Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html)", "allOf": [ { "type": "object", @@ -18794,14 +18768,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DynamoDB::GlobalTable" + "AWS::EC2::PrefixList" ], "markdownEnumDescriptions": [ - "Version: None. Resource Type definition for AWS::DynamoDB::GlobalTable \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html)" + "Resource schema of AWS::EC2::PrefixList Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-prefixlist.html)" ] }, "Properties": { - "$ref": "resources/aws-dynamodb-globaltable.json" + "$ref": "resources/aws-ec2-prefixlist.json" } }, "required": [ @@ -18815,9 +18789,9 @@ ], "additionalProperties": false }, - "AWS_Comprehend_DocumentClassifier": { + "AWS_ServiceDiscovery_PrivateDnsNamespace": { "type": "object", - "markdownDescription": "Document Classifier enables training document classifier models. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-documentclassifier.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::PrivateDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html)", "allOf": [ { "type": "object", @@ -18825,14 +18799,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Comprehend::DocumentClassifier" + "AWS::ServiceDiscovery::PrivateDnsNamespace" ], "markdownEnumDescriptions": [ - "Document Classifier enables training document classifier models. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-documentclassifier.html)" + "Resource Type definition for AWS::ServiceDiscovery::PrivateDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-privatednsnamespace.html)" ] }, "Properties": { - "$ref": "resources/aws-comprehend-documentclassifier.json" + "$ref": "resources/aws-servicediscovery-privatednsnamespace.json" } }, "required": [ @@ -18846,9 +18820,9 @@ ], "additionalProperties": false }, - "AWS_CodeDeploy_DeploymentConfig": { + "AWS_Route53_RecordSetGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeDeploy::DeploymentConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html)", + "markdownDescription": "Resource Type definition for AWS::Route53::RecordSetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html)", "allOf": [ { "type": "object", @@ -18856,14 +18830,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeDeploy::DeploymentConfig" + "AWS::Route53::RecordSetGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeDeploy::DeploymentConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html)" + "Resource Type definition for AWS::Route53::RecordSetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-codedeploy-deploymentconfig.json" + "$ref": "resources/aws-route53-recordsetgroup.json" } }, "required": [ @@ -18876,9 +18850,9 @@ ], "additionalProperties": false }, - "AWS_AppMesh_GatewayRoute": { + "AWS_Wisdom_QuickResponse": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppMesh::GatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html)", + "markdownDescription": "Definition of AWS::Wisdom::QuickResponse Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-quickresponse.html)", "allOf": [ { "type": "object", @@ -18886,14 +18860,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppMesh::GatewayRoute" + "AWS::Wisdom::QuickResponse" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppMesh::GatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html)" + "Definition of AWS::Wisdom::QuickResponse Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-quickresponse.html)" ] }, "Properties": { - "$ref": "resources/aws-appmesh-gatewayroute.json" + "$ref": "resources/aws-wisdom-quickresponse.json" } }, "required": [ @@ -18907,9 +18881,9 @@ ], "additionalProperties": false }, - "AWS_Connect_QuickConnect": { + "AWS_SSM_PatchBaseline": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::QuickConnect \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-quickconnect.html)", + "markdownDescription": "Resource Type definition for AWS::SSM::PatchBaseline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html)", "allOf": [ { "type": "object", @@ -18917,14 +18891,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::QuickConnect" + "AWS::SSM::PatchBaseline" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::QuickConnect \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-quickconnect.html)" + "Resource Type definition for AWS::SSM::PatchBaseline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-quickconnect.json" + "$ref": "resources/aws-ssm-patchbaseline.json" } }, "required": [ @@ -18938,9 +18912,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_Cluster": { + "AWS_Route53Resolver_FirewallRuleGroup": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::Cluster Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cluster.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::FirewallRuleGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroup.html)", "allOf": [ { "type": "object", @@ -18948,14 +18922,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::Cluster" + "AWS::Route53Resolver::FirewallRuleGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::Cluster Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cluster.html)" + "Resource schema for AWS::Route53Resolver::FirewallRuleGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-cluster.json" + "$ref": "resources/aws-route53resolver-firewallrulegroup.json" } }, "required": [ @@ -18968,9 +18942,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_EnvironmentActions": { + "AWS_EC2_VolumeAttachment": { "type": "object", - "markdownDescription": "Definition of AWS::DataZone::EnvironmentActions Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentactions.html)", + "markdownDescription": "Attaches an Amazon EBS volume to a running instance and exposes it to the instance with the specified device name.\n Before this resource can be deleted (and therefore the volume detached), you must first unmount the volume in the instance. Failure to do so results in the volume being stuck in the busy state while it is trying to detach, which could possibly damage the file system or the data it contains.\n If an Amazon EBS volume is the root device of an instance, it cannot be detached while the instance is in the \"running\" state. To detach the root volume, stop the instance first.\n If the root volume is detached from an instance with an MKT product code, then the product codes from that volume are no longer associated with the instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volumeattachment.html)", "allOf": [ { "type": "object", @@ -18978,14 +18952,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::EnvironmentActions" + "AWS::EC2::VolumeAttachment" ], "markdownEnumDescriptions": [ - "Definition of AWS::DataZone::EnvironmentActions Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentactions.html)" + "Attaches an Amazon EBS volume to a running instance and exposes it to the instance with the specified device name.\n Before this resource can be deleted (and therefore the volume detached), you must first unmount the volume in the instance. Failure to do so results in the volume being stuck in the busy state while it is trying to detach, which could possibly damage the file system or the data it contains.\n If an Amazon EBS volume is the root device of an instance, it cannot be detached while the instance is in the \"running\" state. To detach the root volume, stop the instance first.\n If the root volume is detached from an instance with an MKT product code, then the product codes from that volume are no longer associated with the instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volumeattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-environmentactions.json" + "$ref": "resources/aws-ec2-volumeattachment.json" } }, "required": [ @@ -18999,9 +18973,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_QueueEnvironment": { + "AWS_AppIntegrations_Application": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::QueueEnvironment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queueenvironment.html)", + "markdownDescription": "Resource Type definition for AWS:AppIntegrations::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-application.html)", "allOf": [ { "type": "object", @@ -19009,14 +18983,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::QueueEnvironment" + "AWS::AppIntegrations::Application" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::QueueEnvironment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queueenvironment.html)" + "Resource Type definition for AWS:AppIntegrations::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-application.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-queueenvironment.json" + "$ref": "resources/aws-appintegrations-application.json" } }, "required": [ @@ -19030,9 +19004,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_DeviceFleet": { + "AWS_IoTSiteWise_Asset": { "type": "object", - "markdownDescription": "Resource schema for AWS::SageMaker::DeviceFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html)", "allOf": [ { "type": "object", @@ -19040,14 +19014,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::DeviceFleet" + "AWS::IoTSiteWise::Asset" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::SageMaker::DeviceFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-devicefleet.html)" + "Resource schema for AWS::IoTSiteWise::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-devicefleet.json" + "$ref": "resources/aws-iotsitewise-asset.json" } }, "required": [ @@ -19061,9 +19035,9 @@ ], "additionalProperties": false }, - "AWS_MemoryDB_ACL": { + "AWS_EC2_NatGateway": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MemoryDB::ACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-acl.html)", + "markdownDescription": "Specifies a network address translation (NAT) gateway in the specified subnet. You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.\n With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see [NAT gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) in the *Amazon VPC User Guide*.\n If you add a default route (``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.\n When you associate an Elastic IP address or secondary Elastic IP address with a public NAT gateway, the network border group of the Elastic IP address must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. Otherwise, the NAT gateway fails to launch. You can see the network border group for the AZ by viewing the details of the subnet. Similarly, you can view the network border group for the Elastic IP address by viewing its details. For more information, see [Allocate an Elastic IP address](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#allocate-eip) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html)", "allOf": [ { "type": "object", @@ -19071,19 +19045,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MemoryDB::ACL" + "AWS::EC2::NatGateway" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MemoryDB::ACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-acl.html)" + "Specifies a network address translation (NAT) gateway in the specified subnet. You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.\n With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see [NAT gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) in the *Amazon VPC User Guide*.\n If you add a default route (``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.\n When you associate an Elastic IP address or secondary Elastic IP address with a public NAT gateway, the network border group of the Elastic IP address must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. Otherwise, the NAT gateway fails to launch. You can see the network border group for the AZ by viewing the details of the subnet. Similarly, you can view the network border group for the Elastic IP address by viewing its details. For more information, see [Allocate an Elastic IP address](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#allocate-eip) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html)" ] }, "Properties": { - "$ref": "resources/aws-memorydb-acl.json" + "$ref": "resources/aws-ec2-natgateway.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19092,9 +19065,9 @@ ], "additionalProperties": false }, - "AWS_PCAConnectorSCEP_Challenge": { + "AWS_IVS_Channel": { "type": "object", - "markdownDescription": "Represents a SCEP Challenge that is used for certificate enrollment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-challenge.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-channel.html)", "allOf": [ { "type": "object", @@ -19102,19 +19075,18 @@ "Type": { "type": "string", "enum": [ - "AWS::PCAConnectorSCEP::Challenge" + "AWS::IVS::Channel" ], "markdownEnumDescriptions": [ - "Represents a SCEP Challenge that is used for certificate enrollment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-challenge.html)" + "Resource Type definition for AWS::IVS::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-channel.html)" ] }, "Properties": { - "$ref": "resources/aws-pcaconnectorscep-challenge.json" + "$ref": "resources/aws-ivs-channel.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19123,9 +19095,9 @@ ], "additionalProperties": false }, - "AWS_DMS_ReplicationConfig": { + "AWS_QuickSight_DataSet": { "type": "object", - "markdownDescription": "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationconfig.html)", + "markdownDescription": "Definition of the AWS::QuickSight::DataSet Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dataset.html)", "allOf": [ { "type": "object", @@ -19133,19 +19105,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::ReplicationConfig" + "AWS::QuickSight::DataSet" ], "markdownEnumDescriptions": [ - "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationconfig.html)" + "Definition of the AWS::QuickSight::DataSet Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dataset.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-replicationconfig.json" + "$ref": "resources/aws-quicksight-dataset.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19154,9 +19125,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Distribution": { + "AWS_CloudFormation_PublicTypeVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Distribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html)", + "markdownDescription": "Test and Publish a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html)", "allOf": [ { "type": "object", @@ -19164,19 +19135,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Distribution" + "AWS::CloudFormation::PublicTypeVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Distribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html)" + "Test and Publish a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-distribution.json" + "$ref": "resources/aws-cloudformation-publictypeversion.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19185,9 +19155,9 @@ ], "additionalProperties": false }, - "AWS_SSO_InstanceAccessControlAttributeConfiguration": { + "AWS_Pinpoint_Segment": { "type": "object", - "markdownDescription": "Resource Type definition for SSO InstanceAccessControlAttributeConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instanceaccesscontrolattributeconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html)", "allOf": [ { "type": "object", @@ -19195,14 +19165,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSO::InstanceAccessControlAttributeConfiguration" + "AWS::Pinpoint::Segment" ], "markdownEnumDescriptions": [ - "Resource Type definition for SSO InstanceAccessControlAttributeConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instanceaccesscontrolattributeconfiguration.html)" + "Resource Type definition for AWS::Pinpoint::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html)" ] }, "Properties": { - "$ref": "resources/aws-sso-instanceaccesscontrolattributeconfiguration.json" + "$ref": "resources/aws-pinpoint-segment.json" } }, "required": [ @@ -19216,9 +19186,9 @@ ], "additionalProperties": false }, - "AWS_AppMesh_Route": { + "AWS_Timestream_InfluxDBInstance": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppMesh::Route \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html)", + "markdownDescription": "The AWS::Timestream::InfluxDBInstance resource creates an InfluxDB instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html)", "allOf": [ { "type": "object", @@ -19226,19 +19196,18 @@ "Type": { "type": "string", "enum": [ - "AWS::AppMesh::Route" + "AWS::Timestream::InfluxDBInstance" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppMesh::Route \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html)" + "The AWS::Timestream::InfluxDBInstance resource creates an InfluxDB instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-influxdbinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-appmesh-route.json" + "$ref": "resources/aws-timestream-influxdbinstance.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19247,9 +19216,9 @@ ], "additionalProperties": false }, - "AWS_LaunchWizard_Deployment": { + "AWS_NetworkManager_DirectConnectGatewayAttachment": { "type": "object", - "markdownDescription": "Definition of AWS::LaunchWizard::Deployment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-launchwizard-deployment.html)", + "markdownDescription": "AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-directconnectgatewayattachment.html)", "allOf": [ { "type": "object", @@ -19257,14 +19226,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LaunchWizard::Deployment" + "AWS::NetworkManager::DirectConnectGatewayAttachment" ], "markdownEnumDescriptions": [ - "Definition of AWS::LaunchWizard::Deployment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-launchwizard-deployment.html)" + "AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-directconnectgatewayattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-launchwizard-deployment.json" + "$ref": "resources/aws-networkmanager-directconnectgatewayattachment.json" } }, "required": [ @@ -19278,9 +19247,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_NotebookInstance": { + "AWS_IoT_Logging": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::NotebookInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html)", + "markdownDescription": "Logging Options enable you to configure your IoT V2 logging role and default logging level so that you can monitor progress events logs as it passes from your devices through Iot core service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html)", "allOf": [ { "type": "object", @@ -19288,14 +19257,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::NotebookInstance" + "AWS::IoT::Logging" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::NotebookInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html)" + "Logging Options enable you to configure your IoT V2 logging role and default logging level so that you can monitor progress events logs as it passes from your devices through Iot core service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-logging.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-notebookinstance.json" + "$ref": "resources/aws-iot-logging.json" } }, "required": [ @@ -19309,9 +19278,9 @@ ], "additionalProperties": false }, - "AWS_MemoryDB_Cluster": { + "AWS_EC2_SubnetRouteTableAssociation": { "type": "object", - "markdownDescription": "The AWS::MemoryDB::Cluster resource creates an Amazon MemoryDB Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-cluster.html)", + "markdownDescription": "Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. A route table can be associated with multiple subnets. To create a route table, see [AWS::EC2::RouteTable](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetroutetableassociation.html)", "allOf": [ { "type": "object", @@ -19319,14 +19288,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MemoryDB::Cluster" + "AWS::EC2::SubnetRouteTableAssociation" ], "markdownEnumDescriptions": [ - "The AWS::MemoryDB::Cluster resource creates an Amazon MemoryDB Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-cluster.html)" + "Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. A route table can be associated with multiple subnets. To create a route table, see [AWS::EC2::RouteTable](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetroutetableassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-memorydb-cluster.json" + "$ref": "resources/aws-ec2-subnetroutetableassociation.json" } }, "required": [ @@ -19340,9 +19309,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_Resource": { + "AWS_ECR_PublicRepository": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html)", + "markdownDescription": "The ``AWS::ECR::PublicRepository`` resource specifies an Amazon Elastic Container Registry Public (Amazon ECR Public) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR public repositories](https://docs.aws.amazon.com/AmazonECR/latest/public/public-repositories.html) in the *Amazon ECR Public User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html)", "allOf": [ { "type": "object", @@ -19350,19 +19319,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::Resource" + "AWS::ECR::PublicRepository" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::Resource`` resource creates a resource in an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html)" + "The ``AWS::ECR::PublicRepository`` resource specifies an Amazon Elastic Container Registry Public (Amazon ECR Public) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR public repositories](https://docs.aws.amazon.com/AmazonECR/latest/public/public-repositories.html) in the *Amazon ECR Public User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-publicrepository.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-resource.json" + "$ref": "resources/aws-ecr-publicrepository.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19371,9 +19339,9 @@ ], "additionalProperties": false }, - "AWS_CloudWatch_InsightRule": { + "AWS_Events_EventBus": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudWatch::InsightRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html)", + "markdownDescription": "Resource type definition for AWS::Events::EventBus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html)", "allOf": [ { "type": "object", @@ -19381,14 +19349,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudWatch::InsightRule" + "AWS::Events::EventBus" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudWatch::InsightRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html)" + "Resource type definition for AWS::Events::EventBus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbus.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudwatch-insightrule.json" + "$ref": "resources/aws-events-eventbus.json" } }, "required": [ @@ -19402,9 +19370,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_ResolverDNSSECConfig": { + "AWS_IoTSiteWise_Dataset": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverDNSSECConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverdnssecconfig.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dataset.html)", "allOf": [ { "type": "object", @@ -19412,18 +19380,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::ResolverDNSSECConfig" + "AWS::IoTSiteWise::Dataset" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::ResolverDNSSECConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverdnssecconfig.html)" + "Resource schema for AWS::IoTSiteWise::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dataset.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-resolverdnssecconfig.json" + "$ref": "resources/aws-iotsitewise-dataset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -19432,9 +19401,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorks_App": { + "AWS_WorkSpacesWeb_Portal": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorks::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::Portal Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-portal.html)", "allOf": [ { "type": "object", @@ -19442,19 +19411,18 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorks::App" + "AWS::WorkSpacesWeb::Portal" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorks::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html)" + "Definition of AWS::WorkSpacesWeb::Portal Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-portal.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworks-app.json" + "$ref": "resources/aws-workspacesweb-portal.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19463,9 +19431,9 @@ ], "additionalProperties": false }, - "AWS_IAM_ServerCertificate": { + "AWS_WorkSpacesThinClient_Environment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IAM::ServerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html)", + "markdownDescription": "Resource type definition for AWS::WorkSpacesThinClient::Environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesthinclient-environment.html)", "allOf": [ { "type": "object", @@ -19473,18 +19441,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::ServerCertificate" + "AWS::WorkSpacesThinClient::Environment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IAM::ServerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html)" + "Resource type definition for AWS::WorkSpacesThinClient::Environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesthinclient-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-servercertificate.json" + "$ref": "resources/aws-workspacesthinclient-environment.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -19493,9 +19462,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_Folder": { + "AWS_EC2_VerifiedAccessTrustProvider": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::Folder Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-folder.html)", + "markdownDescription": "The AWS::EC2::VerifiedAccessTrustProvider type describes a verified access trust provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccesstrustprovider.html)", "allOf": [ { "type": "object", @@ -19503,18 +19472,19 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::Folder" + "AWS::EC2::VerifiedAccessTrustProvider" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::Folder Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-folder.html)" + "The AWS::EC2::VerifiedAccessTrustProvider type describes a verified access trust provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccesstrustprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-folder.json" + "$ref": "resources/aws-ec2-verifiedaccesstrustprovider.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -19523,9 +19493,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_FirewallDomainList": { + "AWS_RefactorSpaces_Route": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::FirewallDomainList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewalldomainlist.html)", + "markdownDescription": "Definition of AWS::RefactorSpaces::Route Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-route.html)", "allOf": [ { "type": "object", @@ -19533,18 +19503,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::FirewallDomainList" + "AWS::RefactorSpaces::Route" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::FirewallDomainList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewalldomainlist.html)" + "Definition of AWS::RefactorSpaces::Route Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-route.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-firewalldomainlist.json" + "$ref": "resources/aws-refactorspaces-route.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -19553,9 +19524,9 @@ ], "additionalProperties": false }, - "AWS_CloudTrail_EventDataStore": { + "AWS_Kinesis_Stream": { "type": "object", - "markdownDescription": "A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 7 to 2557 or 3653 days (about seven or ten years) depending on the selected BillingMode. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-eventdatastore.html)", + "markdownDescription": "Resource Type definition for AWS::Kinesis::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html)", "allOf": [ { "type": "object", @@ -19563,14 +19534,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudTrail::EventDataStore" + "AWS::Kinesis::Stream" ], "markdownEnumDescriptions": [ - "A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 7 to 2557 or 3653 days (about seven or ten years) depending on the selected BillingMode. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-eventdatastore.html)" + "Resource Type definition for AWS::Kinesis::Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudtrail-eventdatastore.json" + "$ref": "resources/aws-kinesis-stream.json" } }, "required": [ @@ -19583,9 +19554,9 @@ ], "additionalProperties": false }, - "AWS_CodeStarConnections_RepositoryLink": { + "AWS_S3ObjectLambda_AccessPointPolicy": { "type": "object", - "markdownDescription": "Schema for AWS::CodeStarConnections::RepositoryLink resource which is used to aggregate repository metadata relevant to synchronizing source provider content to AWS Resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-repositorylink.html)", + "markdownDescription": "AWS::S3ObjectLambda::AccessPointPolicy resource is an Amazon S3ObjectLambda policy type that you can use to control permissions for your S3ObjectLambda \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspointpolicy.html)", "allOf": [ { "type": "object", @@ -19593,14 +19564,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeStarConnections::RepositoryLink" + "AWS::S3ObjectLambda::AccessPointPolicy" ], "markdownEnumDescriptions": [ - "Schema for AWS::CodeStarConnections::RepositoryLink resource which is used to aggregate repository metadata relevant to synchronizing source provider content to AWS Resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-repositorylink.html)" + "AWS::S3ObjectLambda::AccessPointPolicy resource is an Amazon S3ObjectLambda policy type that you can use to control permissions for your S3ObjectLambda \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspointpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-codestarconnections-repositorylink.json" + "$ref": "resources/aws-s3objectlambda-accesspointpolicy.json" } }, "required": [ @@ -19614,9 +19585,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryControl_ControlPanel": { + "AWS_ServiceCatalog_CloudFormationProduct": { "type": "object", - "markdownDescription": "AWS Route53 Recovery Control Control Panel resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-controlpanel.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::CloudFormationProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html)", "allOf": [ { "type": "object", @@ -19624,14 +19595,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryControl::ControlPanel" + "AWS::ServiceCatalog::CloudFormationProduct" ], "markdownEnumDescriptions": [ - "AWS Route53 Recovery Control Control Panel resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-controlpanel.html)" + "Resource Type definition for AWS::ServiceCatalog::CloudFormationProduct \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-cloudformationproduct.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoverycontrol-controlpanel.json" + "$ref": "resources/aws-servicecatalog-cloudformationproduct.json" } }, "required": [ @@ -19645,9 +19616,9 @@ ], "additionalProperties": false }, - "AWS_MemoryDB_ParameterGroup": { + "AWS_FraudDetector_EventType": { "type": "object", - "markdownDescription": "The AWS::MemoryDB::ParameterGroup resource creates an Amazon MemoryDB ParameterGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-parametergroup.html)", + "markdownDescription": "A resource schema for an EventType in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-eventtype.html)", "allOf": [ { "type": "object", @@ -19655,14 +19626,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MemoryDB::ParameterGroup" + "AWS::FraudDetector::EventType" ], "markdownEnumDescriptions": [ - "The AWS::MemoryDB::ParameterGroup resource creates an Amazon MemoryDB ParameterGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-parametergroup.html)" + "A resource schema for an EventType in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-eventtype.html)" ] }, "Properties": { - "$ref": "resources/aws-memorydb-parametergroup.json" + "$ref": "resources/aws-frauddetector-eventtype.json" } }, "required": [ @@ -19676,9 +19647,9 @@ ], "additionalProperties": false }, - "AWS_Connect_Prompt": { + "AWS_Macie_AllowList": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::Prompt \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-prompt.html)", + "markdownDescription": "Macie AllowList resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-allowlist.html)", "allOf": [ { "type": "object", @@ -19686,14 +19657,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::Prompt" + "AWS::Macie::AllowList" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::Prompt \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-prompt.html)" + "Macie AllowList resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-allowlist.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-prompt.json" + "$ref": "resources/aws-macie-allowlist.json" } }, "required": [ @@ -19707,9 +19678,9 @@ ], "additionalProperties": false }, - "AWS_MemoryDB_MultiRegionCluster": { + "AWS_Cassandra_Keyspace": { "type": "object", - "markdownDescription": "The AWS::MemoryDB::Multi Region Cluster resource creates an Amazon MemoryDB Multi Region Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-multiregioncluster.html)", + "markdownDescription": "Resource schema for AWS::Cassandra::Keyspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html)", "allOf": [ { "type": "object", @@ -19717,19 +19688,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MemoryDB::MultiRegionCluster" + "AWS::Cassandra::Keyspace" ], "markdownEnumDescriptions": [ - "The AWS::MemoryDB::Multi Region Cluster resource creates an Amazon MemoryDB Multi Region Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-multiregioncluster.html)" + "Resource schema for AWS::Cassandra::Keyspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html)" ] }, "Properties": { - "$ref": "resources/aws-memorydb-multiregioncluster.json" + "$ref": "resources/aws-cassandra-keyspace.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19738,9 +19708,9 @@ ], "additionalProperties": false }, - "AWS_NetworkFirewall_Firewall": { + "AWS_NetworkFirewall_VpcEndpointAssociation": { "type": "object", - "markdownDescription": "Resource type definition for AWS::NetworkFirewall::Firewall \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html)", + "markdownDescription": "Resource type definition for AWS::NetworkFirewall::VpcEndpointAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html)", "allOf": [ { "type": "object", @@ -19748,14 +19718,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkFirewall::Firewall" + "AWS::NetworkFirewall::VpcEndpointAssociation" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::NetworkFirewall::Firewall \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html)" + "Resource type definition for AWS::NetworkFirewall::VpcEndpointAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-networkfirewall-firewall.json" + "$ref": "resources/aws-networkfirewall-vpcendpointassociation.json" } }, "required": [ @@ -19769,9 +19739,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_AgentAlias": { + "AWS_SSO_Assignment": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::AgentAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html)", + "markdownDescription": "Resource Type definition for SSO assignmet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html)", "allOf": [ { "type": "object", @@ -19779,14 +19749,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::AgentAlias" + "AWS::SSO::Assignment" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::AgentAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html)" + "Resource Type definition for SSO assignmet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-agentalias.json" + "$ref": "resources/aws-sso-assignment.json" } }, "required": [ @@ -19800,9 +19770,9 @@ ], "additionalProperties": false }, - "AWS_S3Tables_TableBucketPolicy": { + "AWS_AppRunner_AutoScalingConfiguration": { "type": "object", - "markdownDescription": "Applies an IAM resource policy to a table bucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucketpolicy.html)", + "markdownDescription": "Describes an AWS App Runner automatic configuration resource that enables automatic scaling of instances used to process web requests. You can share an auto scaling configuration across multiple services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-autoscalingconfiguration.html)", "allOf": [ { "type": "object", @@ -19810,19 +19780,18 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Tables::TableBucketPolicy" + "AWS::AppRunner::AutoScalingConfiguration" ], "markdownEnumDescriptions": [ - "Applies an IAM resource policy to a table bucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucketpolicy.html)" + "Describes an AWS App Runner automatic configuration resource that enables automatic scaling of instances used to process web requests. You can share an auto scaling configuration across multiple services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-autoscalingconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-s3tables-tablebucketpolicy.json" + "$ref": "resources/aws-apprunner-autoscalingconfiguration.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19831,9 +19800,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_InAppTemplate": { + "AWS_Timestream_Table": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::InAppTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-inapptemplate.html)", + "markdownDescription": "The AWS::Timestream::Table resource creates a Timestream Table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-table.html)", "allOf": [ { "type": "object", @@ -19841,14 +19810,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::InAppTemplate" + "AWS::Timestream::Table" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::InAppTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-inapptemplate.html)" + "The AWS::Timestream::Table resource creates a Timestream Table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-table.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-inapptemplate.json" + "$ref": "resources/aws-timestream-table.json" } }, "required": [ @@ -19862,9 +19831,9 @@ ], "additionalProperties": false }, - "AWS_EC2_Route": { + "AWS_SSMContacts_Contact": { "type": "object", - "markdownDescription": "Specifies a route in a route table. For more information, see [Routes](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html#route-table-routes) in the *Amazon VPC User Guide*.\n You must specify either a destination CIDR block or prefix list ID. You must also specify exactly one of the resources as the target.\n If you create a route that references a transit gateway in the same template where you create the transit gateway, you must declare a dependency on the transit gateway attachment. The route table cannot use the transit gateway until it has successfully attached to the VPC. Add a [DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) in the ``AWS::EC2::Route`` resource to explicitly declare a dependency on the ``AWS::EC2::TransitGatewayAttachment`` resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html)", + "markdownDescription": "Resource Type definition for AWS::SSMContacts::Contact \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html)", "allOf": [ { "type": "object", @@ -19872,14 +19841,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::Route" + "AWS::SSMContacts::Contact" ], "markdownEnumDescriptions": [ - "Specifies a route in a route table. For more information, see [Routes](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html#route-table-routes) in the *Amazon VPC User Guide*.\n You must specify either a destination CIDR block or prefix list ID. You must also specify exactly one of the resources as the target.\n If you create a route that references a transit gateway in the same template where you create the transit gateway, you must declare a dependency on the transit gateway attachment. The route table cannot use the transit gateway until it has successfully attached to the VPC. Add a [DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) in the ``AWS::EC2::Route`` resource to explicitly declare a dependency on the ``AWS::EC2::TransitGatewayAttachment`` resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html)" + "Resource Type definition for AWS::SSMContacts::Contact \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-route.json" + "$ref": "resources/aws-ssmcontacts-contact.json" } }, "required": [ @@ -19893,9 +19862,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_PortfolioProductAssociation": { + "AWS_CodeDeploy_Application": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::PortfolioProductAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html)", + "markdownDescription": "The AWS::CodeDeploy::Application resource creates an AWS CodeDeploy application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html)", "allOf": [ { "type": "object", @@ -19903,19 +19872,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::PortfolioProductAssociation" + "AWS::CodeDeploy::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::PortfolioProductAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html)" + "The AWS::CodeDeploy::Application resource creates an AWS CodeDeploy application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-portfolioproductassociation.json" + "$ref": "resources/aws-codedeploy-application.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -19924,9 +19892,9 @@ ], "additionalProperties": false }, - "AWS_StepFunctions_StateMachineAlias": { + "AWS_Macie_FindingsFilter": { "type": "object", - "markdownDescription": "Resource schema for StateMachineAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachinealias.html)", + "markdownDescription": "Macie FindingsFilter resource schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html)", "allOf": [ { "type": "object", @@ -19934,18 +19902,19 @@ "Type": { "type": "string", "enum": [ - "AWS::StepFunctions::StateMachineAlias" + "AWS::Macie::FindingsFilter" ], "markdownEnumDescriptions": [ - "Resource schema for StateMachineAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachinealias.html)" + "Macie FindingsFilter resource schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html)" ] }, "Properties": { - "$ref": "resources/aws-stepfunctions-statemachinealias.json" + "$ref": "resources/aws-macie-findingsfilter.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -19954,9 +19923,9 @@ ], "additionalProperties": false }, - "AWS_Route53_HostedZone": { + "AWS_SSM_Document": { "type": "object", - "markdownDescription": "Creates a new public or private hosted zone. You create records in a public hosted zone to define how you want to route traffic on the internet for a domain, such as example.com, and its subdomains (apex.example.com, acme.example.com). You create records in a private hosted zone to define how you want to route traffic for a domain and its subdomains within one or more Amazon Virtual Private Clouds (Amazon VPCs). \n You can't convert a public hosted zone to a private hosted zone or vice versa. Instead, you must create a new hosted zone with the same name and create new resource record sets.\n For more information about charges for hosted zones, see [Amazon Route 53 Pricing](https://docs.aws.amazon.com/route53/pricing/).\n Note the following:\n + You can't create a hosted zone for a top-level domain (TLD) such as .com.\n + If your domain is registered with a registrar other than Route 53, you must update the name servers with your registrar to make Route 53 the DNS service for the domain. For more information, see [Migrating DNS Service for an Existing Domain to Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html) in the *Amazon Route 53 Developer Guide*. \n \n When you submit a ``CreateHostedZone`` request, the initial status of the hosted zone is ``PENDING``. For public hosted zones, this means that the NS and SOA records are not yet available on all Route 53 DNS servers. When the NS and SOA records are available, the status of the zone changes to ``INSYNC``.\n The ``CreateHostedZone`` request requires the caller to have an ``ec2:DescribeVpcs`` permission.\n When creating private hosted zones, the Amazon VPC must belong to the same partition where the hosted zone is created. A partition is a group of AWS-Regions. Each AWS-account is scoped to one partition.\n The following are the supported partitions:\n + ``aws`` - AWS-Regions\n + ``aws-cn`` - China Regions\n + ``aws-us-gov`` - govcloud-us-region\n \n For more information, see [Access Management](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html)", + "markdownDescription": "The AWS::SSM::Document resource is an SSM document in AWS Systems Manager that defines the actions that Systems Manager performs, which can be used to set up and run commands on your instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html)", "allOf": [ { "type": "object", @@ -19964,18 +19933,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53::HostedZone" + "AWS::SSM::Document" ], "markdownEnumDescriptions": [ - "Creates a new public or private hosted zone. You create records in a public hosted zone to define how you want to route traffic on the internet for a domain, such as example.com, and its subdomains (apex.example.com, acme.example.com). You create records in a private hosted zone to define how you want to route traffic for a domain and its subdomains within one or more Amazon Virtual Private Clouds (Amazon VPCs). \n You can't convert a public hosted zone to a private hosted zone or vice versa. Instead, you must create a new hosted zone with the same name and create new resource record sets.\n For more information about charges for hosted zones, see [Amazon Route 53 Pricing](https://docs.aws.amazon.com/route53/pricing/).\n Note the following:\n + You can't create a hosted zone for a top-level domain (TLD) such as .com.\n + If your domain is registered with a registrar other than Route 53, you must update the name servers with your registrar to make Route 53 the DNS service for the domain. For more information, see [Migrating DNS Service for an Existing Domain to Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html) in the *Amazon Route 53 Developer Guide*. \n \n When you submit a ``CreateHostedZone`` request, the initial status of the hosted zone is ``PENDING``. For public hosted zones, this means that the NS and SOA records are not yet available on all Route 53 DNS servers. When the NS and SOA records are available, the status of the zone changes to ``INSYNC``.\n The ``CreateHostedZone`` request requires the caller to have an ``ec2:DescribeVpcs`` permission.\n When creating private hosted zones, the Amazon VPC must belong to the same partition where the hosted zone is created. A partition is a group of AWS-Regions. Each AWS-account is scoped to one partition.\n The following are the supported partitions:\n + ``aws`` - AWS-Regions\n + ``aws-cn`` - China Regions\n + ``aws-us-gov`` - govcloud-us-region\n \n For more information, see [Access Management](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html)" + "The AWS::SSM::Document resource is an SSM document in AWS Systems Manager that defines the actions that Systems Manager performs, which can be used to set up and run commands on your instances. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html)" ] }, "Properties": { - "$ref": "resources/aws-route53-hostedzone.json" + "$ref": "resources/aws-ssm-document.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -19984,9 +19954,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Registry": { + "AWS_HealthLake_FHIRDatastore": { "type": "object", - "markdownDescription": "This resource creates a Registry for authoring schemas as part of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html)", + "markdownDescription": "HealthLake FHIR Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthlake-fhirdatastore.html)", "allOf": [ { "type": "object", @@ -19994,14 +19964,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Registry" + "AWS::HealthLake::FHIRDatastore" ], "markdownEnumDescriptions": [ - "This resource creates a Registry for authoring schemas as part of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html)" + "HealthLake FHIR Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthlake-fhirdatastore.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-registry.json" + "$ref": "resources/aws-healthlake-fhirdatastore.json" } }, "required": [ @@ -20015,9 +19985,9 @@ ], "additionalProperties": false }, - "AWS_AppMesh_VirtualGateway": { + "AWS_ECS_Cluster": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html)", + "markdownDescription": "The ``AWS::ECS::Cluster`` resource creates an Amazon Elastic Container Service (Amazon ECS) cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html)", "allOf": [ { "type": "object", @@ -20025,19 +19995,18 @@ "Type": { "type": "string", "enum": [ - "AWS::AppMesh::VirtualGateway" + "AWS::ECS::Cluster" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppMesh::VirtualGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html)" + "The ``AWS::ECS::Cluster`` resource creates an Amazon Elastic Container Service (Amazon ECS) cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-appmesh-virtualgateway.json" + "$ref": "resources/aws-ecs-cluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -20046,9 +20015,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_FlowEntitlement": { + "AWS_Redshift_EndpointAccess": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::FlowEntitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html)", + "markdownDescription": "Resource schema for a Redshift-managed VPC endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html)", "allOf": [ { "type": "object", @@ -20056,14 +20025,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::FlowEntitlement" + "AWS::Redshift::EndpointAccess" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::FlowEntitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowentitlement.html)" + "Resource schema for a Redshift-managed VPC endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-flowentitlement.json" + "$ref": "resources/aws-redshift-endpointaccess.json" } }, "required": [ @@ -20077,9 +20046,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryReadiness_RecoveryGroup": { + "AWS_EC2_TransitGatewayMulticastGroupSource": { "type": "object", - "markdownDescription": "AWS Route53 Recovery Readiness Recovery Group Schema and API specifications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-recoverygroup.html)", + "markdownDescription": "The AWS::EC2::TransitGatewayMulticastGroupSource registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html)", "allOf": [ { "type": "object", @@ -20087,18 +20056,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryReadiness::RecoveryGroup" + "AWS::EC2::TransitGatewayMulticastGroupSource" ], "markdownEnumDescriptions": [ - "AWS Route53 Recovery Readiness Recovery Group Schema and API specifications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-recoverygroup.html)" + "The AWS::EC2::TransitGatewayMulticastGroupSource registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoveryreadiness-recoverygroup.json" + "$ref": "resources/aws-ec2-transitgatewaymulticastgroupsource.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -20107,9 +20077,9 @@ ], "additionalProperties": false }, - "AWS_ControlTower_EnabledControl": { + "AWS_DataZone_DomainUnit": { "type": "object", - "markdownDescription": "Enables a control on a specified target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledcontrol.html)", + "markdownDescription": "A domain unit enables you to easily organize your assets and other domain entities under specific business units and teams. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domainunit.html)", "allOf": [ { "type": "object", @@ -20117,14 +20087,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ControlTower::EnabledControl" + "AWS::DataZone::DomainUnit" ], "markdownEnumDescriptions": [ - "Enables a control on a specified target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledcontrol.html)" + "A domain unit enables you to easily organize your assets and other domain entities under specific business units and teams. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domainunit.html)" ] }, "Properties": { - "$ref": "resources/aws-controltower-enabledcontrol.json" + "$ref": "resources/aws-datazone-domainunit.json" } }, "required": [ @@ -20138,9 +20108,9 @@ ], "additionalProperties": false }, - "AWS_Logs_Transformer": { + "AWS_ElasticLoadBalancingV2_TrustStore": { "type": "object", - "markdownDescription": "Specifies a transformer on the log group to transform logs into consistent structured and information rich format. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-transformer.html)", + "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancingV2::TrustStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-truststore.html)", "allOf": [ { "type": "object", @@ -20148,19 +20118,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::Transformer" + "AWS::ElasticLoadBalancingV2::TrustStore" ], "markdownEnumDescriptions": [ - "Specifies a transformer on the log group to transform logs into consistent structured and information rich format. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-transformer.html)" + "Resource Type definition for AWS::ElasticLoadBalancingV2::TrustStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-truststore.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-transformer.json" + "$ref": "resources/aws-elasticloadbalancingv2-truststore.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -20169,9 +20138,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchServerless_Collection": { + "AWS_SecurityHub_FindingAggregator": { "type": "object", - "markdownDescription": "Amazon OpenSearchServerless collection resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-collection.html)", + "markdownDescription": "The ``AWS::SecurityHub::FindingAggregator`` resource enables cross-Region aggregation. When cross-Region aggregation is enabled, you can aggregate findings, finding updates, insights, control compliance statuses, and security scores from one or more linked Regions to a single aggregation Region. You can then view and manage all of this data from the aggregation Region. For more details about cross-Region aggregation, see [Cross-Region aggregation](https://docs.aws.amazon.com/securityhub/latest/userguide/finding-aggregation.html) in the *User Guide*\n This resource must be created in the Region that you want to designate as your aggregation Region.\n Cross-Region aggregation is also a prerequisite for using [central configuration](https://docs.aws.amazon.com/securityhub/latest/userguide/central-configuration-intro.html) in ASH. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-findingaggregator.html)", "allOf": [ { "type": "object", @@ -20179,14 +20148,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchServerless::Collection" + "AWS::SecurityHub::FindingAggregator" ], "markdownEnumDescriptions": [ - "Amazon OpenSearchServerless collection resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-collection.html)" + "The ``AWS::SecurityHub::FindingAggregator`` resource enables cross-Region aggregation. When cross-Region aggregation is enabled, you can aggregate findings, finding updates, insights, control compliance statuses, and security scores from one or more linked Regions to a single aggregation Region. You can then view and manage all of this data from the aggregation Region. For more details about cross-Region aggregation, see [Cross-Region aggregation](https://docs.aws.amazon.com/securityhub/latest/userguide/finding-aggregation.html) in the *User Guide*\n This resource must be created in the Region that you want to designate as your aggregation Region.\n Cross-Region aggregation is also a prerequisite for using [central configuration](https://docs.aws.amazon.com/securityhub/latest/userguide/central-configuration-intro.html) in ASH. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-findingaggregator.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchserverless-collection.json" + "$ref": "resources/aws-securityhub-findingaggregator.json" } }, "required": [ @@ -20200,9 +20169,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_SMSChannel": { + "AWS_SageMaker_EndpointConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::SMSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::EndpointConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html)", "allOf": [ { "type": "object", @@ -20210,14 +20179,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::SMSChannel" + "AWS::SageMaker::EndpointConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::SMSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smschannel.html)" + "Resource Type definition for AWS::SageMaker::EndpointConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpointconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-smschannel.json" + "$ref": "resources/aws-sagemaker-endpointconfig.json" } }, "required": [ @@ -20231,9 +20200,9 @@ ], "additionalProperties": false }, - "AWS_ECS_CapacityProvider": { + "AWS_MediaLive_Multiplexprogram": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ECS::CapacityProvider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html)", + "markdownDescription": "Resource schema for AWS::MediaLive::Multiplexprogram \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplexprogram.html)", "allOf": [ { "type": "object", @@ -20241,14 +20210,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECS::CapacityProvider" + "AWS::MediaLive::Multiplexprogram" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ECS::CapacityProvider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html)" + "Resource schema for AWS::MediaLive::Multiplexprogram \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplexprogram.html)" ] }, "Properties": { - "$ref": "resources/aws-ecs-capacityprovider.json" + "$ref": "resources/aws-medialive-multiplexprogram.json" } }, "required": [ @@ -20261,9 +20230,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_ServiceProfile": { + "AWS_AmazonMQ_ConfigurationAssociation": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-serviceprofile.html)", + "markdownDescription": "Resource Type definition for AWS::AmazonMQ::ConfigurationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html)", "allOf": [ { "type": "object", @@ -20271,18 +20240,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::ServiceProfile" + "AWS::AmazonMQ::ConfigurationAssociation" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-serviceprofile.html)" + "Resource Type definition for AWS::AmazonMQ::ConfigurationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-serviceprofile.json" + "$ref": "resources/aws-amazonmq-configurationassociation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -20291,9 +20261,9 @@ ], "additionalProperties": false }, - "AWS_Chatbot_CustomAction": { + "AWS_SageMaker_Space": { "type": "object", - "markdownDescription": "Definition of AWS::Chatbot::CustomAction Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-customaction.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Space \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html)", "allOf": [ { "type": "object", @@ -20301,14 +20271,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Chatbot::CustomAction" + "AWS::SageMaker::Space" ], "markdownEnumDescriptions": [ - "Definition of AWS::Chatbot::CustomAction Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-customaction.html)" + "Resource Type definition for AWS::SageMaker::Space \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-space.html)" ] }, "Properties": { - "$ref": "resources/aws-chatbot-customaction.json" + "$ref": "resources/aws-sagemaker-space.json" } }, "required": [ @@ -20322,9 +20292,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NatGateway": { + "AWS_MediaLive_Cluster": { "type": "object", - "markdownDescription": "Specifies a network address translation (NAT) gateway in the specified subnet. You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.\n With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see [NAT gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) in the *Amazon VPC User Guide*.\n If you add a default route (``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.\n When you associate an Elastic IP address or secondary Elastic IP address with a public NAT gateway, the network border group of the Elastic IP address must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. Otherwise, the NAT gateway fails to launch. You can see the network border group for the AZ by viewing the details of the subnet. Similarly, you can view the network border group for the Elastic IP address by viewing its details. For more information, see [Allocate an Elastic IP address](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#allocate-eip) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html)", + "markdownDescription": "Definition of AWS::MediaLive::Cluster Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cluster.html)", "allOf": [ { "type": "object", @@ -20332,19 +20302,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NatGateway" + "AWS::MediaLive::Cluster" ], "markdownEnumDescriptions": [ - "Specifies a network address translation (NAT) gateway in the specified subnet. You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.\n With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see [NAT gateways](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) in the *Amazon VPC User Guide*.\n If you add a default route (``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.\n When you associate an Elastic IP address or secondary Elastic IP address with a public NAT gateway, the network border group of the Elastic IP address must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. Otherwise, the NAT gateway fails to launch. You can see the network border group for the AZ by viewing the details of the subnet. Similarly, you can view the network border group for the Elastic IP address by viewing its details. For more information, see [Allocate an Elastic IP address](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#allocate-eip) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html)" + "Definition of AWS::MediaLive::Cluster Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-natgateway.json" + "$ref": "resources/aws-medialive-cluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -20353,9 +20322,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_Api": { + "AWS_WAFRegional_IPSet": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::Api`` resource creates an API. WebSocket APIs and HTTP APIs are supported. For more information about WebSocket APIs, see [About WebSocket APIs in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-overview.html) in the *API Gateway Developer Guide*. For more information about HTTP APIs, see [HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html) in the *API Gateway Developer Guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html)", "allOf": [ { "type": "object", @@ -20363,18 +20332,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::Api" + "AWS::WAFRegional::IPSet" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::Api`` resource creates an API. WebSocket APIs and HTTP APIs are supported. For more information about WebSocket APIs, see [About WebSocket APIs in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-overview.html) in the *API Gateway Developer Guide*. For more information about HTTP APIs, see [HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api.html) in the *API Gateway Developer Guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html)" + "Resource Type definition for AWS::WAFRegional::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-api.json" + "$ref": "resources/aws-wafregional-ipset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -20383,9 +20353,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBProxyEndpoint": { + "AWS_Cognito_UserPool": { "type": "object", - "markdownDescription": "Resource schema for AWS::RDS::DBProxyEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxyendpoint.html)", + "markdownDescription": "Definition of AWS::Cognito::UserPool Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html)", "allOf": [ { "type": "object", @@ -20393,19 +20363,18 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBProxyEndpoint" + "AWS::Cognito::UserPool" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::RDS::DBProxyEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxyendpoint.html)" + "Definition of AWS::Cognito::UserPool Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbproxyendpoint.json" + "$ref": "resources/aws-cognito-userpool.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -20414,9 +20383,9 @@ ], "additionalProperties": false }, - "AWS_Forecast_Dataset": { + "AWS_IAM_ServiceLinkedRole": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::Forecast::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-dataset.html)", + "markdownDescription": "Resource Type definition for AWS::IAM::ServiceLinkedRole \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html)", "allOf": [ { "type": "object", @@ -20424,19 +20393,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Forecast::Dataset" + "AWS::IAM::ServiceLinkedRole" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::Forecast::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-dataset.html)" + "Resource Type definition for AWS::IAM::ServiceLinkedRole \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servicelinkedrole.html)" ] }, "Properties": { - "$ref": "resources/aws-forecast-dataset.json" + "$ref": "resources/aws-iam-servicelinkedrole.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -20445,9 +20413,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_MeteredProduct": { + "AWS_Deadline_Farm": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::MeteredProduct Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-meteredproduct.html)", + "markdownDescription": "Definition of AWS::Deadline::Farm Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-farm.html)", "allOf": [ { "type": "object", @@ -20455,18 +20423,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::MeteredProduct" + "AWS::Deadline::Farm" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::MeteredProduct Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-meteredproduct.html)" + "Definition of AWS::Deadline::Farm Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-farm.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-meteredproduct.json" + "$ref": "resources/aws-deadline-farm.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -20475,9 +20444,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_DataSource": { + "AWS_MediaPackageV2_ChannelGroup": { "type": "object", - "markdownDescription": "A data source is used to import technical metadata of assets (data) from the source databases or data warehouses into Amazon DataZone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-datasource.html)", + "markdownDescription": "

Represents a channel group that facilitates the grouping of multiple channels.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html)", "allOf": [ { "type": "object", @@ -20485,14 +20454,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::DataSource" + "AWS::MediaPackageV2::ChannelGroup" ], "markdownEnumDescriptions": [ - "A data source is used to import technical metadata of assets (data) from the source databases or data warehouses into Amazon DataZone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-datasource.html)" + "

Represents a channel group that facilitates the grouping of multiple channels.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-datasource.json" + "$ref": "resources/aws-mediapackagev2-channelgroup.json" } }, "required": [ @@ -20506,9 +20475,9 @@ ], "additionalProperties": false }, - "AWS_EventSchemas_RegistryPolicy": { + "AWS_NetworkFirewall_Firewall": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EventSchemas::RegistryPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html)", + "markdownDescription": "Resource type definition for AWS::NetworkFirewall::Firewall \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html)", "allOf": [ { "type": "object", @@ -20516,14 +20485,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EventSchemas::RegistryPolicy" + "AWS::NetworkFirewall::Firewall" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EventSchemas::RegistryPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html)" + "Resource type definition for AWS::NetworkFirewall::Firewall \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewall.html)" ] }, "Properties": { - "$ref": "resources/aws-eventschemas-registrypolicy.json" + "$ref": "resources/aws-networkfirewall-firewall.json" } }, "required": [ @@ -20537,9 +20506,9 @@ ], "additionalProperties": false }, - "AWS_EKS_IdentityProviderConfig": { + "AWS_Pinpoint_SmsTemplate": { "type": "object", - "markdownDescription": "An object representing an Amazon EKS IdentityProviderConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-identityproviderconfig.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::SmsTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smstemplate.html)", "allOf": [ { "type": "object", @@ -20547,14 +20516,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EKS::IdentityProviderConfig" + "AWS::Pinpoint::SmsTemplate" ], "markdownEnumDescriptions": [ - "An object representing an Amazon EKS IdentityProviderConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-identityproviderconfig.html)" + "Resource Type definition for AWS::Pinpoint::SmsTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-smstemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-eks-identityproviderconfig.json" + "$ref": "resources/aws-pinpoint-smstemplate.json" } }, "required": [ @@ -20568,9 +20537,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_ThreatIntelSet": { + "AWS_KinesisAnalyticsV2_ApplicationCloudWatchLoggingOption": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GuardDuty::ThreatIntelSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html)", + "markdownDescription": "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html)", "allOf": [ { "type": "object", @@ -20578,14 +20547,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::ThreatIntelSet" + "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GuardDuty::ThreatIntelSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html)" + "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-threatintelset.json" + "$ref": "resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.json" } }, "required": [ @@ -20599,9 +20568,9 @@ ], "additionalProperties": false }, - "AWS_EC2_KeyPair": { + "AWS_MediaTailor_SourceLocation": { "type": "object", - "markdownDescription": "Specifies a key pair for use with an EC2long instance as follows:\n + To import an existing key pair, include the ``PublicKeyMaterial`` property.\n + To create a new key pair, omit the ``PublicKeyMaterial`` property.\n \n When you import an existing key pair, you specify the public key material for the key. We assume that you have the private key material for the key. CFNlong does not create or return the private key material when you import a key pair.\n When you create a new key pair, the private key is saved to SYSlong Parameter Store, using a parameter with the following name: ``/ec2/keypair/{key_pair_id}``. For more information about retrieving private key, and the required permissions, see [Create a key pair using](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html#create-key-pair-cloudformation) in the *User Guide*.\n When CFN deletes a key pair that was created or imported by a stack, it also deletes the parameter that was used to store the private key material in Parameter Store. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-keypair.html)", + "markdownDescription": "Definition of AWS::MediaTailor::SourceLocation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-sourcelocation.html)", "allOf": [ { "type": "object", @@ -20609,14 +20578,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::KeyPair" + "AWS::MediaTailor::SourceLocation" ], "markdownEnumDescriptions": [ - "Specifies a key pair for use with an EC2long instance as follows:\n + To import an existing key pair, include the ``PublicKeyMaterial`` property.\n + To create a new key pair, omit the ``PublicKeyMaterial`` property.\n \n When you import an existing key pair, you specify the public key material for the key. We assume that you have the private key material for the key. CFNlong does not create or return the private key material when you import a key pair.\n When you create a new key pair, the private key is saved to SYSlong Parameter Store, using a parameter with the following name: ``/ec2/keypair/{key_pair_id}``. For more information about retrieving private key, and the required permissions, see [Create a key pair using](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html#create-key-pair-cloudformation) in the *User Guide*.\n When CFN deletes a key pair that was created or imported by a stack, it also deletes the parameter that was used to store the private key material in Parameter Store. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-keypair.html)" + "Definition of AWS::MediaTailor::SourceLocation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-sourcelocation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-keypair.json" + "$ref": "resources/aws-mediatailor-sourcelocation.json" } }, "required": [ @@ -20630,9 +20599,9 @@ ], "additionalProperties": false }, - "AWS_FraudDetector_EntityType": { + "AWS_Pinpoint_EventStream": { "type": "object", - "markdownDescription": "An entity type for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-entitytype.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::EventStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html)", "allOf": [ { "type": "object", @@ -20640,14 +20609,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FraudDetector::EntityType" + "AWS::Pinpoint::EventStream" ], "markdownEnumDescriptions": [ - "An entity type for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-entitytype.html)" + "Resource Type definition for AWS::Pinpoint::EventStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-eventstream.html)" ] }, "Properties": { - "$ref": "resources/aws-frauddetector-entitytype.json" + "$ref": "resources/aws-pinpoint-eventstream.json" } }, "required": [ @@ -20661,9 +20630,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationFSxONTAP": { + "AWS_DocDB_DBInstance": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxONTAP. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html)", + "markdownDescription": "Resource Type definition for AWS::DocDB::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html)", "allOf": [ { "type": "object", @@ -20671,14 +20640,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationFSxONTAP" + "AWS::DocDB::DBInstance" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationFSxONTAP. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html)" + "Resource Type definition for AWS::DocDB::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationfsxontap.json" + "$ref": "resources/aws-docdb-dbinstance.json" } }, "required": [ @@ -20692,9 +20661,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetHub_Application": { + "AWS_WorkSpaces_ConnectionAlias": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTFleetHub::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleethub-application.html)", + "markdownDescription": "Resource Type definition for AWS::WorkSpaces::ConnectionAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html)", "allOf": [ { "type": "object", @@ -20702,14 +20671,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetHub::Application" + "AWS::WorkSpaces::ConnectionAlias" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTFleetHub::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleethub-application.html)" + "Resource Type definition for AWS::WorkSpaces::ConnectionAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleethub-application.json" + "$ref": "resources/aws-workspaces-connectionalias.json" } }, "required": [ @@ -20723,9 +20692,9 @@ ], "additionalProperties": false }, - "AWS_DMS_EventSubscription": { + "AWS_Deadline_QueueFleetAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DMS::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html)", + "markdownDescription": "Definition of AWS::Deadline::QueueFleetAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuefleetassociation.html)", "allOf": [ { "type": "object", @@ -20733,14 +20702,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::EventSubscription" + "AWS::Deadline::QueueFleetAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DMS::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html)" + "Definition of AWS::Deadline::QueueFleetAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuefleetassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-eventsubscription.json" + "$ref": "resources/aws-deadline-queuefleetassociation.json" } }, "required": [ @@ -20754,9 +20723,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_Gateway": { + "AWS_WAF_ByteMatchSet": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html)", + "markdownDescription": "Resource Type definition for AWS::WAF::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html)", "allOf": [ { "type": "object", @@ -20764,14 +20733,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::Gateway" + "AWS::WAF::ByteMatchSet" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html)" + "Resource Type definition for AWS::WAF::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-gateway.json" + "$ref": "resources/aws-waf-bytematchset.json" } }, "required": [ @@ -20785,9 +20754,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_BaiduChannel": { + "AWS_VerifiedPermissions_PolicyTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::BaiduChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html)", + "markdownDescription": "Definition of AWS::VerifiedPermissions::PolicyTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policytemplate.html)", "allOf": [ { "type": "object", @@ -20795,14 +20764,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::BaiduChannel" + "AWS::VerifiedPermissions::PolicyTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::BaiduChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html)" + "Definition of AWS::VerifiedPermissions::PolicyTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policytemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-baiduchannel.json" + "$ref": "resources/aws-verifiedpermissions-policytemplate.json" } }, "required": [ @@ -20816,9 +20785,9 @@ ], "additionalProperties": false }, - "AWS_Macie_Session": { + "AWS_Pinpoint_ApplicationSettings": { "type": "object", - "markdownDescription": "The AWS::Macie::Session resource specifies a new Amazon Macie session. A session is an object that represents the Amazon Macie service. A session is required for Amazon Macie to become operational. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-session.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::ApplicationSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html)", "allOf": [ { "type": "object", @@ -20826,18 +20795,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Macie::Session" + "AWS::Pinpoint::ApplicationSettings" ], "markdownEnumDescriptions": [ - "The AWS::Macie::Session resource specifies a new Amazon Macie session. A session is an object that represents the Amazon Macie service. A session is required for Amazon Macie to become operational. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-session.html)" + "Resource Type definition for AWS::Pinpoint::ApplicationSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-applicationsettings.html)" ] }, "Properties": { - "$ref": "resources/aws-macie-session.json" + "$ref": "resources/aws-pinpoint-applicationsettings.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -20846,9 +20816,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_FlowVersion": { + "AWS_ManagedBlockchain_Accessor": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::FlowVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowversion.html)", + "markdownDescription": "Definition of AWS::ManagedBlockchain::com.amazonaws.taiga.webservice.api#Accessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-accessor.html)", "allOf": [ { "type": "object", @@ -20856,14 +20826,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::FlowVersion" + "AWS::ManagedBlockchain::Accessor" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::FlowVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowversion.html)" + "Definition of AWS::ManagedBlockchain::com.amazonaws.taiga.webservice.api#Accessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-accessor.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-flowversion.json" + "$ref": "resources/aws-managedblockchain-accessor.json" } }, "required": [ @@ -20877,9 +20847,9 @@ ], "additionalProperties": false }, - "AWS_KinesisAnalyticsV2_ApplicationReferenceDataSource": { + "AWS_SupportApp_SlackChannelConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html)", + "markdownDescription": "An AWS Support App resource that creates, updates, lists and deletes Slack channel configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackchannelconfiguration.html)", "allOf": [ { "type": "object", @@ -20887,14 +20857,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource" + "AWS::SupportApp::SlackChannelConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationreferencedatasource.html)" + "An AWS Support App resource that creates, updates, lists and deletes Slack channel configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackchannelconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisanalyticsv2-applicationreferencedatasource.json" + "$ref": "resources/aws-supportapp-slackchannelconfiguration.json" } }, "required": [ @@ -20908,9 +20878,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_Profile": { + "AWS_QLDB_Ledger": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Transfer::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-profile.html)", + "markdownDescription": "Resource Type definition for AWS::QLDB::Ledger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html)", "allOf": [ { "type": "object", @@ -20918,14 +20888,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::Profile" + "AWS::QLDB::Ledger" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Transfer::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-profile.html)" + "Resource Type definition for AWS::QLDB::Ledger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-profile.json" + "$ref": "resources/aws-qldb-ledger.json" } }, "required": [ @@ -20939,9 +20909,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationAzureBlob": { + "AWS_DataBrew_Schedule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DataSync::LocationAzureBlob. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html)", + "markdownDescription": "Resource schema for AWS::DataBrew::Schedule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html)", "allOf": [ { "type": "object", @@ -20949,14 +20919,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationAzureBlob" + "AWS::DataBrew::Schedule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DataSync::LocationAzureBlob. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html)" + "Resource schema for AWS::DataBrew::Schedule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationazureblob.json" + "$ref": "resources/aws-databrew-schedule.json" } }, "required": [ @@ -20970,9 +20940,9 @@ ], "additionalProperties": false }, - "AWS_DocDB_DBClusterParameterGroup": { + "AWS_SecurityLake_AwsLogSource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DocDB::DBClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html)", + "markdownDescription": "Resource Type definition for AWS::SecurityLake::AwsLogSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html)", "allOf": [ { "type": "object", @@ -20980,14 +20950,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DocDB::DBClusterParameterGroup" + "AWS::SecurityLake::AwsLogSource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DocDB::DBClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html)" + "Resource Type definition for AWS::SecurityLake::AwsLogSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html)" ] }, "Properties": { - "$ref": "resources/aws-docdb-dbclusterparametergroup.json" + "$ref": "resources/aws-securitylake-awslogsource.json" } }, "required": [ @@ -21001,9 +20971,9 @@ ], "additionalProperties": false }, - "AWS_StepFunctions_StateMachine": { + "AWS_AppMesh_VirtualRouter": { "type": "object", - "markdownDescription": "Resource schema for StateMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html)", + "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualRouter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html)", "allOf": [ { "type": "object", @@ -21011,14 +20981,14 @@ "Type": { "type": "string", "enum": [ - "AWS::StepFunctions::StateMachine" + "AWS::AppMesh::VirtualRouter" ], "markdownEnumDescriptions": [ - "Resource schema for StateMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html)" + "Resource Type definition for AWS::AppMesh::VirtualRouter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualrouter.html)" ] }, "Properties": { - "$ref": "resources/aws-stepfunctions-statemachine.json" + "$ref": "resources/aws-appmesh-virtualrouter.json" } }, "required": [ @@ -21032,9 +21002,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_ContinuousDeploymentPolicy": { + "AWS_EC2_KeyPair": { "type": "object", - "markdownDescription": "Creates a continuous deployment policy that routes a subset of production traffic from a primary distribution to a staging distribution.\n After you create and update a staging distribution, you can use a continuous deployment policy to incrementally move traffic to the staging distribution. This enables you to test changes to a distribution's configuration before moving all of your production traffic to the new configuration.\n For more information, see [Using CloudFront continuous deployment to safely test CDN configuration changes](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/continuous-deployment.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-continuousdeploymentpolicy.html)", + "markdownDescription": "Specifies a key pair for use with an EC2long instance as follows:\n + To import an existing key pair, include the ``PublicKeyMaterial`` property.\n + To create a new key pair, omit the ``PublicKeyMaterial`` property.\n \n When you import an existing key pair, you specify the public key material for the key. We assume that you have the private key material for the key. CFNlong does not create or return the private key material when you import a key pair.\n When you create a new key pair, the private key is saved to SYSlong Parameter Store, using a parameter with the following name: ``/ec2/keypair/{key_pair_id}``. For more information about retrieving private key, and the required permissions, see [Create a key pair using](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html#create-key-pair-cloudformation) in the *User Guide*.\n When CFN deletes a key pair that was created or imported by a stack, it also deletes the parameter that was used to store the private key material in Parameter Store. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-keypair.html)", "allOf": [ { "type": "object", @@ -21042,14 +21012,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::ContinuousDeploymentPolicy" + "AWS::EC2::KeyPair" ], "markdownEnumDescriptions": [ - "Creates a continuous deployment policy that routes a subset of production traffic from a primary distribution to a staging distribution.\n After you create and update a staging distribution, you can use a continuous deployment policy to incrementally move traffic to the staging distribution. This enables you to test changes to a distribution's configuration before moving all of your production traffic to the new configuration.\n For more information, see [Using CloudFront continuous deployment to safely test CDN configuration changes](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/continuous-deployment.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-continuousdeploymentpolicy.html)" + "Specifies a key pair for use with an EC2long instance as follows:\n + To import an existing key pair, include the ``PublicKeyMaterial`` property.\n + To create a new key pair, omit the ``PublicKeyMaterial`` property.\n \n When you import an existing key pair, you specify the public key material for the key. We assume that you have the private key material for the key. CFNlong does not create or return the private key material when you import a key pair.\n When you create a new key pair, the private key is saved to SYSlong Parameter Store, using a parameter with the following name: ``/ec2/keypair/{key_pair_id}``. For more information about retrieving private key, and the required permissions, see [Create a key pair using](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html#create-key-pair-cloudformation) in the *User Guide*.\n When CFN deletes a key pair that was created or imported by a stack, it also deletes the parameter that was used to store the private key material in Parameter Store. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-keypair.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-continuousdeploymentpolicy.json" + "$ref": "resources/aws-ec2-keypair.json" } }, "required": [ @@ -21063,9 +21033,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_ReplicationGroup": { + "AWS_Backup_BackupVault": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::ReplicationGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)", + "markdownDescription": "Resource Type definition for AWS::Backup::BackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html)", "allOf": [ { "type": "object", @@ -21073,14 +21043,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::ReplicationGroup" + "AWS::Backup::BackupVault" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::ReplicationGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)" + "Resource Type definition for AWS::Backup::BackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupvault.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-replicationgroup.json" + "$ref": "resources/aws-backup-backupvault.json" } }, "required": [ @@ -21094,9 +21064,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_AnycastIpList": { + "AWS_Lightsail_Alarm": { "type": "object", - "markdownDescription": "An Anycast static IP list. For more information, see [Request Anycast static IPs to use for allowlisting](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/request-static-ips.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-anycastiplist.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Alarm \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-alarm.html)", "allOf": [ { "type": "object", @@ -21104,14 +21074,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::AnycastIpList" + "AWS::Lightsail::Alarm" ], "markdownEnumDescriptions": [ - "An Anycast static IP list. For more information, see [Request Anycast static IPs to use for allowlisting](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/request-static-ips.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-anycastiplist.html)" + "Resource Type definition for AWS::Lightsail::Alarm \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-alarm.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-anycastiplist.json" + "$ref": "resources/aws-lightsail-alarm.json" } }, "required": [ @@ -21125,9 +21095,9 @@ ], "additionalProperties": false }, - "AWS_CodeConnections_Connection": { + "AWS_Greengrass_CoreDefinition": { "type": "object", - "markdownDescription": "Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeconnections-connection.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::CoreDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html)", "allOf": [ { "type": "object", @@ -21135,14 +21105,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeConnections::Connection" + "AWS::Greengrass::CoreDefinition" ], "markdownEnumDescriptions": [ - "Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeconnections-connection.html)" + "Resource Type definition for AWS::Greengrass::CoreDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-codeconnections-connection.json" + "$ref": "resources/aws-greengrass-coredefinition.json" } }, "required": [ @@ -21156,9 +21126,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_TrustStore": { + "AWS_RoboMaker_Robot": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::TrustStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html)", + "markdownDescription": "AWS::RoboMaker::Robot resource creates an AWS RoboMaker Robot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html)", "allOf": [ { "type": "object", @@ -21166,14 +21136,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::TrustStore" + "AWS::RoboMaker::Robot" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::TrustStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-truststore.html)" + "AWS::RoboMaker::Robot resource creates an AWS RoboMaker Robot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-truststore.json" + "$ref": "resources/aws-robomaker-robot.json" } }, "required": [ @@ -21187,9 +21157,9 @@ ], "additionalProperties": false }, - "AWS_DataBrew_Job": { + "AWS_MemoryDB_SubnetGroup": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataBrew::Job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html)", + "markdownDescription": "The AWS::MemoryDB::SubnetGroup resource creates an Amazon MemoryDB Subnet Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-subnetgroup.html)", "allOf": [ { "type": "object", @@ -21197,14 +21167,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataBrew::Job" + "AWS::MemoryDB::SubnetGroup" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataBrew::Job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html)" + "The AWS::MemoryDB::SubnetGroup resource creates an Amazon MemoryDB Subnet Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-subnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-databrew-job.json" + "$ref": "resources/aws-memorydb-subnetgroup.json" } }, "required": [ @@ -21218,9 +21188,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCPeeringConnection": { + "AWS_CUR_ReportDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCPeeringConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html)", + "markdownDescription": "The AWS::CUR::ReportDefinition resource creates a Cost & Usage Report with user-defined settings. You can use this resource to define settings like time granularity (hourly, daily, monthly), file format (Parquet, CSV), and S3 bucket for delivery of these reports. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cur-reportdefinition.html)", "allOf": [ { "type": "object", @@ -21228,14 +21198,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCPeeringConnection" + "AWS::CUR::ReportDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCPeeringConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html)" + "The AWS::CUR::ReportDefinition resource creates a Cost & Usage Report with user-defined settings. You can use this resource to define settings like time granularity (hourly, daily, monthly), file format (Parquet, CSV), and S3 bucket for delivery of these reports. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cur-reportdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcpeeringconnection.json" + "$ref": "resources/aws-cur-reportdefinition.json" } }, "required": [ @@ -21249,9 +21219,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_ApiGatewayManagedOverrides": { + "AWS_IoTWireless_FuotaTask": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ApiGatewayV2::ApiGatewayManagedOverrides \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html)", + "markdownDescription": "Create and manage FUOTA tasks. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-fuotatask.html)", "allOf": [ { "type": "object", @@ -21259,14 +21229,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::ApiGatewayManagedOverrides" + "AWS::IoTWireless::FuotaTask" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ApiGatewayV2::ApiGatewayManagedOverrides \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-apigatewaymanagedoverrides.html)" + "Create and manage FUOTA tasks. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-fuotatask.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-apigatewaymanagedoverrides.json" + "$ref": "resources/aws-iotwireless-fuotatask.json" } }, "required": [ @@ -21280,9 +21250,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_SignalMap": { + "AWS_SSM_ResourcePolicy": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::SignalMap Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-signalmap.html)", + "markdownDescription": "Resource Type definition for AWS::SSM::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -21290,14 +21260,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::SignalMap" + "AWS::SSM::ResourcePolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::SignalMap Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-signalmap.html)" + "Resource Type definition for AWS::SSM::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-signalmap.json" + "$ref": "resources/aws-ssm-resourcepolicy.json" } }, "required": [ @@ -21311,9 +21281,9 @@ ], "additionalProperties": false }, - "AWS_IoTAnalytics_Pipeline": { + "AWS_IoT_Command": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html)", + "markdownDescription": "Represents the resource definition of AWS IoT Command. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-command.html)", "allOf": [ { "type": "object", @@ -21321,14 +21291,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTAnalytics::Pipeline" + "AWS::IoT::Command" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoTAnalytics::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-pipeline.html)" + "Represents the resource definition of AWS IoT Command. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-command.html)" ] }, "Properties": { - "$ref": "resources/aws-iotanalytics-pipeline.json" + "$ref": "resources/aws-iot-command.json" } }, "required": [ @@ -21342,9 +21312,9 @@ ], "additionalProperties": false }, - "AWS_LookoutVision_Project": { + "AWS_SageMaker_InferenceExperiment": { "type": "object", - "markdownDescription": "The AWS::LookoutVision::Project type creates an Amazon Lookout for Vision project. A project is a grouping of the resources needed to create and manage a Lookout for Vision model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutvision-project.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::InferenceExperiment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html)", "allOf": [ { "type": "object", @@ -21352,14 +21322,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LookoutVision::Project" + "AWS::SageMaker::InferenceExperiment" ], "markdownEnumDescriptions": [ - "The AWS::LookoutVision::Project type creates an Amazon Lookout for Vision project. A project is a grouping of the resources needed to create and manage a Lookout for Vision model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutvision-project.html)" + "Resource Type definition for AWS::SageMaker::InferenceExperiment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html)" ] }, "Properties": { - "$ref": "resources/aws-lookoutvision-project.json" + "$ref": "resources/aws-sagemaker-inferenceexperiment.json" } }, "required": [ @@ -21373,9 +21343,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_ModelQualityJobDefinition": { + "AWS_OpenSearchServerless_VpcEndpoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html)", + "markdownDescription": "Amazon OpenSearchServerless vpc endpoint resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-vpcendpoint.html)", "allOf": [ { "type": "object", @@ -21383,14 +21353,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::ModelQualityJobDefinition" + "AWS::OpenSearchServerless::VpcEndpoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::ModelQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html)" + "Amazon OpenSearchServerless vpc endpoint resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-vpcendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-modelqualityjobdefinition.json" + "$ref": "resources/aws-opensearchserverless-vpcendpoint.json" } }, "required": [ @@ -21404,9 +21374,9 @@ ], "additionalProperties": false }, - "AWS_IoT_Policy": { + "AWS_ARCZonalShift_ZonalAutoshiftConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::Policy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html)", + "markdownDescription": "Definition of AWS::ARCZonalShift::ZonalAutoshiftConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-zonalautoshiftconfiguration.html)", "allOf": [ { "type": "object", @@ -21414,19 +21384,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::Policy" + "AWS::ARCZonalShift::ZonalAutoshiftConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::Policy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html)" + "Definition of AWS::ARCZonalShift::ZonalAutoshiftConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-zonalautoshiftconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-policy.json" + "$ref": "resources/aws-arczonalshift-zonalautoshiftconfiguration.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -21435,9 +21404,9 @@ ], "additionalProperties": false }, - "AWS_Amplify_Branch": { + "AWS_FSx_S3AccessPointAttachment": { "type": "object", - "markdownDescription": "The AWS::Amplify::Branch resource creates a new branch within an app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html)", + "markdownDescription": "Resource type definition for AWS::FSx::S3AccessPointAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html)", "allOf": [ { "type": "object", @@ -21445,14 +21414,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Amplify::Branch" + "AWS::FSx::S3AccessPointAttachment" ], "markdownEnumDescriptions": [ - "The AWS::Amplify::Branch resource creates a new branch within an app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html)" + "Resource type definition for AWS::FSx::S3AccessPointAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-amplify-branch.json" + "$ref": "resources/aws-fsx-s3accesspointattachment.json" } }, "required": [ @@ -21466,9 +21435,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TrafficMirrorTarget": { + "AWS_EC2_IPAMPool": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TrafficMirrorTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html)", + "markdownDescription": "Resource Schema of AWS::EC2::IPAMPool Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampool.html)", "allOf": [ { "type": "object", @@ -21476,18 +21445,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TrafficMirrorTarget" + "AWS::EC2::IPAMPool" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TrafficMirrorTarget \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html)" + "Resource Schema of AWS::EC2::IPAMPool Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampool.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-trafficmirrortarget.json" + "$ref": "resources/aws-ec2-ipampool.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -21496,9 +21466,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Container": { + "AWS_Connect_HoursOfOperation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-container.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::HoursOfOperation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-hoursofoperation.html)", "allOf": [ { "type": "object", @@ -21506,14 +21476,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Container" + "AWS::Connect::HoursOfOperation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-container.html)" + "Resource Type definition for AWS::Connect::HoursOfOperation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-hoursofoperation.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-container.json" + "$ref": "resources/aws-connect-hoursofoperation.json" } }, "required": [ @@ -21527,9 +21497,9 @@ ], "additionalProperties": false }, - "AWS_GroundStation_DataflowEndpointGroup": { + "AWS_EC2_VPCEndpointConnectionNotification": { "type": "object", - "markdownDescription": "AWS Ground Station DataflowEndpointGroup schema for CloudFormation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-dataflowendpointgroup.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCEndpointConnectionNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html)", "allOf": [ { "type": "object", @@ -21537,14 +21507,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GroundStation::DataflowEndpointGroup" + "AWS::EC2::VPCEndpointConnectionNotification" ], "markdownEnumDescriptions": [ - "AWS Ground Station DataflowEndpointGroup schema for CloudFormation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-dataflowendpointgroup.html)" + "Resource Type definition for AWS::EC2::VPCEndpointConnectionNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointconnectionnotification.html)" ] }, "Properties": { - "$ref": "resources/aws-groundstation-dataflowendpointgroup.json" + "$ref": "resources/aws-ec2-vpcendpointconnectionnotification.json" } }, "required": [ @@ -21558,9 +21528,9 @@ ], "additionalProperties": false }, - "AWS_AppRunner_VpcConnector": { + "AWS_MediaPackageV2_OriginEndpoint": { "type": "object", - "markdownDescription": "The AWS::AppRunner::VpcConnector resource specifies an App Runner VpcConnector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcconnector.html)", + "markdownDescription": "

Represents an origin endpoint that is associated with a channel, offering a dynamically repackaged version of its content through various streaming media protocols. The content can be efficiently disseminated to end-users via a Content Delivery Network (CDN), like Amazon CloudFront.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html)", "allOf": [ { "type": "object", @@ -21568,14 +21538,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppRunner::VpcConnector" + "AWS::MediaPackageV2::OriginEndpoint" ], "markdownEnumDescriptions": [ - "The AWS::AppRunner::VpcConnector resource specifies an App Runner VpcConnector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcconnector.html)" + "

Represents an origin endpoint that is associated with a channel, offering a dynamically repackaged version of its content through various streaming media protocols. The content can be efficiently disseminated to end-users via a Content Delivery Network (CDN), like Amazon CloudFront.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-apprunner-vpcconnector.json" + "$ref": "resources/aws-mediapackagev2-originendpoint.json" } }, "required": [ @@ -21589,9 +21559,9 @@ ], "additionalProperties": false }, - "AWS_MediaStore_Container": { + "AWS_ElastiCache_SecurityGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MediaStore::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroup.html)", "allOf": [ { "type": "object", @@ -21599,14 +21569,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaStore::Container" + "AWS::ElastiCache::SecurityGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MediaStore::Container \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediastore-container.html)" + "Resource Type definition for AWS::ElastiCache::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-mediastore-container.json" + "$ref": "resources/aws-elasticache-securitygroup.json" } }, "required": [ @@ -21620,9 +21590,9 @@ ], "additionalProperties": false }, - "AWS_KinesisAnalytics_ApplicationReferenceDataSource": { + "AWS_DataZone_EnvironmentActions": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KinesisAnalytics::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html)", + "markdownDescription": "Definition of AWS::DataZone::EnvironmentActions Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentactions.html)", "allOf": [ { "type": "object", @@ -21630,14 +21600,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisAnalytics::ApplicationReferenceDataSource" + "AWS::DataZone::EnvironmentActions" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KinesisAnalytics::ApplicationReferenceDataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalytics-applicationreferencedatasource.html)" + "Definition of AWS::DataZone::EnvironmentActions Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentactions.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisanalytics-applicationreferencedatasource.json" + "$ref": "resources/aws-datazone-environmentactions.json" } }, "required": [ @@ -21651,9 +21621,9 @@ ], "additionalProperties": false }, - "AWS_ConnectCampaignsV2_Campaign": { + "AWS_CloudFront_AnycastIpList": { "type": "object", - "markdownDescription": "Definition of AWS::ConnectCampaignsV2::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html)", + "markdownDescription": "An Anycast static IP list. For more information, see [Request Anycast static IPs to use for allowlisting](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/request-static-ips.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-anycastiplist.html)", "allOf": [ { "type": "object", @@ -21661,14 +21631,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ConnectCampaignsV2::Campaign" + "AWS::CloudFront::AnycastIpList" ], "markdownEnumDescriptions": [ - "Definition of AWS::ConnectCampaignsV2::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaignsv2-campaign.html)" + "An Anycast static IP list. For more information, see [Request Anycast static IPs to use for allowlisting](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/request-static-ips.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-anycastiplist.html)" ] }, "Properties": { - "$ref": "resources/aws-connectcampaignsv2-campaign.json" + "$ref": "resources/aws-cloudfront-anycastiplist.json" } }, "required": [ @@ -21682,9 +21652,9 @@ ], "additionalProperties": false }, - "AWS_IoT_ThingPrincipalAttachment": { + "AWS_SES_MailManagerIngressPoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::ThingPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerIngressPoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageringresspoint.html)", "allOf": [ { "type": "object", @@ -21692,14 +21662,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::ThingPrincipalAttachment" + "AWS::SES::MailManagerIngressPoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::ThingPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html)" + "Definition of AWS::SES::MailManagerIngressPoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageringresspoint.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-thingprincipalattachment.json" + "$ref": "resources/aws-ses-mailmanageringresspoint.json" } }, "required": [ @@ -21713,9 +21683,9 @@ ], "additionalProperties": false }, - "AWS_EC2_IPAMResourceDiscoveryAssociation": { + "AWS_AppConfig_ConfigurationProfile": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EC2::IPAMResourceDiscoveryAssociation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscoveryassociation.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-configurationprofile.html)", "allOf": [ { "type": "object", @@ -21723,14 +21693,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::IPAMResourceDiscoveryAssociation" + "AWS::AppConfig::ConfigurationProfile" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EC2::IPAMResourceDiscoveryAssociation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscoveryassociation.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-configurationprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ipamresourcediscoveryassociation.json" + "$ref": "resources/aws-appconfig-configurationprofile.json" } }, "required": [ @@ -21744,9 +21714,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_HookDefaultVersion": { + "AWS_EC2_TrafficMirrorFilter": { "type": "object", - "markdownDescription": "Set a version as default version for a hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html)", + "markdownDescription": "Resource schema for AWS::EC2::TrafficMirrorFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html)", "allOf": [ { "type": "object", @@ -21754,14 +21724,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::HookDefaultVersion" + "AWS::EC2::TrafficMirrorFilter" ], "markdownEnumDescriptions": [ - "Set a version as default version for a hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookdefaultversion.html)" + "Resource schema for AWS::EC2::TrafficMirrorFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-hookdefaultversion.json" + "$ref": "resources/aws-ec2-trafficmirrorfilter.json" } }, "required": [ @@ -21774,9 +21744,9 @@ ], "additionalProperties": false }, - "AWS_Macie_AllowList": { + "AWS_RoboMaker_SimulationApplicationVersion": { "type": "object", - "markdownDescription": "Macie AllowList resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-allowlist.html)", + "markdownDescription": "AWS::RoboMaker::SimulationApplicationVersion resource creates an AWS RoboMaker SimulationApplicationVersion. This helps you control which code your simulation uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html)", "allOf": [ { "type": "object", @@ -21784,14 +21754,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Macie::AllowList" + "AWS::RoboMaker::SimulationApplicationVersion" ], "markdownEnumDescriptions": [ - "Macie AllowList resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-allowlist.html)" + "AWS::RoboMaker::SimulationApplicationVersion resource creates an AWS RoboMaker SimulationApplicationVersion. This helps you control which code your simulation uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html)" ] }, "Properties": { - "$ref": "resources/aws-macie-allowlist.json" + "$ref": "resources/aws-robomaker-simulationapplicationversion.json" } }, "required": [ @@ -21805,9 +21775,9 @@ ], "additionalProperties": false }, - "AWS_MSK_ClusterPolicy": { + "AWS_CodeBuild_Fleet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MSK::ClusterPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-clusterpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::CodeBuild::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html)", "allOf": [ { "type": "object", @@ -21815,19 +21785,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MSK::ClusterPolicy" + "AWS::CodeBuild::Fleet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MSK::ClusterPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-clusterpolicy.html)" + "Resource Type definition for AWS::CodeBuild::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-fleet.html)" ] }, "Properties": { - "$ref": "resources/aws-msk-clusterpolicy.json" + "$ref": "resources/aws-codebuild-fleet.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -21836,9 +21805,9 @@ ], "additionalProperties": false }, - "AWS_AppIntegrations_DataIntegration": { + "AWS_ARCRegionSwitch_Plan": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppIntegrations::DataIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-dataintegration.html)", + "markdownDescription": "Represents a plan that specifies Regions, IAM roles, and workflows of logic required to perform the desired change to your multi-Region application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arcregionswitch-plan.html)", "allOf": [ { "type": "object", @@ -21846,14 +21815,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppIntegrations::DataIntegration" + "AWS::ARCRegionSwitch::Plan" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppIntegrations::DataIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-dataintegration.html)" + "Represents a plan that specifies Regions, IAM roles, and workflows of logic required to perform the desired change to your multi-Region application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arcregionswitch-plan.html)" ] }, "Properties": { - "$ref": "resources/aws-appintegrations-dataintegration.json" + "$ref": "resources/aws-arcregionswitch-plan.json" } }, "required": [ @@ -21867,9 +21836,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCCidrBlock": { + "AWS_IoTSiteWise_AccessPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCCidrBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::AccessPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html)", "allOf": [ { "type": "object", @@ -21877,14 +21846,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCCidrBlock" + "AWS::IoTSiteWise::AccessPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCCidrBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html)" + "Resource schema for AWS::IoTSiteWise::AccessPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpccidrblock.json" + "$ref": "resources/aws-iotsitewise-accesspolicy.json" } }, "required": [ @@ -21898,9 +21867,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_Standard": { + "AWS_RDS_DBCluster": { "type": "object", - "markdownDescription": "The ``AWS::SecurityHub::Standard`` resource specifies the enablement of a security standard. The standard is identified by the ``StandardsArn`` property. To view a list of ASH standards and their Amazon Resource Names (ARNs), use the [DescribeStandards](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_DescribeStandards.html) API operation.\n You must create a separate ``AWS::SecurityHub::Standard`` resource for each standard that you want to enable.\n For more information about ASH standards, see [standards reference](https://docs.aws.amazon.com/securityhub/latest/userguide/standards-reference.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-standard.html)", + "markdownDescription": "The ``AWS::RDS::DBCluster`` resource creates an Amazon Aurora DB cluster or Multi-AZ DB cluster.\n For more information about creating an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n For more information about creating a Multi-AZ DB cluster, see [Creating a Multi-AZ DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html) in the *Amazon RDS User Guide*.\n You can only create this resource in AWS Regions where Amazon Aurora or Multi-AZ DB clusters are supported.\n *Updating DB clusters* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB cluster, then changes references from other dependent resources to point to the replacement DB cluster, and finally deletes the old DB cluster.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB cluster. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB cluster so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB cluster. For more information, see [Creating a DB cluster snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_CreateSnapshotCluster.html).\n 1. If you want to restore your DB cluster using a DB cluster snapshot, modify the updated template with your DB cluster changes and add the ``SnapshotIdentifier`` property with the ID of the DB cluster snapshot that you want to use.\n After you restore a DB cluster with a ``SnapshotIdentifier`` property, you must specify the same ``SnapshotIdentifier`` property for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the DB cluster snapshot again, and the data in the database is not changed. However, if you don't specify the ``SnapshotIdentifier`` property, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB cluster is restored from the specified ``SnapshotIdentifier`` property, and the original DB cluster is deleted.\n 1. Update the stack.\n \n Currently, when you are updating the stack for an Aurora Serverless DB cluster, you can't include changes to any other properties when you specify one of the following properties: ``PreferredBackupWindow``, ``PreferredMaintenanceWindow``, and ``Port``. This limitation doesn't apply to provisioned DB clusters.\n For more information about updating other properties of this resource, see ``ModifyDBCluster``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB clusters* \n The default ``DeletionPolicy`` for ``AWS::RDS::DBCluster`` resources is ``Snapshot``. For more information about how AWS CloudFormation deletes resources, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html)", "allOf": [ { "type": "object", @@ -21908,19 +21877,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::Standard" + "AWS::RDS::DBCluster" ], "markdownEnumDescriptions": [ - "The ``AWS::SecurityHub::Standard`` resource specifies the enablement of a security standard. The standard is identified by the ``StandardsArn`` property. To view a list of ASH standards and their Amazon Resource Names (ARNs), use the [DescribeStandards](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_DescribeStandards.html) API operation.\n You must create a separate ``AWS::SecurityHub::Standard`` resource for each standard that you want to enable.\n For more information about ASH standards, see [standards reference](https://docs.aws.amazon.com/securityhub/latest/userguide/standards-reference.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-standard.html)" + "The ``AWS::RDS::DBCluster`` resource creates an Amazon Aurora DB cluster or Multi-AZ DB cluster.\n For more information about creating an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n For more information about creating a Multi-AZ DB cluster, see [Creating a Multi-AZ DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/create-multi-az-db-cluster.html) in the *Amazon RDS User Guide*.\n You can only create this resource in AWS Regions where Amazon Aurora or Multi-AZ DB clusters are supported.\n *Updating DB clusters* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB cluster, then changes references from other dependent resources to point to the replacement DB cluster, and finally deletes the old DB cluster.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB cluster. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB cluster so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB cluster. For more information, see [Creating a DB cluster snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_CreateSnapshotCluster.html).\n 1. If you want to restore your DB cluster using a DB cluster snapshot, modify the updated template with your DB cluster changes and add the ``SnapshotIdentifier`` property with the ID of the DB cluster snapshot that you want to use.\n After you restore a DB cluster with a ``SnapshotIdentifier`` property, you must specify the same ``SnapshotIdentifier`` property for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the DB cluster snapshot again, and the data in the database is not changed. However, if you don't specify the ``SnapshotIdentifier`` property, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB cluster is restored from the specified ``SnapshotIdentifier`` property, and the original DB cluster is deleted.\n 1. Update the stack.\n \n Currently, when you are updating the stack for an Aurora Serverless DB cluster, you can't include changes to any other properties when you specify one of the following properties: ``PreferredBackupWindow``, ``PreferredMaintenanceWindow``, and ``Port``. This limitation doesn't apply to provisioned DB clusters.\n For more information about updating other properties of this resource, see ``ModifyDBCluster``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB clusters* \n The default ``DeletionPolicy`` for ``AWS::RDS::DBCluster`` resources is ``Snapshot``. For more information about how AWS CloudFormation deletes resources, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-standard.json" + "$ref": "resources/aws-rds-dbcluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -21929,9 +21897,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_Gateway": { + "AWS_SageMaker_Endpoint": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-gateway.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html)", "allOf": [ { "type": "object", @@ -21939,14 +21907,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::Gateway" + "AWS::SageMaker::Endpoint" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-gateway.html)" + "Resource Type definition for AWS::SageMaker::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-endpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-gateway.json" + "$ref": "resources/aws-sagemaker-endpoint.json" } }, "required": [ @@ -21960,9 +21928,9 @@ ], "additionalProperties": false }, - "AWS_MediaConvert_Preset": { + "AWS_IVS_EncoderConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MediaConvert::Preset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::EncoderConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-encoderconfiguration.html)", "allOf": [ { "type": "object", @@ -21970,19 +21938,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConvert::Preset" + "AWS::IVS::EncoderConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MediaConvert::Preset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html)" + "Resource Type definition for AWS::IVS::EncoderConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-encoderconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconvert-preset.json" + "$ref": "resources/aws-ivs-encoderconfiguration.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -21991,9 +21958,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Device": { + "AWS_Route53_RecordSet": { "type": "object", - "markdownDescription": "Resource schema for AWS::SageMaker::Device \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html)", + "markdownDescription": "Resource Type definition for AWS::Route53::RecordSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordset.html)", "allOf": [ { "type": "object", @@ -22001,14 +21968,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Device" + "AWS::Route53::RecordSet" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::SageMaker::Device \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html)" + "Resource Type definition for AWS::Route53::RecordSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordset.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-device.json" + "$ref": "resources/aws-route53-recordset.json" } }, "required": [ @@ -22022,9 +21989,9 @@ ], "additionalProperties": false }, - "AWS_Timestream_ScheduledQuery": { + "AWS_OpenSearchService_Domain": { "type": "object", - "markdownDescription": "The AWS::Timestream::ScheduledQuery resource creates a Timestream Scheduled Query. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-scheduledquery.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-domain.html)", "allOf": [ { "type": "object", @@ -22032,19 +21999,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Timestream::ScheduledQuery" + "AWS::OpenSearchService::Domain" ], "markdownEnumDescriptions": [ - "The AWS::Timestream::ScheduledQuery resource creates a Timestream Scheduled Query. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-scheduledquery.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-timestream-scheduledquery.json" + "$ref": "resources/aws-opensearchservice-domain.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -22053,9 +22019,9 @@ ], "additionalProperties": false }, - "AWS_SSO_Application": { + "AWS_ManagedBlockchain_Node": { "type": "object", - "markdownDescription": "Resource Type definition for Identity Center (SSO) Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html)", + "markdownDescription": "Resource Type definition for AWS::ManagedBlockchain::Node \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html)", "allOf": [ { "type": "object", @@ -22063,14 +22029,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSO::Application" + "AWS::ManagedBlockchain::Node" ], "markdownEnumDescriptions": [ - "Resource Type definition for Identity Center (SSO) Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-application.html)" + "Resource Type definition for AWS::ManagedBlockchain::Node \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-node.html)" ] }, "Properties": { - "$ref": "resources/aws-sso-application.json" + "$ref": "resources/aws-managedblockchain-node.json" } }, "required": [ @@ -22084,9 +22050,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayConnect": { + "AWS_Location_Map": { "type": "object", - "markdownDescription": "The AWS::EC2::TransitGatewayConnect type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayconnect.html)", + "markdownDescription": "Definition of AWS::Location::Map Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-map.html)", "allOf": [ { "type": "object", @@ -22094,14 +22060,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayConnect" + "AWS::Location::Map" ], "markdownEnumDescriptions": [ - "The AWS::EC2::TransitGatewayConnect type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayconnect.html)" + "Definition of AWS::Location::Map Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-map.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewayconnect.json" + "$ref": "resources/aws-location-map.json" } }, "required": [ @@ -22115,9 +22081,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_FlowAlias": { + "AWS_LicenseManager_Grant": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::FlowAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowalias.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html)", "allOf": [ { "type": "object", @@ -22125,19 +22091,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::FlowAlias" + "AWS::LicenseManager::Grant" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::FlowAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowalias.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-flowalias.json" + "$ref": "resources/aws-licensemanager-grant.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -22146,9 +22111,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_Distribution": { + "AWS_CloudTrail_Trail": { "type": "object", - "markdownDescription": "A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html)", + "markdownDescription": "Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket. A maximum of five trails can exist in a region, irrespective of the region in which they were created. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html)", "allOf": [ { "type": "object", @@ -22156,14 +22121,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::Distribution" + "AWS::CloudTrail::Trail" ], "markdownEnumDescriptions": [ - "A distribution tells CloudFront where you want content to be delivered from, and the details about how to track and manage content delivery. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html)" + "Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket. A maximum of five trails can exist in a region, irrespective of the region in which they were created. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-distribution.json" + "$ref": "resources/aws-cloudtrail-trail.json" } }, "required": [ @@ -22177,9 +22142,9 @@ ], "additionalProperties": false }, - "AWS_AuditManager_Assessment": { + "AWS_InspectorV2_CisScanConfiguration": { "type": "object", - "markdownDescription": "An entity that defines the scope of audit evidence collected by AWS Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html)", + "markdownDescription": "CIS Scan Configuration resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-cisscanconfiguration.html)", "allOf": [ { "type": "object", @@ -22187,18 +22152,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AuditManager::Assessment" + "AWS::InspectorV2::CisScanConfiguration" ], "markdownEnumDescriptions": [ - "An entity that defines the scope of audit evidence collected by AWS Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-auditmanager-assessment.html)" + "CIS Scan Configuration resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-cisscanconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-auditmanager-assessment.json" + "$ref": "resources/aws-inspectorv2-cisscanconfiguration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -22207,9 +22173,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_ManagedLoginBranding": { + "AWS_EKS_Addon": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::ManagedLoginBranding \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html)", + "markdownDescription": "Resource Schema for AWS::EKS::Addon \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html)", "allOf": [ { "type": "object", @@ -22217,14 +22183,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::ManagedLoginBranding" + "AWS::EKS::Addon" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::ManagedLoginBranding \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html)" + "Resource Schema for AWS::EKS::Addon \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-managedloginbranding.json" + "$ref": "resources/aws-eks-addon.json" } }, "required": [ @@ -22238,9 +22204,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_VoiceChannel": { + "AWS_VpcLattice_AccessLogSubscription": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::VoiceChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html)", + "markdownDescription": "Enables access logs to be sent to Amazon CloudWatch, Amazon S3, and Amazon Kinesis Data Firehose. The service network owner can use the access logs to audit the services in the network. The service network owner will only see access logs from clients and services that are associated with their service network. Access log entries represent traffic originated from VPCs associated with that network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html)", "allOf": [ { "type": "object", @@ -22248,14 +22214,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::VoiceChannel" + "AWS::VpcLattice::AccessLogSubscription" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::VoiceChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-voicechannel.html)" + "Enables access logs to be sent to Amazon CloudWatch, Amazon S3, and Amazon Kinesis Data Firehose. The service network owner can use the access logs to audit the services in the network. The service network owner will only see access logs from clients and services that are associated with their service network. Access log entries represent traffic originated from VPCs associated with that network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-voicechannel.json" + "$ref": "resources/aws-vpclattice-accesslogsubscription.json" } }, "required": [ @@ -22269,9 +22235,9 @@ ], "additionalProperties": false }, - "AWS_S3ObjectLambda_AccessPoint": { + "AWS_Evidently_Project": { "type": "object", - "markdownDescription": "The AWS::S3ObjectLambda::AccessPoint resource is an Amazon S3ObjectLambda resource type that you can use to add computation to S3 actions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspoint.html)", + "markdownDescription": "Resource Type definition for AWS::Evidently::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-project.html)", "allOf": [ { "type": "object", @@ -22279,14 +22245,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3ObjectLambda::AccessPoint" + "AWS::Evidently::Project" ], "markdownEnumDescriptions": [ - "The AWS::S3ObjectLambda::AccessPoint resource is an Amazon S3ObjectLambda resource type that you can use to add computation to S3 actions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspoint.html)" + "Resource Type definition for AWS::Evidently::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-project.html)" ] }, "Properties": { - "$ref": "resources/aws-s3objectlambda-accesspoint.json" + "$ref": "resources/aws-evidently-project.json" } }, "required": [ @@ -22300,9 +22266,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_DeviceDefinitionVersion": { + "AWS_CleanRooms_ConfiguredTableAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::DeviceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html)", + "markdownDescription": "Represents a table that can be queried within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtableassociation.html)", "allOf": [ { "type": "object", @@ -22310,14 +22276,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::DeviceDefinitionVersion" + "AWS::CleanRooms::ConfiguredTableAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::DeviceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html)" + "Represents a table that can be queried within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtableassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-devicedefinitionversion.json" + "$ref": "resources/aws-cleanrooms-configuredtableassociation.json" } }, "required": [ @@ -22331,9 +22297,9 @@ ], "additionalProperties": false }, - "AWS_DocDB_DBInstance": { + "AWS_AppSync_GraphQLSchema": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DocDB::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::GraphQLSchema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html)", "allOf": [ { "type": "object", @@ -22341,14 +22307,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DocDB::DBInstance" + "AWS::AppSync::GraphQLSchema" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DocDB::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbinstance.html)" + "Resource Type definition for AWS::AppSync::GraphQLSchema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlschema.html)" ] }, "Properties": { - "$ref": "resources/aws-docdb-dbinstance.json" + "$ref": "resources/aws-appsync-graphqlschema.json" } }, "required": [ @@ -22362,9 +22328,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_Site": { + "AWS_MSK_ServerlessCluster": { "type": "object", - "markdownDescription": "The AWS::NetworkManager::Site type describes a site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html)", + "markdownDescription": "Resource Type definition for AWS::MSK::ServerlessCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-serverlesscluster.html)", "allOf": [ { "type": "object", @@ -22372,14 +22338,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::Site" + "AWS::MSK::ServerlessCluster" ], "markdownEnumDescriptions": [ - "The AWS::NetworkManager::Site type describes a site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html)" + "Resource Type definition for AWS::MSK::ServerlessCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-serverlesscluster.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-site.json" + "$ref": "resources/aws-msk-serverlesscluster.json" } }, "required": [ @@ -22393,9 +22359,9 @@ ], "additionalProperties": false }, - "AWS_IoT_CertificateProvider": { + "AWS_Batch_JobQueue": { "type": "object", - "markdownDescription": "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificateprovider.html)", + "markdownDescription": "Resource Type definition for AWS::Batch::JobQueue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html)", "allOf": [ { "type": "object", @@ -22403,14 +22369,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::CertificateProvider" + "AWS::Batch::JobQueue" ], "markdownEnumDescriptions": [ - "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificateprovider.html)" + "Resource Type definition for AWS::Batch::JobQueue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-certificateprovider.json" + "$ref": "resources/aws-batch-jobqueue.json" } }, "required": [ @@ -22424,9 +22390,9 @@ ], "additionalProperties": false }, - "AWS_VerifiedPermissions_Policy": { + "AWS_ServiceCatalog_PortfolioShare": { "type": "object", - "markdownDescription": "Definition of AWS::VerifiedPermissions::Policy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policy.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::PortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html)", "allOf": [ { "type": "object", @@ -22434,14 +22400,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VerifiedPermissions::Policy" + "AWS::ServiceCatalog::PortfolioShare" ], "markdownEnumDescriptions": [ - "Definition of AWS::VerifiedPermissions::Policy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-policy.html)" + "Resource Type definition for AWS::ServiceCatalog::PortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioshare.html)" ] }, "Properties": { - "$ref": "resources/aws-verifiedpermissions-policy.json" + "$ref": "resources/aws-servicecatalog-portfolioshare.json" } }, "required": [ @@ -22455,9 +22421,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_WirelessGateway": { + "AWS_EventSchemas_Schema": { "type": "object", - "markdownDescription": "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessgateway.html)", + "markdownDescription": "Resource Type definition for AWS::EventSchemas::Schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-schema.html)", "allOf": [ { "type": "object", @@ -22465,14 +22431,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::WirelessGateway" + "AWS::EventSchemas::Schema" ], "markdownEnumDescriptions": [ - "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessgateway.html)" + "Resource Type definition for AWS::EventSchemas::Schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-schema.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-wirelessgateway.json" + "$ref": "resources/aws-eventschemas-schema.json" } }, "required": [ @@ -22486,9 +22452,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetWise_StateTemplate": { + "AWS_PCAConnectorAD_Connector": { "type": "object", - "markdownDescription": "Definition of AWS::IoTFleetWise::StateTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-statetemplate.html)", + "markdownDescription": "Represents a Connector that connects AWS PrivateCA and your directory \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-connector.html)", "allOf": [ { "type": "object", @@ -22496,14 +22462,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetWise::StateTemplate" + "AWS::PCAConnectorAD::Connector" ], "markdownEnumDescriptions": [ - "Definition of AWS::IoTFleetWise::StateTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-statetemplate.html)" + "Represents a Connector that connects AWS PrivateCA and your directory \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-connector.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleetwise-statetemplate.json" + "$ref": "resources/aws-pcaconnectorad-connector.json" } }, "required": [ @@ -22517,9 +22483,9 @@ ], "additionalProperties": false }, - "AWS_AppConfig_Deployment": { + "AWS_PCAConnectorAD_TemplateGroupAccessControlEntry": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppConfig::Deployment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deployment.html)", + "markdownDescription": "Definition of AWS::PCAConnectorAD::TemplateGroupAccessControlEntry Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-templategroupaccesscontrolentry.html)", "allOf": [ { "type": "object", @@ -22527,14 +22493,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppConfig::Deployment" + "AWS::PCAConnectorAD::TemplateGroupAccessControlEntry" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppConfig::Deployment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deployment.html)" + "Definition of AWS::PCAConnectorAD::TemplateGroupAccessControlEntry Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-templategroupaccesscontrolentry.html)" ] }, "Properties": { - "$ref": "resources/aws-appconfig-deployment.json" + "$ref": "resources/aws-pcaconnectorad-templategroupaccesscontrolentry.json" } }, "required": [ @@ -22548,9 +22514,9 @@ ], "additionalProperties": false }, - "AWS_CodePipeline_Pipeline": { + "AWS_Route53RecoveryReadiness_Cell": { "type": "object", - "markdownDescription": "The AWS::CodePipeline::Pipeline resource creates a CodePipeline pipeline that describes how software changes go through a release process. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html)", + "markdownDescription": "The API Schema for AWS Route53 Recovery Readiness Cells. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-cell.html)", "allOf": [ { "type": "object", @@ -22558,19 +22524,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CodePipeline::Pipeline" + "AWS::Route53RecoveryReadiness::Cell" ], "markdownEnumDescriptions": [ - "The AWS::CodePipeline::Pipeline resource creates a CodePipeline pipeline that describes how software changes go through a release process. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html)" + "The API Schema for AWS Route53 Recovery Readiness Cells. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-cell.html)" ] }, "Properties": { - "$ref": "resources/aws-codepipeline-pipeline.json" + "$ref": "resources/aws-route53recoveryreadiness-cell.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -22579,9 +22544,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_Segment": { + "AWS_Connect_AgentStatus": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::AgentStatus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-agentstatus.html)", "allOf": [ { "type": "object", @@ -22589,14 +22554,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::Segment" + "AWS::Connect::AgentStatus" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::Segment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-segment.html)" + "Resource Type definition for AWS::Connect::AgentStatus \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-agentstatus.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-segment.json" + "$ref": "resources/aws-connect-agentstatus.json" } }, "required": [ @@ -22610,9 +22575,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VerifiedAccessInstance": { + "AWS_AppStream_AppBlock": { "type": "object", - "markdownDescription": "The AWS::EC2::VerifiedAccessInstance resource creates an AWS EC2 Verified Access Instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessinstance.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::AppBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblock.html)", "allOf": [ { "type": "object", @@ -22620,18 +22585,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VerifiedAccessInstance" + "AWS::AppStream::AppBlock" ], "markdownEnumDescriptions": [ - "The AWS::EC2::VerifiedAccessInstance resource creates an AWS EC2 Verified Access Instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessinstance.html)" + "Resource Type definition for AWS::AppStream::AppBlock \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblock.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-verifiedaccessinstance.json" + "$ref": "resources/aws-appstream-appblock.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -22640,9 +22606,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchServerless_SecurityConfig": { + "AWS_VpcLattice_AuthPolicy": { "type": "object", - "markdownDescription": "Amazon OpenSearchServerless security config resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securityconfig.html)", + "markdownDescription": "Creates or updates the auth policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-authpolicy.html)", "allOf": [ { "type": "object", @@ -22650,18 +22616,19 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchServerless::SecurityConfig" + "AWS::VpcLattice::AuthPolicy" ], "markdownEnumDescriptions": [ - "Amazon OpenSearchServerless security config resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securityconfig.html)" + "Creates or updates the auth policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-authpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchserverless-securityconfig.json" + "$ref": "resources/aws-vpclattice-authpolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -22670,9 +22637,9 @@ ], "additionalProperties": false }, - "AWS_Backup_ReportPlan": { + "AWS_NetworkFirewall_RuleGroup": { "type": "object", - "markdownDescription": "Contains detailed information about a report plan in AWS Backup Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-reportplan.html)", + "markdownDescription": "Resource type definition for AWS::NetworkFirewall::RuleGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-rulegroup.html)", "allOf": [ { "type": "object", @@ -22680,14 +22647,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::ReportPlan" + "AWS::NetworkFirewall::RuleGroup" ], "markdownEnumDescriptions": [ - "Contains detailed information about a report plan in AWS Backup Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-reportplan.html)" + "Resource type definition for AWS::NetworkFirewall::RuleGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-rulegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-reportplan.json" + "$ref": "resources/aws-networkfirewall-rulegroup.json" } }, "required": [ @@ -22701,9 +22668,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_ResolverQueryLoggingConfigAssociation": { + "AWS_WorkspacesInstances_VolumeAssociation": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html)", + "markdownDescription": "Resource Type definition for AWS::WorkspacesInstances::VolumeAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volumeassociation.html)", "allOf": [ { "type": "object", @@ -22711,18 +22678,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation" + "AWS::WorkspacesInstances::VolumeAssociation" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html)" + "Resource Type definition for AWS::WorkspacesInstances::VolumeAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-volumeassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-resolverqueryloggingconfigassociation.json" + "$ref": "resources/aws-workspacesinstances-volumeassociation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -22731,9 +22699,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationFSxOpenZFS": { + "AWS_QuickSight_Template": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxOpenZFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html)", + "markdownDescription": "Definition of the AWS::QuickSight::Template Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html)", "allOf": [ { "type": "object", @@ -22741,14 +22709,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationFSxOpenZFS" + "AWS::QuickSight::Template" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationFSxOpenZFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html)" + "Definition of the AWS::QuickSight::Template Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-template.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationfsxopenzfs.json" + "$ref": "resources/aws-quicksight-template.json" } }, "required": [ @@ -22762,9 +22730,9 @@ ], "additionalProperties": false }, - "AWS_SupportApp_AccountAlias": { + "AWS_EC2_SecurityGroup": { "type": "object", - "markdownDescription": "An AWS Support App resource that creates, updates, reads, and deletes a customer's account alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-accountalias.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroup.html)", "allOf": [ { "type": "object", @@ -22772,14 +22740,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SupportApp::AccountAlias" + "AWS::EC2::SecurityGroup" ], "markdownEnumDescriptions": [ - "An AWS Support App resource that creates, updates, reads, and deletes a customer's account alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-accountalias.html)" + "Resource Type definition for AWS::EC2::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-supportapp-accountalias.json" + "$ref": "resources/aws-ec2-securitygroup.json" } }, "required": [ @@ -22793,9 +22761,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_ApplicationFleetAssociation": { + "AWS_Inspector_ResourceGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::ApplicationFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationfleetassociation.html)", + "markdownDescription": "Resource Type definition for AWS::Inspector::ResourceGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html)", "allOf": [ { "type": "object", @@ -22803,14 +22771,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::ApplicationFleetAssociation" + "AWS::Inspector::ResourceGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::ApplicationFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationfleetassociation.html)" + "Resource Type definition for AWS::Inspector::ResourceGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-resourcegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-applicationfleetassociation.json" + "$ref": "resources/aws-inspector-resourcegroup.json" } }, "required": [ @@ -22824,9 +22792,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_Hub": { + "AWS_GameLift_Build": { "type": "object", - "markdownDescription": "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html)", + "markdownDescription": "Resource Type definition for AWS::GameLift::Build \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html)", "allOf": [ { "type": "object", @@ -22834,14 +22802,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::Hub" + "AWS::GameLift::Build" ], "markdownEnumDescriptions": [ - "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html)" + "Resource Type definition for AWS::GameLift::Build \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-hub.json" + "$ref": "resources/aws-gamelift-build.json" } }, "required": [ @@ -22854,9 +22822,9 @@ ], "additionalProperties": false }, - "AWS_ElasticBeanstalk_Application": { + "AWS_ApiGateway_DocumentationPart": { "type": "object", - "markdownDescription": "The AWS::ElasticBeanstalk::Application resource specifies an Elastic Beanstalk application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-application.html)", + "markdownDescription": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html)", "allOf": [ { "type": "object", @@ -22864,18 +22832,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticBeanstalk::Application" + "AWS::ApiGateway::DocumentationPart" ], "markdownEnumDescriptions": [ - "The AWS::ElasticBeanstalk::Application resource specifies an Elastic Beanstalk application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-application.html)" + "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticbeanstalk-application.json" + "$ref": "resources/aws-apigateway-documentationpart.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -22884,9 +22853,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_NotebookInstanceLifecycleConfig": { + "AWS_RDS_EventSubscription": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::NotebookInstanceLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html)", + "markdownDescription": "The ``AWS::RDS::EventSubscription`` resource allows you to receive notifications for Amazon Relational Database Service events through the Amazon Simple Notification Service (Amazon SNS). For more information, see [Using Amazon RDS Event Notification](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html)", "allOf": [ { "type": "object", @@ -22894,18 +22863,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::NotebookInstanceLifecycleConfig" + "AWS::RDS::EventSubscription" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::NotebookInstanceLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstancelifecycleconfig.html)" + "The ``AWS::RDS::EventSubscription`` resource allows you to receive notifications for Amazon Relational Database Service events through the Amazon Simple Notification Service (Amazon SNS). For more information, see [Using Amazon RDS Event Notification](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-notebookinstancelifecycleconfig.json" + "$ref": "resources/aws-rds-eventsubscription.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -22914,9 +22884,9 @@ ], "additionalProperties": false }, - "AWS_QLDB_Stream": { + "AWS_Lambda_LayerVersion": { "type": "object", - "markdownDescription": "Resource schema for AWS::QLDB::Stream. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html)", + "markdownDescription": "Resource Type definition for AWS::Lambda::LayerVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html)", "allOf": [ { "type": "object", @@ -22924,14 +22894,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QLDB::Stream" + "AWS::Lambda::LayerVersion" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::QLDB::Stream. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html)" + "Resource Type definition for AWS::Lambda::LayerVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html)" ] }, "Properties": { - "$ref": "resources/aws-qldb-stream.json" + "$ref": "resources/aws-lambda-layerversion.json" } }, "required": [ @@ -22945,9 +22915,9 @@ ], "additionalProperties": false }, - "AWS_AppConfig_HostedConfigurationVersion": { + "AWS_EC2_PlacementGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppConfig::HostedConfigurationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::PlacementGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html)", "allOf": [ { "type": "object", @@ -22955,19 +22925,18 @@ "Type": { "type": "string", "enum": [ - "AWS::AppConfig::HostedConfigurationVersion" + "AWS::EC2::PlacementGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppConfig::HostedConfigurationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-hostedconfigurationversion.html)" + "Resource Type definition for AWS::EC2::PlacementGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-appconfig-hostedconfigurationversion.json" + "$ref": "resources/aws-ec2-placementgroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -22976,9 +22945,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_Connection": { + "AWS_CE_CostCategory": { "type": "object", - "markdownDescription": "Connections enables users to connect their DataZone resources (domains, projects, and environments) to external resources/services (data, compute, etc) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-connection.html)", + "markdownDescription": "Resource Type definition for AWS::CE::CostCategory. Cost Category enables you to map your cost and usage into meaningful categories. You can use Cost Category to organize your costs using a rule-based engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-costcategory.html)", "allOf": [ { "type": "object", @@ -22986,14 +22955,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::Connection" + "AWS::CE::CostCategory" ], "markdownEnumDescriptions": [ - "Connections enables users to connect their DataZone resources (domains, projects, and environments) to external resources/services (data, compute, etc) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-connection.html)" + "Resource Type definition for AWS::CE::CostCategory. Cost Category enables you to map your cost and usage into meaningful categories. You can use Cost Category to organize your costs using a rule-based engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-costcategory.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-connection.json" + "$ref": "resources/aws-ce-costcategory.json" } }, "required": [ @@ -23007,9 +22976,9 @@ ], "additionalProperties": false }, - "AWS_SecretsManager_ResourcePolicy": { + "AWS_DMS_ReplicationSubnetGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SecretsManager::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html)", + "markdownDescription": "Resource Type definition for AWS::DMS::ReplicationSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html)", "allOf": [ { "type": "object", @@ -23017,14 +22986,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecretsManager::ResourcePolicy" + "AWS::DMS::ReplicationSubnetGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SecretsManager::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-resourcepolicy.html)" + "Resource Type definition for AWS::DMS::ReplicationSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-secretsmanager-resourcepolicy.json" + "$ref": "resources/aws-dms-replicationsubnetgroup.json" } }, "required": [ @@ -23038,9 +23007,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_Input": { + "AWS_FMS_NotificationChannel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MediaLive::Input \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html)", + "markdownDescription": "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html)", "allOf": [ { "type": "object", @@ -23048,18 +23017,19 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::Input" + "AWS::FMS::NotificationChannel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MediaLive::Input \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html)" + "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-input.json" + "$ref": "resources/aws-fms-notificationchannel.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -23068,9 +23038,9 @@ ], "additionalProperties": false }, - "AWS_AutoScaling_LifecycleHook": { + "AWS_EC2_RouteServer": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AutoScaling::LifecycleHook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-lifecyclehook.html)", + "markdownDescription": "VPC Route Server \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html)", "allOf": [ { "type": "object", @@ -23078,14 +23048,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AutoScaling::LifecycleHook" + "AWS::EC2::RouteServer" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AutoScaling::LifecycleHook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-lifecyclehook.html)" + "VPC Route Server \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html)" ] }, "Properties": { - "$ref": "resources/aws-autoscaling-lifecyclehook.json" + "$ref": "resources/aws-ec2-routeserver.json" } }, "required": [ @@ -23099,9 +23069,9 @@ ], "additionalProperties": false }, - "AWS_Connect_ContactFlowModule": { + "AWS_CodeArtifact_PackageGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::ContactFlowModule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowmodule.html)", + "markdownDescription": "The resource schema to create a CodeArtifact package group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-packagegroup.html)", "allOf": [ { "type": "object", @@ -23109,14 +23079,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::ContactFlowModule" + "AWS::CodeArtifact::PackageGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::ContactFlowModule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowmodule.html)" + "The resource schema to create a CodeArtifact package group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-packagegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-contactflowmodule.json" + "$ref": "resources/aws-codeartifact-packagegroup.json" } }, "required": [ @@ -23130,9 +23100,9 @@ ], "additionalProperties": false }, - "AWS_CodeArtifact_Repository": { + "AWS_EMR_Cluster": { "type": "object", - "markdownDescription": "The resource schema to create a CodeArtifact repository. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html)", + "markdownDescription": "Resource Type definition for AWS::EMR::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html)", "allOf": [ { "type": "object", @@ -23140,14 +23110,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeArtifact::Repository" + "AWS::EMR::Cluster" ], "markdownEnumDescriptions": [ - "The resource schema to create a CodeArtifact repository. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-repository.html)" + "Resource Type definition for AWS::EMR::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-codeartifact-repository.json" + "$ref": "resources/aws-emr-cluster.json" } }, "required": [ @@ -23161,9 +23131,9 @@ ], "additionalProperties": false }, - "AWS_EC2_RouteServer": { + "AWS_CodeStarConnections_SyncConfiguration": { "type": "object", - "markdownDescription": "VPC Route Server \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html)", + "markdownDescription": "Schema for AWS::CodeStarConnections::SyncConfiguration resource which is used to enables an AWS resource to be synchronized from a source-provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-syncconfiguration.html)", "allOf": [ { "type": "object", @@ -23171,14 +23141,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::RouteServer" + "AWS::CodeStarConnections::SyncConfiguration" ], "markdownEnumDescriptions": [ - "VPC Route Server \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html)" + "Schema for AWS::CodeStarConnections::SyncConfiguration resource which is used to enables an AWS resource to be synchronized from a source-provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-syncconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-routeserver.json" + "$ref": "resources/aws-codestarconnections-syncconfiguration.json" } }, "required": [ @@ -23192,9 +23162,9 @@ ], "additionalProperties": false }, - "AWS_LakeFormation_DataLakeSettings": { + "AWS_ServiceCatalog_TagOption": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::LakeFormation::DataLakeSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::TagOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html)", "allOf": [ { "type": "object", @@ -23202,18 +23172,19 @@ "Type": { "type": "string", "enum": [ - "AWS::LakeFormation::DataLakeSettings" + "AWS::ServiceCatalog::TagOption" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::LakeFormation::DataLakeSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datalakesettings.html)" + "Resource Type definition for AWS::ServiceCatalog::TagOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html)" ] }, "Properties": { - "$ref": "resources/aws-lakeformation-datalakesettings.json" + "$ref": "resources/aws-servicecatalog-tagoption.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -23222,9 +23193,9 @@ ], "additionalProperties": false }, - "AWS_Route53_CidrCollection": { + "AWS_S3Tables_Namespace": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Route53::CidrCollection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-cidrcollection.html)", + "markdownDescription": "Resource Type definition for AWS::S3Tables::Namespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-namespace.html)", "allOf": [ { "type": "object", @@ -23232,14 +23203,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53::CidrCollection" + "AWS::S3Tables::Namespace" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Route53::CidrCollection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-cidrcollection.html)" + "Resource Type definition for AWS::S3Tables::Namespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-namespace.html)" ] }, "Properties": { - "$ref": "resources/aws-route53-cidrcollection.json" + "$ref": "resources/aws-s3tables-namespace.json" } }, "required": [ @@ -23253,9 +23224,9 @@ ], "additionalProperties": false }, - "AWS_AppRunner_AutoScalingConfiguration": { + "AWS_Greengrass_DeviceDefinition": { "type": "object", - "markdownDescription": "Describes an AWS App Runner automatic configuration resource that enables automatic scaling of instances used to process web requests. You can share an auto scaling configuration across multiple services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-autoscalingconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::DeviceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html)", "allOf": [ { "type": "object", @@ -23263,18 +23234,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AppRunner::AutoScalingConfiguration" + "AWS::Greengrass::DeviceDefinition" ], "markdownEnumDescriptions": [ - "Describes an AWS App Runner automatic configuration resource that enables automatic scaling of instances used to process web requests. You can share an auto scaling configuration across multiple services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-autoscalingconfiguration.html)" + "Resource Type definition for AWS::Greengrass::DeviceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-apprunner-autoscalingconfiguration.json" + "$ref": "resources/aws-greengrass-devicedefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -23283,9 +23255,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerRuleSet": { + "AWS_IAM_Group": { "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerRuleSet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerruleset.html)", + "markdownDescription": "Creates a new group.\n For information about the number of groups you can create, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)", "allOf": [ { "type": "object", @@ -23293,19 +23265,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::MailManagerRuleSet" + "AWS::IAM::Group" ], "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerRuleSet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerruleset.html)" + "Creates a new group.\n For information about the number of groups you can create, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-mailmanagerruleset.json" + "$ref": "resources/aws-iam-group.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -23314,9 +23285,9 @@ ], "additionalProperties": false }, - "AWS_Notifications_ChannelAssociation": { + "AWS_SSMContacts_ContactChannel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Notifications::ChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-channelassociation.html)", + "markdownDescription": "Resource Type definition for AWS::SSMContacts::ContactChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contactchannel.html)", "allOf": [ { "type": "object", @@ -23324,19 +23295,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Notifications::ChannelAssociation" + "AWS::SSMContacts::ContactChannel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Notifications::ChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-channelassociation.html)" + "Resource Type definition for AWS::SSMContacts::ContactChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contactchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-notifications-channelassociation.json" + "$ref": "resources/aws-ssmcontacts-contactchannel.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -23345,9 +23315,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBParameterGroup": { + "AWS_Rbin_Rule": { "type": "object", - "markdownDescription": "The ``AWS::RDS::DBParameterGroup`` resource creates a custom parameter group for an RDS database family.\n This type can be declared in a template and referenced in the ``DBParameterGroupName`` property of an ``AWS::RDS::DBInstance`` resource.\n For information about configuring parameters for Amazon RDS DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html) in the *Amazon RDS User Guide*.\n For information about configuring parameters for Amazon Aurora DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n Applying a parameter group to a DB instance may require the DB instance to reboot, resulting in a database outage for the duration of the reboot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbparametergroup.html)", + "markdownDescription": "Resource Type definition for AWS::Rbin::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rbin-rule.html)", "allOf": [ { "type": "object", @@ -23355,14 +23325,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBParameterGroup" + "AWS::Rbin::Rule" ], "markdownEnumDescriptions": [ - "The ``AWS::RDS::DBParameterGroup`` resource creates a custom parameter group for an RDS database family.\n This type can be declared in a template and referenced in the ``DBParameterGroupName`` property of an ``AWS::RDS::DBInstance`` resource.\n For information about configuring parameters for Amazon RDS DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html) in the *Amazon RDS User Guide*.\n For information about configuring parameters for Amazon Aurora DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n Applying a parameter group to a DB instance may require the DB instance to reboot, resulting in a database outage for the duration of the reboot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbparametergroup.html)" + "Resource Type definition for AWS::Rbin::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rbin-rule.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbparametergroup.json" + "$ref": "resources/aws-rbin-rule.json" } }, "required": [ @@ -23376,9 +23346,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_Insight": { + "AWS_RDS_OptionGroup": { "type": "object", - "markdownDescription": "The AWS::SecurityHub::Insight resource represents the AWS Security Hub Insight in your account. An AWS Security Hub insight is a collection of related findings. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-insight.html)", + "markdownDescription": "The ``AWS::RDS::OptionGroup`` resource creates or updates an option group, to enable and configure features that are specific to a particular DB engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html)", "allOf": [ { "type": "object", @@ -23386,14 +23356,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::Insight" + "AWS::RDS::OptionGroup" ], "markdownEnumDescriptions": [ - "The AWS::SecurityHub::Insight resource represents the AWS Security Hub Insight in your account. An AWS Security Hub insight is a collection of related findings. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-insight.html)" + "The ``AWS::RDS::OptionGroup`` resource creates or updates an option group, to enable and configure features that are specific to a particular DB engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-insight.json" + "$ref": "resources/aws-rds-optiongroup.json" } }, "required": [ @@ -23407,9 +23377,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_APNSVoipChannel": { + "AWS_Neptune_DBCluster": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSVoipChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html)", + "markdownDescription": "The AWS::Neptune::DBCluster resource creates an Amazon Neptune DB cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html)", "allOf": [ { "type": "object", @@ -23417,19 +23387,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::APNSVoipChannel" + "AWS::Neptune::DBCluster" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::APNSVoipChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnsvoipchannel.html)" + "The AWS::Neptune::DBCluster resource creates an Amazon Neptune DB cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbcluster.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-apnsvoipchannel.json" + "$ref": "resources/aws-neptune-dbcluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -23438,9 +23407,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TrafficMirrorFilter": { + "AWS_Connect_ContactFlowVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TrafficMirrorFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html)", + "markdownDescription": "Resource Type Definition for ContactFlowVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowversion.html)", "allOf": [ { "type": "object", @@ -23448,18 +23417,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TrafficMirrorFilter" + "AWS::Connect::ContactFlowVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TrafficMirrorFilter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilter.html)" + "Resource Type Definition for ContactFlowVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowversion.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-trafficmirrorfilter.json" + "$ref": "resources/aws-connect-contactflowversion.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -23468,9 +23438,9 @@ ], "additionalProperties": false }, - "AWS_GlobalAccelerator_Accelerator": { + "AWS_SecurityHub_DelegatedAdmin": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::Accelerator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html)", + "markdownDescription": "The ``AWS::SecurityHub::DelegatedAdmin`` resource designates the delegated ASHlong administrator account for an organization. You must enable the integration between ASH and AOlong before you can designate a delegated ASH administrator. Only the management account for an organization can designate the delegated ASH administrator account. For more information, see [Designating the delegated administrator](https://docs.aws.amazon.com/securityhub/latest/userguide/designate-orgs-admin-account.html#designate-admin-instructions) in the *User Guide*.\n To change the delegated administrator account, remove the current delegated administrator account, and then designate the new account.\n To designate multiple delegated administrators in different organizations and AWS-Regions, we recommend using [mappings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/mappings-section-structure.html).\n Tags aren't supported for this resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-delegatedadmin.html)", "allOf": [ { "type": "object", @@ -23478,14 +23448,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GlobalAccelerator::Accelerator" + "AWS::SecurityHub::DelegatedAdmin" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GlobalAccelerator::Accelerator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-accelerator.html)" + "The ``AWS::SecurityHub::DelegatedAdmin`` resource designates the delegated ASHlong administrator account for an organization. You must enable the integration between ASH and AOlong before you can designate a delegated ASH administrator. Only the management account for an organization can designate the delegated ASH administrator account. For more information, see [Designating the delegated administrator](https://docs.aws.amazon.com/securityhub/latest/userguide/designate-orgs-admin-account.html#designate-admin-instructions) in the *User Guide*.\n To change the delegated administrator account, remove the current delegated administrator account, and then designate the new account.\n To designate multiple delegated administrators in different organizations and AWS-Regions, we recommend using [mappings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/mappings-section-structure.html).\n Tags aren't supported for this resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-delegatedadmin.html)" ] }, "Properties": { - "$ref": "resources/aws-globalaccelerator-accelerator.json" + "$ref": "resources/aws-securityhub-delegatedadmin.json" } }, "required": [ @@ -23499,9 +23469,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_ResourceGateway": { + "AWS_DataSync_LocationFSxWindows": { "type": "object", - "markdownDescription": "Creates a resource gateway for a service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcegateway.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationFSxWindows. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html)", "allOf": [ { "type": "object", @@ -23509,14 +23479,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::ResourceGateway" + "AWS::DataSync::LocationFSxWindows" ], "markdownEnumDescriptions": [ - "Creates a resource gateway for a service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcegateway.html)" + "Resource schema for AWS::DataSync::LocationFSxWindows. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-resourcegateway.json" + "$ref": "resources/aws-datasync-locationfsxwindows.json" } }, "required": [ @@ -23530,9 +23500,9 @@ ], "additionalProperties": false }, - "AWS_Evidently_Experiment": { + "AWS_AppSync_DomainNameApiAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Evidently::Experiment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-experiment.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::DomainNameApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html)", "allOf": [ { "type": "object", @@ -23540,14 +23510,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Evidently::Experiment" + "AWS::AppSync::DomainNameApiAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Evidently::Experiment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-experiment.html)" + "Resource Type definition for AWS::AppSync::DomainNameApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-evidently-experiment.json" + "$ref": "resources/aws-appsync-domainnameapiassociation.json" } }, "required": [ @@ -23561,9 +23531,9 @@ ], "additionalProperties": false }, - "AWS_AppFlow_Connector": { + "AWS_Backup_LogicallyAirGappedBackupVault": { "type": "object", - "markdownDescription": "Resource schema for AWS::AppFlow::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connector.html)", + "markdownDescription": "Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html)", "allOf": [ { "type": "object", @@ -23571,14 +23541,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppFlow::Connector" + "AWS::Backup::LogicallyAirGappedBackupVault" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::AppFlow::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connector.html)" + "Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html)" ] }, "Properties": { - "$ref": "resources/aws-appflow-connector.json" + "$ref": "resources/aws-backup-logicallyairgappedbackupvault.json" } }, "required": [ @@ -23592,9 +23562,9 @@ ], "additionalProperties": false }, - "AWS_CloudTrail_Dashboard": { + "AWS_ApiGatewayV2_Stage": { "type": "object", - "markdownDescription": "The Amazon CloudTrail dashboard resource allows customers to manage managed dashboards and create custom dashboards. You can manually refresh custom and managed dashboards. For custom dashboards, you can also set up an automatic refresh schedule and modify dashboard widgets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-dashboard.html)", + "markdownDescription": "Resource Type definition for AWS::ApiGatewayV2::Stage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html)", "allOf": [ { "type": "object", @@ -23602,18 +23572,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudTrail::Dashboard" + "AWS::ApiGatewayV2::Stage" ], "markdownEnumDescriptions": [ - "The Amazon CloudTrail dashboard resource allows customers to manage managed dashboards and create custom dashboards. You can manually refresh custom and managed dashboards. For custom dashboards, you can also set up an automatic refresh schedule and modify dashboard widgets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-dashboard.html)" + "Resource Type definition for AWS::ApiGatewayV2::Stage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudtrail-dashboard.json" + "$ref": "resources/aws-apigatewayv2-stage.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -23622,9 +23593,9 @@ ], "additionalProperties": false }, - "AWS_WAF_SqlInjectionMatchSet": { + "AWS_Neptune_DBParameterGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAF::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html)", + "markdownDescription": "AWS::Neptune::DBParameterGroup creates a new DB parameter group. This type can be declared in a template and referenced in the DBParameterGroupName parameter of AWS::Neptune::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html)", "allOf": [ { "type": "object", @@ -23632,14 +23603,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAF::SqlInjectionMatchSet" + "AWS::Neptune::DBParameterGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAF::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html)" + "AWS::Neptune::DBParameterGroup creates a new DB parameter group. This type can be declared in a template and referenced in the DBParameterGroupName parameter of AWS::Neptune::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-waf-sqlinjectionmatchset.json" + "$ref": "resources/aws-neptune-dbparametergroup.json" } }, "required": [ @@ -23653,9 +23624,9 @@ ], "additionalProperties": false }, - "AWS_IVS_PlaybackKeyPair": { + "AWS_SageMaker_App": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::PlaybackKeyPair \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackkeypair.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html)", "allOf": [ { "type": "object", @@ -23663,18 +23634,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::PlaybackKeyPair" + "AWS::SageMaker::App" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::PlaybackKeyPair \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-playbackkeypair.html)" + "Resource Type definition for AWS::SageMaker::App \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-app.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-playbackkeypair.json" + "$ref": "resources/aws-sagemaker-app.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -23683,9 +23655,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_ConfigurationPolicy": { + "AWS_EC2_LocalGatewayRouteTable": { "type": "object", - "markdownDescription": "The AWS::SecurityHub::ConfigurationPolicy resource represents the Central Configuration Policy in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html)", + "markdownDescription": "Resource Type definition for Local Gateway Route Table which describes a route table for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetable.html)", "allOf": [ { "type": "object", @@ -23693,14 +23665,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::ConfigurationPolicy" + "AWS::EC2::LocalGatewayRouteTable" ], "markdownEnumDescriptions": [ - "The AWS::SecurityHub::ConfigurationPolicy resource represents the Central Configuration Policy in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-configurationpolicy.html)" + "Resource Type definition for Local Gateway Route Table which describes a route table for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetable.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-configurationpolicy.json" + "$ref": "resources/aws-ec2-localgatewayroutetable.json" } }, "required": [ @@ -23714,9 +23686,9 @@ ], "additionalProperties": false }, - "AWS_EC2_RouteServerAssociation": { + "AWS_MediaLive_CloudWatchAlarmTemplateGroup": { "type": "object", - "markdownDescription": "VPC Route Server Association \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html)", + "markdownDescription": "Definition of AWS::MediaLive::CloudWatchAlarmTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplategroup.html)", "allOf": [ { "type": "object", @@ -23724,14 +23696,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::RouteServerAssociation" + "AWS::MediaLive::CloudWatchAlarmTemplateGroup" ], "markdownEnumDescriptions": [ - "VPC Route Server Association \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html)" + "Definition of AWS::MediaLive::CloudWatchAlarmTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplategroup.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-routeserverassociation.json" + "$ref": "resources/aws-medialive-cloudwatchalarmtemplategroup.json" } }, "required": [ @@ -23745,9 +23717,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkInsightsAccessScopeAnalysis": { + "AWS_Location_Tracker": { "type": "object", - "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsAccessScopeAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscopeanalysis.html)", + "markdownDescription": "Definition of AWS::Location::Tracker Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html)", "allOf": [ { "type": "object", @@ -23755,14 +23727,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkInsightsAccessScopeAnalysis" + "AWS::Location::Tracker" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EC2::NetworkInsightsAccessScopeAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscopeanalysis.html)" + "Definition of AWS::Location::Tracker Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkinsightsaccessscopeanalysis.json" + "$ref": "resources/aws-location-tracker.json" } }, "required": [ @@ -23776,9 +23748,9 @@ ], "additionalProperties": false }, - "AWS_SecurityLake_Subscriber": { + "AWS_CloudFormation_WaitCondition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SecurityLake::Subscriber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html)", + "markdownDescription": "Resource Type definition for AWS::CloudFormation::WaitCondition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitcondition.html)", "allOf": [ { "type": "object", @@ -23786,19 +23758,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityLake::Subscriber" + "AWS::CloudFormation::WaitCondition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SecurityLake::Subscriber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html)" + "Resource Type definition for AWS::CloudFormation::WaitCondition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitcondition.html)" ] }, "Properties": { - "$ref": "resources/aws-securitylake-subscriber.json" + "$ref": "resources/aws-cloudformation-waitcondition.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -23807,9 +23778,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_PolicyAssociation": { + "AWS_Redshift_EndpointAuthorization": { "type": "object", - "markdownDescription": "The AWS::SecurityHub::PolicyAssociation resource represents the AWS Security Hub Central Configuration Policy associations in your Target. Only the AWS Security Hub delegated administrator can create the resouce from the home region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html)", + "markdownDescription": "Describes an endpoint authorization for authorizing Redshift-managed VPC endpoint access to a cluster across AWS accounts. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html)", "allOf": [ { "type": "object", @@ -23817,14 +23788,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::PolicyAssociation" + "AWS::Redshift::EndpointAuthorization" ], "markdownEnumDescriptions": [ - "The AWS::SecurityHub::PolicyAssociation resource represents the AWS Security Hub Central Configuration Policy associations in your Target. Only the AWS Security Hub delegated administrator can create the resouce from the home region. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-policyassociation.html)" + "Describes an endpoint authorization for authorizing Redshift-managed VPC endpoint access to a cluster across AWS accounts. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointauthorization.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-policyassociation.json" + "$ref": "resources/aws-redshift-endpointauthorization.json" } }, "required": [ @@ -23838,9 +23809,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_FlowVpcInterface": { + "AWS_WorkSpaces_WorkspacesPool": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::FlowVpcInterface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html)", + "markdownDescription": "Resource Type definition for AWS::WorkSpaces::WorkspacesPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html)", "allOf": [ { "type": "object", @@ -23848,14 +23819,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::FlowVpcInterface" + "AWS::WorkSpaces::WorkspacesPool" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::FlowVpcInterface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowvpcinterface.html)" + "Resource Type definition for AWS::WorkSpaces::WorkspacesPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-flowvpcinterface.json" + "$ref": "resources/aws-workspaces-workspacespool.json" } }, "required": [ @@ -23869,9 +23840,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_GameSessionQueue": { + "AWS_ApiGateway_DocumentationVersion": { "type": "object", - "markdownDescription": "The AWS::GameLift::GameSessionQueue resource creates an Amazon GameLift (GameLift) game session queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html)", + "markdownDescription": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html)", "allOf": [ { "type": "object", @@ -23879,14 +23850,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::GameSessionQueue" + "AWS::ApiGateway::DocumentationVersion" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::GameSessionQueue resource creates an Amazon GameLift (GameLift) game session queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html)" + "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-gamesessionqueue.json" + "$ref": "resources/aws-apigateway-documentationversion.json" } }, "required": [ @@ -23900,9 +23871,9 @@ ], "additionalProperties": false }, - "AWS_DMS_ReplicationSubnetGroup": { + "AWS_QuickSight_CustomPermissions": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DMS::ReplicationSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html)", + "markdownDescription": "Definition of the AWS::QuickSight::CustomPermissions Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-custompermissions.html)", "allOf": [ { "type": "object", @@ -23910,14 +23881,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::ReplicationSubnetGroup" + "AWS::QuickSight::CustomPermissions" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DMS::ReplicationSubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationsubnetgroup.html)" + "Definition of the AWS::QuickSight::CustomPermissions Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-custompermissions.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-replicationsubnetgroup.json" + "$ref": "resources/aws-quicksight-custompermissions.json" } }, "required": [ @@ -23931,9 +23902,9 @@ ], "additionalProperties": false }, - "AWS_Personalize_DatasetGroup": { + "AWS_QuickSight_Theme": { "type": "object", - "markdownDescription": "Resource Schema for AWS::Personalize::DatasetGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-datasetgroup.html)", + "markdownDescription": "Definition of the AWS::QuickSight::Theme Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html)", "allOf": [ { "type": "object", @@ -23941,14 +23912,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Personalize::DatasetGroup" + "AWS::QuickSight::Theme" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::Personalize::DatasetGroup. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-datasetgroup.html)" + "Definition of the AWS::QuickSight::Theme Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-theme.html)" ] }, "Properties": { - "$ref": "resources/aws-personalize-datasetgroup.json" + "$ref": "resources/aws-quicksight-theme.json" } }, "required": [ @@ -23962,9 +23933,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_StackFleetAssociation": { + "AWS_SageMaker_Device": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::StackFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html)", + "markdownDescription": "Resource schema for AWS::SageMaker::Device \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html)", "allOf": [ { "type": "object", @@ -23972,14 +23943,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::StackFleetAssociation" + "AWS::SageMaker::Device" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::StackFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html)" + "Resource schema for AWS::SageMaker::Device \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-device.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-stackfleetassociation.json" + "$ref": "resources/aws-sagemaker-device.json" } }, "required": [ @@ -23993,9 +23964,9 @@ ], "additionalProperties": false }, - "AWS_Rekognition_Project": { + "AWS_EC2_TransitGatewayVpcAttachment": { "type": "object", - "markdownDescription": "The AWS::Rekognition::Project type creates an Amazon Rekognition CustomLabels Project. A project is a grouping of the resources needed to create and manage Dataset and ProjectVersions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-project.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayVpcAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayvpcattachment.html)", "allOf": [ { "type": "object", @@ -24003,14 +23974,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Rekognition::Project" + "AWS::EC2::TransitGatewayVpcAttachment" ], "markdownEnumDescriptions": [ - "The AWS::Rekognition::Project type creates an Amazon Rekognition CustomLabels Project. A project is a grouping of the resources needed to create and manage Dataset and ProjectVersions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-project.html)" + "Resource Type definition for AWS::EC2::TransitGatewayVpcAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayvpcattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-rekognition-project.json" + "$ref": "resources/aws-ec2-transitgatewayvpcattachment.json" } }, "required": [ @@ -24024,9 +23995,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkInsightsAccessScope": { + "AWS_Location_GeofenceCollection": { "type": "object", - "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsAccessScope \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscope.html)", + "markdownDescription": "Definition of AWS::Location::GeofenceCollection Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html)", "allOf": [ { "type": "object", @@ -24034,18 +24005,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkInsightsAccessScope" + "AWS::Location::GeofenceCollection" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EC2::NetworkInsightsAccessScope \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscope.html)" + "Definition of AWS::Location::GeofenceCollection Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkinsightsaccessscope.json" + "$ref": "resources/aws-location-geofencecollection.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -24054,9 +24026,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_ProjectProfile": { + "AWS_VpcLattice_ServiceNetworkServiceAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::DataZone::ProjectProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectprofile.html)", + "markdownDescription": "Associates a service with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html)", "allOf": [ { "type": "object", @@ -24064,19 +24036,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::ProjectProfile" + "AWS::VpcLattice::ServiceNetworkServiceAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::DataZone::ProjectProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-projectprofile.html)" + "Associates a service with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkserviceassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-projectprofile.json" + "$ref": "resources/aws-vpclattice-servicenetworkserviceassociation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -24085,9 +24056,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_Publisher": { + "AWS_Notifications_EventRule": { "type": "object", - "markdownDescription": "Register as a publisher in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html)", + "markdownDescription": "Resource Type definition for AWS::Notifications::EventRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-eventrule.html)", "allOf": [ { "type": "object", @@ -24095,14 +24066,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::Publisher" + "AWS::Notifications::EventRule" ], "markdownEnumDescriptions": [ - "Register as a publisher in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publisher.html)" + "Resource Type definition for AWS::Notifications::EventRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-eventrule.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-publisher.json" + "$ref": "resources/aws-notifications-eventrule.json" } }, "required": [ @@ -24116,9 +24087,9 @@ ], "additionalProperties": false }, - "AWS_Location_Map": { + "AWS_DAX_Cluster": { "type": "object", - "markdownDescription": "Definition of AWS::Location::Map Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-map.html)", + "markdownDescription": "Resource Type definition for AWS::DAX::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html)", "allOf": [ { "type": "object", @@ -24126,14 +24097,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Location::Map" + "AWS::DAX::Cluster" ], "markdownEnumDescriptions": [ - "Definition of AWS::Location::Map Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-map.html)" + "Resource Type definition for AWS::DAX::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-location-map.json" + "$ref": "resources/aws-dax-cluster.json" } }, "required": [ @@ -24147,9 +24118,9 @@ ], "additionalProperties": false }, - "AWS_SupportApp_SlackChannelConfiguration": { + "AWS_Route53_HealthCheck": { "type": "object", - "markdownDescription": "An AWS Support App resource that creates, updates, lists and deletes Slack channel configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackchannelconfiguration.html)", + "markdownDescription": "Resource schema for AWS::Route53::HealthCheck. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html)", "allOf": [ { "type": "object", @@ -24157,14 +24128,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SupportApp::SlackChannelConfiguration" + "AWS::Route53::HealthCheck" ], "markdownEnumDescriptions": [ - "An AWS Support App resource that creates, updates, lists and deletes Slack channel configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackchannelconfiguration.html)" + "Resource schema for AWS::Route53::HealthCheck. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html)" ] }, "Properties": { - "$ref": "resources/aws-supportapp-slackchannelconfiguration.json" + "$ref": "resources/aws-route53-healthcheck.json" } }, "required": [ @@ -24178,9 +24149,9 @@ ], "additionalProperties": false }, - "AWS_Oam_Sink": { + "AWS_AmplifyUIBuilder_Form": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Oam::Sink \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-sink.html)", + "markdownDescription": "Definition of AWS::AmplifyUIBuilder::Form Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-form.html)", "allOf": [ { "type": "object", @@ -24188,19 +24159,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Oam::Sink" + "AWS::AmplifyUIBuilder::Form" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Oam::Sink \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-sink.html)" + "Definition of AWS::AmplifyUIBuilder::Form Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-form.html)" ] }, "Properties": { - "$ref": "resources/aws-oam-sink.json" + "$ref": "resources/aws-amplifyuibuilder-form.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -24209,9 +24179,9 @@ ], "additionalProperties": false }, - "AWS_DLM_LifecyclePolicy": { + "AWS_ImageBuilder_LifecyclePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DLM::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-lifecyclepolicy.html)", "allOf": [ { "type": "object", @@ -24219,18 +24189,19 @@ "Type": { "type": "string", "enum": [ - "AWS::DLM::LifecyclePolicy" + "AWS::ImageBuilder::LifecyclePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DLM::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html)" + "Resource schema for AWS::ImageBuilder::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-lifecyclepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-dlm-lifecyclepolicy.json" + "$ref": "resources/aws-imagebuilder-lifecyclepolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -24239,9 +24210,9 @@ ], "additionalProperties": false }, - "AWS_CodePipeline_CustomActionType": { + "AWS_IdentityStore_Group": { "type": "object", - "markdownDescription": "The AWS::CodePipeline::CustomActionType resource creates a custom action for activities that aren't included in the CodePipeline default actions, such as running an internally developed build process or a test suite. You can use these custom actions in the stage of a pipeline. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html)", + "markdownDescription": "Resource Type definition for AWS::IdentityStore::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-group.html)", "allOf": [ { "type": "object", @@ -24249,14 +24220,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodePipeline::CustomActionType" + "AWS::IdentityStore::Group" ], "markdownEnumDescriptions": [ - "The AWS::CodePipeline::CustomActionType resource creates a custom action for activities that aren't included in the CodePipeline default actions, such as running an internally developed build process or a test suite. You can use these custom actions in the stage of a pipeline. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html)" + "Resource Type definition for AWS::IdentityStore::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-group.html)" ] }, "Properties": { - "$ref": "resources/aws-codepipeline-customactiontype.json" + "$ref": "resources/aws-identitystore-group.json" } }, "required": [ @@ -24270,9 +24241,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBSecurityGroup": { + "AWS_OpsWorks_Instance": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::RDS::DBSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroup.html)", + "markdownDescription": "Resource Type definition for AWS::OpsWorks::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html)", "allOf": [ { "type": "object", @@ -24280,14 +24251,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBSecurityGroup" + "AWS::OpsWorks::Instance" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::RDS::DBSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroup.html)" + "Resource Type definition for AWS::OpsWorks::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbsecuritygroup.json" + "$ref": "resources/aws-opsworks-instance.json" } }, "required": [ @@ -24301,9 +24272,9 @@ ], "additionalProperties": false }, - "AWS_Neptune_EventSubscription": { + "AWS_IoTTwinMaker_Scene": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Neptune::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html)", + "markdownDescription": "Resource schema for AWS::IoTTwinMaker::Scene \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-scene.html)", "allOf": [ { "type": "object", @@ -24311,18 +24282,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Neptune::EventSubscription" + "AWS::IoTTwinMaker::Scene" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Neptune::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html)" + "Resource schema for AWS::IoTTwinMaker::Scene \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-scene.html)" ] }, "Properties": { - "$ref": "resources/aws-neptune-eventsubscription.json" + "$ref": "resources/aws-iottwinmaker-scene.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -24331,9 +24303,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_LambdaHook": { + "AWS_Redshift_ClusterSecurityGroup": { "type": "object", - "markdownDescription": "This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html)", + "markdownDescription": "Resource Type definition for AWS::Redshift::ClusterSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html)", "allOf": [ { "type": "object", @@ -24341,14 +24313,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::LambdaHook" + "AWS::Redshift::ClusterSecurityGroup" ], "markdownEnumDescriptions": [ - "This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html)" + "Resource Type definition for AWS::Redshift::ClusterSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-lambdahook.json" + "$ref": "resources/aws-redshift-clustersecuritygroup.json" } }, "required": [ @@ -24362,9 +24334,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_ModelPackageGroup": { + "AWS_S3_AccessGrantsLocation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelPackageGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html)", + "markdownDescription": "The AWS::S3::AccessGrantsLocation resource is an Amazon S3 resource type hosted in an access grants instance which can be the target of S3 access grants. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantslocation.html)", "allOf": [ { "type": "object", @@ -24372,19 +24344,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::ModelPackageGroup" + "AWS::S3::AccessGrantsLocation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::ModelPackageGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackagegroup.html)" + "The AWS::S3::AccessGrantsLocation resource is an Amazon S3 resource type hosted in an access grants instance which can be the target of S3 access grants. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantslocation.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-modelpackagegroup.json" + "$ref": "resources/aws-s3-accessgrantslocation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -24393,9 +24364,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBProxyTargetGroup": { + "AWS_SSMContacts_Plan": { "type": "object", - "markdownDescription": "Resource schema for AWS::RDS::DBProxyTargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html)", + "markdownDescription": "Engagement Plan for a SSM Incident Manager Contact. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-plan.html)", "allOf": [ { "type": "object", @@ -24403,19 +24374,18 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBProxyTargetGroup" + "AWS::SSMContacts::Plan" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::RDS::DBProxyTargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxytargetgroup.html)" + "Engagement Plan for a SSM Incident Manager Contact. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-plan.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbproxytargetgroup.json" + "$ref": "resources/aws-ssmcontacts-plan.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -24424,9 +24394,9 @@ ], "additionalProperties": false }, - "AWS_CUR_ReportDefinition": { + "AWS_IVSChat_LoggingConfiguration": { "type": "object", - "markdownDescription": "The AWS::CUR::ReportDefinition resource creates a Cost & Usage Report with user-defined settings. You can use this resource to define settings like time granularity (hourly, daily, monthly), file format (Parquet, CSV), and S3 bucket for delivery of these reports. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cur-reportdefinition.html)", + "markdownDescription": "Resource type definition for AWS::IVSChat::LoggingConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html)", "allOf": [ { "type": "object", @@ -24434,14 +24404,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CUR::ReportDefinition" + "AWS::IVSChat::LoggingConfiguration" ], "markdownEnumDescriptions": [ - "The AWS::CUR::ReportDefinition resource creates a Cost & Usage Report with user-defined settings. You can use this resource to define settings like time granularity (hourly, daily, monthly), file format (Parquet, CSV), and S3 bucket for delivery of these reports. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cur-reportdefinition.html)" + "Resource type definition for AWS::IVSChat::LoggingConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-cur-reportdefinition.json" + "$ref": "resources/aws-ivschat-loggingconfiguration.json" } }, "required": [ @@ -24455,9 +24425,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_KeyValueStore": { + "AWS_SecurityHub_AggregatorV2": { "type": "object", - "markdownDescription": "The key value store. Use this to separate data from function code, allowing you to update data without having to publish a new version of a function. The key value store holds keys and their corresponding values. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keyvaluestore.html)", + "markdownDescription": "The AWS::SecurityHub::AggregatorV2 resource represents the AWS Security Hub AggregatorV2 in your account. One aggregatorv2 resource is created for each account in non opt-in region in which you configure region linking mode. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-aggregatorv2.html)", "allOf": [ { "type": "object", @@ -24465,14 +24435,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::KeyValueStore" + "AWS::SecurityHub::AggregatorV2" ], "markdownEnumDescriptions": [ - "The key value store. Use this to separate data from function code, allowing you to update data without having to publish a new version of a function. The key value store holds keys and their corresponding values. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keyvaluestore.html)" + "The AWS::SecurityHub::AggregatorV2 resource represents the AWS Security Hub AggregatorV2 in your account. One aggregatorv2 resource is created for each account in non opt-in region in which you configure region linking mode. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-aggregatorv2.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-keyvaluestore.json" + "$ref": "resources/aws-securityhub-aggregatorv2.json" } }, "required": [ @@ -24486,9 +24456,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_MonitoringSchedule": { + "AWS_Transfer_Workflow": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::MonitoringSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html)", + "markdownDescription": "Resource Type definition for AWS::Transfer::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-workflow.html)", "allOf": [ { "type": "object", @@ -24496,14 +24466,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::MonitoringSchedule" + "AWS::Transfer::Workflow" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::MonitoringSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html)" + "Resource Type definition for AWS::Transfer::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-workflow.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-monitoringschedule.json" + "$ref": "resources/aws-transfer-workflow.json" } }, "required": [ @@ -24517,9 +24487,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_Link": { + "AWS_ECR_RepositoryCreationTemplate": { "type": "object", - "markdownDescription": "The AWS::NetworkManager::Link type describes a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html)", + "markdownDescription": "The details of the repository creation template associated with the request. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html)", "allOf": [ { "type": "object", @@ -24527,14 +24497,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::Link" + "AWS::ECR::RepositoryCreationTemplate" ], "markdownEnumDescriptions": [ - "The AWS::NetworkManager::Link type describes a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-link.html)" + "The details of the repository creation template associated with the request. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repositorycreationtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-link.json" + "$ref": "resources/aws-ecr-repositorycreationtemplate.json" } }, "required": [ @@ -24548,9 +24518,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_InferenceComponent": { + "AWS_AppStream_DirectoryConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::InferenceComponent \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferencecomponent.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::DirectoryConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html)", "allOf": [ { "type": "object", @@ -24558,14 +24528,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::InferenceComponent" + "AWS::AppStream::DirectoryConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::InferenceComponent \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferencecomponent.html)" + "Resource Type definition for AWS::AppStream::DirectoryConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-directoryconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-inferencecomponent.json" + "$ref": "resources/aws-appstream-directoryconfig.json" } }, "required": [ @@ -24579,9 +24549,9 @@ ], "additionalProperties": false }, - "AWS_Athena_NamedQuery": { + "AWS_EC2_NetworkInterfacePermission": { "type": "object", - "markdownDescription": "Resource schema for AWS::Athena::NamedQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::NetworkInterfacePermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html)", "allOf": [ { "type": "object", @@ -24589,14 +24559,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Athena::NamedQuery" + "AWS::EC2::NetworkInterfacePermission" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Athena::NamedQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-namedquery.html)" + "Resource Type definition for AWS::EC2::NetworkInterfacePermission \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfacepermission.html)" ] }, "Properties": { - "$ref": "resources/aws-athena-namedquery.json" + "$ref": "resources/aws-ec2-networkinterfacepermission.json" } }, "required": [ @@ -24610,9 +24580,9 @@ ], "additionalProperties": false }, - "AWS_CE_AnomalyMonitor": { + "AWS_Glue_DevEndpoint": { "type": "object", - "markdownDescription": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. You can use Cost Anomaly Detection by creating monitor. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalymonitor.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::DevEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html)", "allOf": [ { "type": "object", @@ -24620,14 +24590,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CE::AnomalyMonitor" + "AWS::Glue::DevEndpoint" ], "markdownEnumDescriptions": [ - "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. You can use Cost Anomaly Detection by creating monitor. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalymonitor.html)" + "Resource Type definition for AWS::Glue::DevEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-devendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-ce-anomalymonitor.json" + "$ref": "resources/aws-glue-devendpoint.json" } }, "required": [ @@ -24641,9 +24611,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_ContainerGroupDefinition": { + "AWS_EC2_CustomerGateway": { "type": "object", - "markdownDescription": "The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containergroupdefinition.html)", + "markdownDescription": "Specifies a customer gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html)", "allOf": [ { "type": "object", @@ -24651,14 +24621,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::ContainerGroupDefinition" + "AWS::EC2::CustomerGateway" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containergroupdefinition.html)" + "Specifies a customer gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-containergroupdefinition.json" + "$ref": "resources/aws-ec2-customergateway.json" } }, "required": [ @@ -24672,9 +24642,9 @@ ], "additionalProperties": false }, - "AWS_EC2_CarrierGateway": { + "AWS_ServiceCatalog_TagOptionAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for Carrier Gateway which describes the Carrier Gateway resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-carriergateway.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::TagOptionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html)", "allOf": [ { "type": "object", @@ -24682,14 +24652,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::CarrierGateway" + "AWS::ServiceCatalog::TagOptionAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for Carrier Gateway which describes the Carrier Gateway resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-carriergateway.html)" + "Resource Type definition for AWS::ServiceCatalog::TagOptionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoptionassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-carriergateway.json" + "$ref": "resources/aws-servicecatalog-tagoptionassociation.json" } }, "required": [ @@ -24703,9 +24673,9 @@ ], "additionalProperties": false }, - "AWS_SecretsManager_SecretTargetAttachment": { + "AWS_Connect_TrafficDistributionGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SecretsManager::SecretTargetAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::TrafficDistributionGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-trafficdistributiongroup.html)", "allOf": [ { "type": "object", @@ -24713,14 +24683,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecretsManager::SecretTargetAttachment" + "AWS::Connect::TrafficDistributionGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SecretsManager::SecretTargetAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secrettargetattachment.html)" + "Resource Type definition for AWS::Connect::TrafficDistributionGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-trafficdistributiongroup.html)" ] }, "Properties": { - "$ref": "resources/aws-secretsmanager-secrettargetattachment.json" + "$ref": "resources/aws-connect-trafficdistributiongroup.json" } }, "required": [ @@ -24734,9 +24704,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_Flow": { + "AWS_EC2_TrafficMirrorSession": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::Flow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html)", + "markdownDescription": "Resource schema for AWS::EC2::TrafficMirrorSession \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html)", "allOf": [ { "type": "object", @@ -24744,14 +24714,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::Flow" + "AWS::EC2::TrafficMirrorSession" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::Flow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flow.html)" + "Resource schema for AWS::EC2::TrafficMirrorSession \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-flow.json" + "$ref": "resources/aws-ec2-trafficmirrorsession.json" } }, "required": [ @@ -24765,9 +24735,9 @@ ], "additionalProperties": false }, - "AWS_CodeDeploy_DeploymentGroup": { + "AWS_IVS_Stage": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeDeploy::DeploymentGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html)", + "markdownDescription": "Resource Definition for type AWS::IVS::Stage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-stage.html)", "allOf": [ { "type": "object", @@ -24775,19 +24745,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeDeploy::DeploymentGroup" + "AWS::IVS::Stage" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeDeploy::DeploymentGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html)" + "Resource Definition for type AWS::IVS::Stage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-stage.html)" ] }, "Properties": { - "$ref": "resources/aws-codedeploy-deploymentgroup.json" + "$ref": "resources/aws-ivs-stage.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -24796,9 +24765,9 @@ ], "additionalProperties": false }, - "AWS_MSK_Replicator": { + "AWS_EC2_VPNConnection": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MSK::Replicator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-replicator.html)", + "markdownDescription": "Specifies a VPN connection between a virtual private gateway and a VPN customer gateway or a transit gateway and a VPN customer gateway.\n To specify a VPN connection between a transit gateway and customer gateway, use the ``TransitGatewayId`` and ``CustomerGatewayId`` properties.\n To specify a VPN connection between a virtual private gateway and customer gateway, use the ``VpnGatewayId`` and ``CustomerGatewayId`` properties.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnection.html)", "allOf": [ { "type": "object", @@ -24806,14 +24775,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MSK::Replicator" + "AWS::EC2::VPNConnection" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MSK::Replicator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-replicator.html)" + "Specifies a VPN connection between a virtual private gateway and a VPN customer gateway or a transit gateway and a VPN customer gateway.\n To specify a VPN connection between a transit gateway and customer gateway, use the ``TransitGatewayId`` and ``CustomerGatewayId`` properties.\n To specify a VPN connection between a virtual private gateway and customer gateway, use the ``VpnGatewayId`` and ``CustomerGatewayId`` properties.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnection.html)" ] }, "Properties": { - "$ref": "resources/aws-msk-replicator.json" + "$ref": "resources/aws-ec2-vpnconnection.json" } }, "required": [ @@ -24827,9 +24796,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_ModuleVersion": { + "AWS_ApplicationAutoScaling_ScalableTarget": { "type": "object", - "markdownDescription": "A module that has been registered in the CloudFormation registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html)", + "markdownDescription": "The ``AWS::ApplicationAutoScaling::ScalableTarget`` resource specifies a resource that Application Auto Scaling can scale, such as an AWS::DynamoDB::Table or AWS::ECS::Service resource.\n For more information, see [Getting started](https://docs.aws.amazon.com/autoscaling/application/userguide/getting-started.html) in the *Application Auto Scaling User Guide*.\n If the resource that you want Application Auto Scaling to scale is not yet created in your account, add a dependency on the resource when registering it as a scalable target using the [DependsOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) attribute. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html)", "allOf": [ { "type": "object", @@ -24837,14 +24806,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::ModuleVersion" + "AWS::ApplicationAutoScaling::ScalableTarget" ], "markdownEnumDescriptions": [ - "A module that has been registered in the CloudFormation registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html)" + "The ``AWS::ApplicationAutoScaling::ScalableTarget`` resource specifies a resource that Application Auto Scaling can scale, such as an AWS::DynamoDB::Table or AWS::ECS::Service resource.\n For more information, see [Getting started](https://docs.aws.amazon.com/autoscaling/application/userguide/getting-started.html) in the *Application Auto Scaling User Guide*.\n If the resource that you want Application Auto Scaling to scale is not yet created in your account, add a dependency on the resource when registering it as a scalable target using the [DependsOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) attribute. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-moduleversion.json" + "$ref": "resources/aws-applicationautoscaling-scalabletarget.json" } }, "required": [ @@ -24858,9 +24827,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_StudioLifecycleConfig": { + "AWS_Lambda_Url": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::StudioLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-studiolifecycleconfig.html)", + "markdownDescription": "Resource Type definition for AWS::Lambda::Url \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html)", "allOf": [ { "type": "object", @@ -24868,14 +24837,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::StudioLifecycleConfig" + "AWS::Lambda::Url" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::StudioLifecycleConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-studiolifecycleconfig.html)" + "Resource Type definition for AWS::Lambda::Url \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-studiolifecycleconfig.json" + "$ref": "resources/aws-lambda-url.json" } }, "required": [ @@ -24889,9 +24858,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_AccessLogSubscription": { + "AWS_ApiGatewayV2_Authorizer": { "type": "object", - "markdownDescription": "Enables access logs to be sent to Amazon CloudWatch, Amazon S3, and Amazon Kinesis Data Firehose. The service network owner can use the access logs to audit the services in the network. The service network owner will only see access logs from clients and services that are associated with their service network. Access log entries represent traffic originated from VPCs associated with that network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::Authorizer`` resource creates an authorizer for a WebSocket API or an HTTP API. To learn more, see [Controlling and managing access to a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-control-access.html) and [Controlling and managing access to an HTTP API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-access-control.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html)", "allOf": [ { "type": "object", @@ -24899,14 +24868,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::AccessLogSubscription" + "AWS::ApiGatewayV2::Authorizer" ], "markdownEnumDescriptions": [ - "Enables access logs to be sent to Amazon CloudWatch, Amazon S3, and Amazon Kinesis Data Firehose. The service network owner can use the access logs to audit the services in the network. The service network owner will only see access logs from clients and services that are associated with their service network. Access log entries represent traffic originated from VPCs associated with that network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-accesslogsubscription.html)" + "The ``AWS::ApiGatewayV2::Authorizer`` resource creates an authorizer for a WebSocket API or an HTTP API. To learn more, see [Controlling and managing access to a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-control-access.html) and [Controlling and managing access to an HTTP API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-access-control.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-authorizer.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-accesslogsubscription.json" + "$ref": "resources/aws-apigatewayv2-authorizer.json" } }, "required": [ @@ -24920,9 +24889,9 @@ ], "additionalProperties": false }, - "AWS_DevOpsGuru_ResourceCollection": { + "AWS_S3Express_DirectoryBucket": { "type": "object", - "markdownDescription": "This resource schema represents the ResourceCollection resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-resourcecollection.html)", + "markdownDescription": "Resource Type definition for AWS::S3Express::DirectoryBucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-directorybucket.html)", "allOf": [ { "type": "object", @@ -24930,14 +24899,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DevOpsGuru::ResourceCollection" + "AWS::S3Express::DirectoryBucket" ], "markdownEnumDescriptions": [ - "This resource schema represents the ResourceCollection resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-resourcecollection.html)" + "Resource Type definition for AWS::S3Express::DirectoryBucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-directorybucket.html)" ] }, "Properties": { - "$ref": "resources/aws-devopsguru-resourcecollection.json" + "$ref": "resources/aws-s3express-directorybucket.json" } }, "required": [ @@ -24951,9 +24920,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_CoreDefinitionVersion": { + "AWS_KMS_ReplicaKey": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::CoreDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html)", + "markdownDescription": "The AWS::KMS::ReplicaKey resource specifies a multi-region replica AWS KMS key in AWS Key Management Service (AWS KMS). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html)", "allOf": [ { "type": "object", @@ -24961,14 +24930,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::CoreDefinitionVersion" + "AWS::KMS::ReplicaKey" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::CoreDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-coredefinitionversion.html)" + "The AWS::KMS::ReplicaKey resource specifies a multi-region replica AWS KMS key in AWS Key Management Service (AWS KMS). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-coredefinitionversion.json" + "$ref": "resources/aws-kms-replicakey.json" } }, "required": [ @@ -24982,9 +24951,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_InferenceExperiment": { + "AWS_EC2_NetworkPerformanceMetricSubscription": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::InferenceExperiment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::NetworkPerformanceMetricSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkperformancemetricsubscription.html)", "allOf": [ { "type": "object", @@ -24992,14 +24961,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::InferenceExperiment" + "AWS::EC2::NetworkPerformanceMetricSubscription" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::InferenceExperiment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-inferenceexperiment.html)" + "Resource Type definition for AWS::EC2::NetworkPerformanceMetricSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkperformancemetricsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-inferenceexperiment.json" + "$ref": "resources/aws-ec2-networkperformancemetricsubscription.json" } }, "required": [ @@ -25013,9 +24982,9 @@ ], "additionalProperties": false }, - "AWS_SQS_QueueInlinePolicy": { + "AWS_DataSync_Task": { "type": "object", - "markdownDescription": "Schema for SQS QueueInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queueinlinepolicy.html)", + "markdownDescription": "Resource schema for AWS::DataSync::Task. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html)", "allOf": [ { "type": "object", @@ -25023,14 +24992,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SQS::QueueInlinePolicy" + "AWS::DataSync::Task" ], "markdownEnumDescriptions": [ - "Schema for SQS QueueInlinePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queueinlinepolicy.html)" + "Resource schema for AWS::DataSync::Task. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html)" ] }, "Properties": { - "$ref": "resources/aws-sqs-queueinlinepolicy.json" + "$ref": "resources/aws-datasync-task.json" } }, "required": [ @@ -25044,9 +25013,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_SubnetGroup": { + "AWS_VerifiedPermissions_IdentitySource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-subnetgroup.html)", + "markdownDescription": "Definition of AWS::VerifiedPermissions::IdentitySource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-identitysource.html)", "allOf": [ { "type": "object", @@ -25054,14 +25023,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::SubnetGroup" + "AWS::VerifiedPermissions::IdentitySource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-subnetgroup.html)" + "Definition of AWS::VerifiedPermissions::IdentitySource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-identitysource.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-subnetgroup.json" + "$ref": "resources/aws-verifiedpermissions-identitysource.json" } }, "required": [ @@ -25075,9 +25044,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Table": { + "AWS_ApplicationSignals_ServiceLevelObjective": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html)", + "markdownDescription": "Resource Type definition for AWS::ApplicationSignals::ServiceLevelObjective \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html)", "allOf": [ { "type": "object", @@ -25085,14 +25054,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Table" + "AWS::ApplicationSignals::ServiceLevelObjective" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html)" + "Resource Type definition for AWS::ApplicationSignals::ServiceLevelObjective \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-table.json" + "$ref": "resources/aws-applicationsignals-servicelevelobjective.json" } }, "required": [ @@ -25106,9 +25075,9 @@ ], "additionalProperties": false }, - "AWS_IoT_Command": { + "AWS_Bedrock_Flow": { "type": "object", - "markdownDescription": "Represents the resource definition of AWS IoT Command. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-command.html)", + "markdownDescription": "Definition of AWS::Bedrock::Flow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flow.html)", "allOf": [ { "type": "object", @@ -25116,14 +25085,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::Command" + "AWS::Bedrock::Flow" ], "markdownEnumDescriptions": [ - "Represents the resource definition of AWS IoT Command. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-command.html)" + "Definition of AWS::Bedrock::Flow Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flow.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-command.json" + "$ref": "resources/aws-bedrock-flow.json" } }, "required": [ @@ -25137,9 +25106,9 @@ ], "additionalProperties": false }, - "AWS_KinesisAnalyticsV2_ApplicationCloudWatchLoggingOption": { + "AWS_Notifications_NotificationConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html)", + "markdownDescription": "Resource Type definition for AWS::Notifications::NotificationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationconfiguration.html)", "allOf": [ { "type": "object", @@ -25147,14 +25116,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption" + "AWS::Notifications::NotificationConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationCloudWatchLoggingOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationcloudwatchloggingoption.html)" + "Resource Type definition for AWS::Notifications::NotificationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisanalyticsv2-applicationcloudwatchloggingoption.json" + "$ref": "resources/aws-notifications-notificationconfiguration.json" } }, "required": [ @@ -25168,9 +25137,9 @@ ], "additionalProperties": false }, - "AWS_S3Outposts_AccessPoint": { + "AWS_SageMaker_Model": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::S3Outposts::AccessPoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Model \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html)", "allOf": [ { "type": "object", @@ -25178,19 +25147,18 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Outposts::AccessPoint" + "AWS::SageMaker::Model" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::S3Outposts::AccessPoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-accesspoint.html)" + "Resource Type definition for AWS::SageMaker::Model \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-model.html)" ] }, "Properties": { - "$ref": "resources/aws-s3outposts-accesspoint.json" + "$ref": "resources/aws-sagemaker-model.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -25199,9 +25167,9 @@ ], "additionalProperties": false }, - "AWS_ResourceExplorer2_Index": { + "AWS_Lambda_Function": { "type": "object", - "markdownDescription": "Definition of AWS::ResourceExplorer2::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-index.html)", + "markdownDescription": "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties.\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html)LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html)", "allOf": [ { "type": "object", @@ -25209,14 +25177,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ResourceExplorer2::Index" + "AWS::Lambda::Function" ], "markdownEnumDescriptions": [ - "Definition of AWS::ResourceExplorer2::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-index.html)" + "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties.\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html)LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html)" ] }, "Properties": { - "$ref": "resources/aws-resourceexplorer2-index.json" + "$ref": "resources/aws-lambda-function.json" } }, "required": [ @@ -25230,9 +25198,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayMulticastDomainAssociation": { + "AWS_MediaTailor_VodSource": { "type": "object", - "markdownDescription": "The AWS::EC2::TransitGatewayMulticastDomainAssociation type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html)", + "markdownDescription": "Definition of AWS::MediaTailor::VodSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-vodsource.html)", "allOf": [ { "type": "object", @@ -25240,14 +25208,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayMulticastDomainAssociation" + "AWS::MediaTailor::VodSource" ], "markdownEnumDescriptions": [ - "The AWS::EC2::TransitGatewayMulticastDomainAssociation type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html)" + "Definition of AWS::MediaTailor::VodSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-vodsource.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewaymulticastdomainassociation.json" + "$ref": "resources/aws-mediatailor-vodsource.json" } }, "required": [ @@ -25261,9 +25229,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_StackSetConstraint": { + "AWS_OpenSearchServerless_SecurityConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::StackSetConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html)", + "markdownDescription": "Amazon OpenSearchServerless security config resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securityconfig.html)", "allOf": [ { "type": "object", @@ -25271,19 +25239,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::StackSetConstraint" + "AWS::OpenSearchServerless::SecurityConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::StackSetConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-stacksetconstraint.html)" + "Amazon OpenSearchServerless security config resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-securityconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-stacksetconstraint.json" + "$ref": "resources/aws-opensearchserverless-securityconfig.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -25292,9 +25259,9 @@ ], "additionalProperties": false }, - "AWS_SSMContacts_Rotation": { + "AWS_Organizations_ResourcePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSMContacts::Rotation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-rotation.html)", + "markdownDescription": "You can use AWS::Organizations::ResourcePolicy to delegate policy management for AWS Organizations to specified member accounts to perform policy actions that are by default available only to the management account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -25302,14 +25269,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMContacts::Rotation" + "AWS::Organizations::ResourcePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSMContacts::Rotation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-rotation.html)" + "You can use AWS::Organizations::ResourcePolicy to delegate policy management for AWS Organizations to specified member accounts to perform policy actions that are by default available only to the management account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmcontacts-rotation.json" + "$ref": "resources/aws-organizations-resourcepolicy.json" } }, "required": [ @@ -25323,9 +25290,9 @@ ], "additionalProperties": false }, - "AWS_ConnectCampaigns_Campaign": { + "AWS_GroundStation_MissionProfile": { "type": "object", - "markdownDescription": "Definition of AWS::ConnectCampaigns::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaigns-campaign.html)", + "markdownDescription": "AWS Ground Station Mission Profile resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html)", "allOf": [ { "type": "object", @@ -25333,14 +25300,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ConnectCampaigns::Campaign" + "AWS::GroundStation::MissionProfile" ], "markdownEnumDescriptions": [ - "Definition of AWS::ConnectCampaigns::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaigns-campaign.html)" + "AWS Ground Station Mission Profile resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-missionprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-connectcampaigns-campaign.json" + "$ref": "resources/aws-groundstation-missionprofile.json" } }, "required": [ @@ -25354,9 +25321,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetWise_SignalCatalog": { + "AWS_EntityResolution_IdNamespace": { "type": "object", - "markdownDescription": "Definition of AWS::IoTFleetWise::SignalCatalog Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html)", + "markdownDescription": "IdNamespace defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idnamespace.html)", "allOf": [ { "type": "object", @@ -25364,18 +25331,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetWise::SignalCatalog" + "AWS::EntityResolution::IdNamespace" ], "markdownEnumDescriptions": [ - "Definition of AWS::IoTFleetWise::SignalCatalog Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-signalcatalog.html)" + "IdNamespace defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idnamespace.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleetwise-signalcatalog.json" + "$ref": "resources/aws-entityresolution-idnamespace.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -25384,9 +25352,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_GatewayResponse": { + "AWS_FSx_Snapshot": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::GatewayResponse`` resource creates a gateway response for your API. For more information, see [API Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html#api-gateway-gatewayResponse-definition) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html)", + "markdownDescription": "Resource Type definition for AWS::FSx::Snapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-snapshot.html)", "allOf": [ { "type": "object", @@ -25394,14 +25362,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::GatewayResponse" + "AWS::FSx::Snapshot" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::GatewayResponse`` resource creates a gateway response for your API. For more information, see [API Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html#api-gateway-gatewayResponse-definition) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html)" + "Resource Type definition for AWS::FSx::Snapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-snapshot.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-gatewayresponse.json" + "$ref": "resources/aws-fsx-snapshot.json" } }, "required": [ @@ -25415,9 +25383,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_Listener": { + "AWS_AppIntegrations_DataIntegration": { "type": "object", - "markdownDescription": "Creates a listener for a service. Before you start using your Amazon VPC Lattice service, you must add one or more listeners. A listener is a process that checks for connection requests to your services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html)", + "markdownDescription": "Resource Type definition for AWS::AppIntegrations::DataIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-dataintegration.html)", "allOf": [ { "type": "object", @@ -25425,14 +25393,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::Listener" + "AWS::AppIntegrations::DataIntegration" ], "markdownEnumDescriptions": [ - "Creates a listener for a service. Before you start using your Amazon VPC Lattice service, you must add one or more listeners. A listener is a process that checks for connection requests to your services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html)" + "Resource Type definition for AWS::AppIntegrations::DataIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-dataintegration.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-listener.json" + "$ref": "resources/aws-appintegrations-dataintegration.json" } }, "required": [ @@ -25446,9 +25414,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_Queue": { + "AWS_Panorama_Package": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::Queue Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queue.html)", + "markdownDescription": "Creates a package and storage location in an Amazon S3 access point. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-package.html)", "allOf": [ { "type": "object", @@ -25456,14 +25424,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::Queue" + "AWS::Panorama::Package" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::Queue Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queue.html)" + "Creates a package and storage location in an Amazon S3 access point. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-package.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-queue.json" + "$ref": "resources/aws-panorama-package.json" } }, "required": [ @@ -25477,9 +25445,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_HookTypeConfig": { + "AWS_IoTFleetHub_Application": { "type": "object", - "markdownDescription": "Specifies the configuration data for a registered hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html)", + "markdownDescription": "Resource schema for AWS::IoTFleetHub::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleethub-application.html)", "allOf": [ { "type": "object", @@ -25487,18 +25455,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::HookTypeConfig" + "AWS::IoTFleetHub::Application" ], "markdownEnumDescriptions": [ - "Specifies the configuration data for a registered hook in CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hooktypeconfig.html)" + "Resource schema for AWS::IoTFleetHub::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleethub-application.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-hooktypeconfig.json" + "$ref": "resources/aws-iotfleethub-application.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -25507,9 +25476,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerAddressList": { + "AWS_EC2_Subnet": { "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerAddressList Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddresslist.html)", + "markdownDescription": "Specifies a subnet for the specified VPC.\n For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.\n For more information, see [Subnets for your VPC](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html)", "allOf": [ { "type": "object", @@ -25517,18 +25486,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::MailManagerAddressList" + "AWS::EC2::Subnet" ], "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerAddressList Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddresslist.html)" + "Specifies a subnet for the specified VPC.\n For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.\n For more information, see [Subnets for your VPC](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-mailmanageraddresslist.json" + "$ref": "resources/aws-ec2-subnet.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -25537,9 +25507,9 @@ ], "additionalProperties": false }, - "AWS_DirectoryService_SimpleAD": { + "AWS_Transfer_Certificate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DirectoryService::SimpleAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html)", + "markdownDescription": "Resource Type definition for AWS::Transfer::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-certificate.html)", "allOf": [ { "type": "object", @@ -25547,14 +25517,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DirectoryService::SimpleAD" + "AWS::Transfer::Certificate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DirectoryService::SimpleAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html)" + "Resource Type definition for AWS::Transfer::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-certificate.html)" ] }, "Properties": { - "$ref": "resources/aws-directoryservice-simplead.json" + "$ref": "resources/aws-transfer-certificate.json" } }, "required": [ @@ -25568,9 +25538,9 @@ ], "additionalProperties": false }, - "AWS_Events_Archive": { + "AWS_AppStream_Entitlement": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Events::Archive \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::Entitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-entitlement.html)", "allOf": [ { "type": "object", @@ -25578,14 +25548,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Events::Archive" + "AWS::AppStream::Entitlement" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Events::Archive \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html)" + "Resource Type definition for AWS::AppStream::Entitlement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-entitlement.html)" ] }, "Properties": { - "$ref": "resources/aws-events-archive.json" + "$ref": "resources/aws-appstream-entitlement.json" } }, "required": [ @@ -25599,9 +25569,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayMulticastGroupSource": { + "AWS_EC2_TrafficMirrorFilterRule": { "type": "object", - "markdownDescription": "The AWS::EC2::TransitGatewayMulticastGroupSource registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html)", + "markdownDescription": "Resource Type definition for for AWS::EC2::TrafficMirrorFilterRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html)", "allOf": [ { "type": "object", @@ -25609,14 +25579,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayMulticastGroupSource" + "AWS::EC2::TrafficMirrorFilterRule" ], "markdownEnumDescriptions": [ - "The AWS::EC2::TransitGatewayMulticastGroupSource registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html)" + "Resource Type definition for for AWS::EC2::TrafficMirrorFilterRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorfilterrule.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewaymulticastgroupsource.json" + "$ref": "resources/aws-ec2-trafficmirrorfilterrule.json" } }, "required": [ @@ -25630,9 +25600,9 @@ ], "additionalProperties": false }, - "AWS_SSM_PatchBaseline": { + "AWS_ECS_ClusterCapacityProviderAssociations": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSM::PatchBaseline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html)", + "markdownDescription": "Associate a set of ECS Capacity Providers with a specified ECS Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-clustercapacityproviderassociations.html)", "allOf": [ { "type": "object", @@ -25640,14 +25610,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::PatchBaseline" + "AWS::ECS::ClusterCapacityProviderAssociations" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSM::PatchBaseline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-patchbaseline.html)" + "Associate a set of ECS Capacity Providers with a specified ECS Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-clustercapacityproviderassociations.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-patchbaseline.json" + "$ref": "resources/aws-ecs-clustercapacityproviderassociations.json" } }, "required": [ @@ -25661,9 +25631,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchService_Application": { + "AWS_PCAConnectorSCEP_Connector": { "type": "object", - "markdownDescription": "Amazon OpenSearchService application resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-application.html)", + "markdownDescription": "Represents a Connector that allows certificate issuance through Simple Certificate Enrollment Protocol (SCEP) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-connector.html)", "allOf": [ { "type": "object", @@ -25671,14 +25641,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchService::Application" + "AWS::PCAConnectorSCEP::Connector" ], "markdownEnumDescriptions": [ - "Amazon OpenSearchService application resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-application.html)" + "Represents a Connector that allows certificate issuance through Simple Certificate Enrollment Protocol (SCEP) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-connector.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchservice-application.json" + "$ref": "resources/aws-pcaconnectorscep-connector.json" } }, "required": [ @@ -25692,9 +25662,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_IpAccessSettings": { + "AWS_MediaConnect_Bridge": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::IpAccessSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-ipaccesssettings.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::Bridge \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridge.html)", "allOf": [ { "type": "object", @@ -25702,14 +25672,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::IpAccessSettings" + "AWS::MediaConnect::Bridge" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::IpAccessSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-ipaccesssettings.html)" + "Resource schema for AWS::MediaConnect::Bridge \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridge.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-ipaccesssettings.json" + "$ref": "resources/aws-mediaconnect-bridge.json" } }, "required": [ @@ -25723,9 +25693,9 @@ ], "additionalProperties": false }, - "AWS_HealthLake_FHIRDatastore": { + "AWS_Cognito_LogDeliveryConfiguration": { "type": "object", - "markdownDescription": "HealthLake FHIR Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthlake-fhirdatastore.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::LogDeliveryConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-logdeliveryconfiguration.html)", "allOf": [ { "type": "object", @@ -25733,14 +25703,14 @@ "Type": { "type": "string", "enum": [ - "AWS::HealthLake::FHIRDatastore" + "AWS::Cognito::LogDeliveryConfiguration" ], "markdownEnumDescriptions": [ - "HealthLake FHIR Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthlake-fhirdatastore.html)" + "Resource Type definition for AWS::Cognito::LogDeliveryConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-logdeliveryconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-healthlake-fhirdatastore.json" + "$ref": "resources/aws-cognito-logdeliveryconfiguration.json" } }, "required": [ @@ -25754,9 +25724,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_EnvironmentProfile": { + "AWS_Kendra_DataSource": { "type": "object", - "markdownDescription": "AWS Datazone Environment Profile is pre-configured set of resources and blueprints that provide reusable templates for creating environments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentprofile.html)", + "markdownDescription": "Kendra DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-datasource.html)", "allOf": [ { "type": "object", @@ -25764,14 +25734,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::EnvironmentProfile" + "AWS::Kendra::DataSource" ], "markdownEnumDescriptions": [ - "AWS Datazone Environment Profile is pre-configured set of resources and blueprints that provide reusable templates for creating environments. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-environmentprofile.html)" + "Kendra DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-datasource.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-environmentprofile.json" + "$ref": "resources/aws-kendra-datasource.json" } }, "required": [ @@ -25785,9 +25755,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_EmailTemplate": { + "AWS_RoboMaker_SimulationApplication": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::EmailTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailtemplate.html)", + "markdownDescription": "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html)", "allOf": [ { "type": "object", @@ -25795,14 +25765,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::EmailTemplate" + "AWS::RoboMaker::SimulationApplication" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::EmailTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailtemplate.html)" + "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplication.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-emailtemplate.json" + "$ref": "resources/aws-robomaker-simulationapplication.json" } }, "required": [ @@ -25816,9 +25786,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_Alias": { + "AWS_EC2_TransitGatewayRoute": { "type": "object", - "markdownDescription": "The AWS::GameLift::Alias resource creates an alias for an Amazon GameLift (GameLift) fleet destination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html)", "allOf": [ { "type": "object", @@ -25826,14 +25796,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::Alias" + "AWS::EC2::TransitGatewayRoute" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::Alias resource creates an alias for an Amazon GameLift (GameLift) fleet destination. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html)" + "Resource Type definition for AWS::EC2::TransitGatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroute.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-alias.json" + "$ref": "resources/aws-ec2-transitgatewayroute.json" } }, "required": [ @@ -25847,9 +25817,9 @@ ], "additionalProperties": false }, - "AWS_FMS_NotificationChannel": { + "AWS_CodeDeploy_DeploymentConfig": { "type": "object", - "markdownDescription": "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html)", + "markdownDescription": "Resource Type definition for AWS::CodeDeploy::DeploymentConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html)", "allOf": [ { "type": "object", @@ -25857,19 +25827,18 @@ "Type": { "type": "string", "enum": [ - "AWS::FMS::NotificationChannel" + "AWS::CodeDeploy::DeploymentConfig" ], "markdownEnumDescriptions": [ - "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-notificationchannel.html)" + "Resource Type definition for AWS::CodeDeploy::DeploymentConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-fms-notificationchannel.json" + "$ref": "resources/aws-codedeploy-deploymentconfig.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -25878,9 +25847,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_ClusterSecurityGroup": { + "AWS_MSK_Cluster": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Redshift::ClusterSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html)", + "markdownDescription": "Resource Type definition for AWS::MSK::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html)", "allOf": [ { "type": "object", @@ -25888,14 +25857,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::ClusterSecurityGroup" + "AWS::MSK::Cluster" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Redshift::ClusterSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html)" + "Resource Type definition for AWS::MSK::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-clustersecuritygroup.json" + "$ref": "resources/aws-msk-cluster.json" } }, "required": [ @@ -25909,9 +25878,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_CodeSigningConfig": { + "AWS_ImageBuilder_Image": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lambda::CodeSigningConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html)", "allOf": [ { "type": "object", @@ -25919,19 +25888,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::CodeSigningConfig" + "AWS::ImageBuilder::Image" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lambda::CodeSigningConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html)" + "Resource schema for AWS::ImageBuilder::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-image.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-codesigningconfig.json" + "$ref": "resources/aws-imagebuilder-image.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -25940,9 +25908,9 @@ ], "additionalProperties": false }, - "AWS_DataBrew_Recipe": { + "AWS_B2BI_Capability": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataBrew::Recipe. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html)", + "markdownDescription": "Definition of AWS::B2BI::Capability Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-capability.html)", "allOf": [ { "type": "object", @@ -25950,14 +25918,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataBrew::Recipe" + "AWS::B2BI::Capability" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataBrew::Recipe. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-recipe.html)" + "Definition of AWS::B2BI::Capability Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-capability.html)" ] }, "Properties": { - "$ref": "resources/aws-databrew-recipe.json" + "$ref": "resources/aws-b2bi-capability.json" } }, "required": [ @@ -25971,9 +25939,9 @@ ], "additionalProperties": false }, - "AWS_RAM_ResourceShare": { + "AWS_RefactorSpaces_Environment": { "type": "object", - "markdownDescription": "Resource type definition for AWS::RAM::ResourceShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html)", + "markdownDescription": "Definition of AWS::RefactorSpaces::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-environment.html)", "allOf": [ { "type": "object", @@ -25981,14 +25949,44 @@ "Type": { "type": "string", "enum": [ - "AWS::RAM::ResourceShare" + "AWS::RefactorSpaces::Environment" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::RAM::ResourceShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html)" + "Definition of AWS::RefactorSpaces::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-ram-resourceshare.json" + "$ref": "resources/aws-refactorspaces-environment.json" + } + }, + "required": [ + "Type" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Oam_Sink": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Oam::Sink \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-sink.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Oam::Sink" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Oam::Sink \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-sink.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-oam-sink.json" } }, "required": [ @@ -26002,9 +26000,9 @@ ], "additionalProperties": false }, - "AWS_S3_AccessGrantsInstance": { + "AWS_QBusiness_Plugin": { "type": "object", - "markdownDescription": "The AWS::S3::AccessGrantsInstance resource is an Amazon S3 resource type that hosts Access Grants and their associated locations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantsinstance.html)", + "markdownDescription": "Definition of AWS::QBusiness::Plugin Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html)", "allOf": [ { "type": "object", @@ -26012,18 +26010,19 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::AccessGrantsInstance" + "AWS::QBusiness::Plugin" ], "markdownEnumDescriptions": [ - "The AWS::S3::AccessGrantsInstance resource is an Amazon S3 resource type that hosts Access Grants and their associated locations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantsinstance.html)" + "Definition of AWS::QBusiness::Plugin Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-accessgrantsinstance.json" + "$ref": "resources/aws-qbusiness-plugin.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -26063,9 +26062,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorks_ElasticLoadBalancerAttachment": { + "AWS_EC2_LocalGatewayRouteTableVPCAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorks::ElasticLoadBalancerAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elasticloadbalancerattachment.html)", + "markdownDescription": "Resource Type definition for Local Gateway Route Table VPC Association which describes an association between a local gateway route table and a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html)", "allOf": [ { "type": "object", @@ -26073,14 +26072,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorks::ElasticLoadBalancerAttachment" + "AWS::EC2::LocalGatewayRouteTableVPCAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorks::ElasticLoadBalancerAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elasticloadbalancerattachment.html)" + "Resource Type definition for Local Gateway Route Table VPC Association which describes an association between a local gateway route table and a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworks-elasticloadbalancerattachment.json" + "$ref": "resources/aws-ec2-localgatewayroutetablevpcassociation.json" } }, "required": [ @@ -26094,9 +26093,9 @@ ], "additionalProperties": false }, - "AWS_SSMContacts_Plan": { + "AWS_AppStream_Stack": { "type": "object", - "markdownDescription": "Engagement Plan for a SSM Incident Manager Contact. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-plan.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html)", "allOf": [ { "type": "object", @@ -26104,14 +26103,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMContacts::Plan" + "AWS::AppStream::Stack" ], "markdownEnumDescriptions": [ - "Engagement Plan for a SSM Incident Manager Contact. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-plan.html)" + "Resource Type definition for AWS::AppStream::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stack.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmcontacts-plan.json" + "$ref": "resources/aws-appstream-stack.json" } }, "required": [ @@ -26124,9 +26123,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_ResolverConfig": { + "AWS_Cassandra_Type": { "type": "object", - "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverconfig.html)", + "markdownDescription": "Resource schema for AWS::Cassandra::Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-type.html)", "allOf": [ { "type": "object", @@ -26134,14 +26133,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::ResolverConfig" + "AWS::Cassandra::Type" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Route53Resolver::ResolverConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverconfig.html)" + "Resource schema for AWS::Cassandra::Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-type.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-resolverconfig.json" + "$ref": "resources/aws-cassandra-type.json" } }, "required": [ @@ -26155,9 +26154,9 @@ ], "additionalProperties": false }, - "AWS_AppConfig_Environment": { + "AWS_FraudDetector_Outcome": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppConfig::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-environment.html)", + "markdownDescription": "An outcome for rule evaluation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-outcome.html)", "allOf": [ { "type": "object", @@ -26165,14 +26164,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppConfig::Environment" + "AWS::FraudDetector::Outcome" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppConfig::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-environment.html)" + "An outcome for rule evaluation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-outcome.html)" ] }, "Properties": { - "$ref": "resources/aws-appconfig-environment.json" + "$ref": "resources/aws-frauddetector-outcome.json" } }, "required": [ @@ -26186,9 +26185,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_LoggerDefinition": { + "AWS_KinesisAnalyticsV2_ApplicationOutput": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::LoggerDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html)", + "markdownDescription": "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html)", "allOf": [ { "type": "object", @@ -26196,14 +26195,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::LoggerDefinition" + "AWS::KinesisAnalyticsV2::ApplicationOutput" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::LoggerDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-loggerdefinition.html)" + "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-loggerdefinition.json" + "$ref": "resources/aws-kinesisanalyticsv2-applicationoutput.json" } }, "required": [ @@ -26217,9 +26216,9 @@ ], "additionalProperties": false }, - "AWS_Connect_ApprovedOrigin": { + "AWS_Bedrock_Agent": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::ApprovedOrigin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-approvedorigin.html)", + "markdownDescription": "Definition of AWS::Bedrock::Agent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html)", "allOf": [ { "type": "object", @@ -26227,14 +26226,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::ApprovedOrigin" + "AWS::Bedrock::Agent" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::ApprovedOrigin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-approvedorigin.html)" + "Definition of AWS::Bedrock::Agent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-approvedorigin.json" + "$ref": "resources/aws-bedrock-agent.json" } }, "required": [ @@ -26248,9 +26247,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_OrganizationConfiguration": { + "AWS_CloudWatch_InsightRule": { "type": "object", - "markdownDescription": "The AWS::SecurityHub::OrganizationConfiguration resource represents the configuration of your organization in Security Hub. Only the Security Hub administrator account can create Organization Configuration resource in each region and can opt-in to Central Configuration only in the aggregation region of FindingAggregator. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::CloudWatch::InsightRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html)", "allOf": [ { "type": "object", @@ -26258,14 +26257,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::OrganizationConfiguration" + "AWS::CloudWatch::InsightRule" ], "markdownEnumDescriptions": [ - "The AWS::SecurityHub::OrganizationConfiguration resource represents the configuration of your organization in Security Hub. Only the Security Hub administrator account can create Organization Configuration resource in each region and can opt-in to Central Configuration only in the aggregation region of FindingAggregator. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html)" + "Resource Type definition for AWS::CloudWatch::InsightRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-insightrule.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-organizationconfiguration.json" + "$ref": "resources/aws-cloudwatch-insightrule.json" } }, "required": [ @@ -26279,9 +26278,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_RequestValidator": { + "AWS_StepFunctions_StateMachineAlias": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::RequestValidator`` resource sets up basic validation rules for incoming requests to your API. For more information, see [Enable Basic Request Validation for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html)", + "markdownDescription": "Resource schema for StateMachineAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachinealias.html)", "allOf": [ { "type": "object", @@ -26289,19 +26288,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::RequestValidator" + "AWS::StepFunctions::StateMachineAlias" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::RequestValidator`` resource sets up basic validation rules for incoming requests to your API. For more information, see [Enable Basic Request Validation for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-method-request-validation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-requestvalidator.html)" + "Resource schema for StateMachineAlias \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachinealias.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-requestvalidator.json" + "$ref": "resources/aws-stepfunctions-statemachinealias.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -26310,9 +26308,9 @@ ], "additionalProperties": false }, - "AWS_RolesAnywhere_Profile": { + "AWS_Route53_KeySigningKey": { "type": "object", - "markdownDescription": "Definition of AWS::RolesAnywhere::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-profile.html)", + "markdownDescription": "Represents a key signing key (KSK) associated with a hosted zone. You can only have two KSKs per hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html)", "allOf": [ { "type": "object", @@ -26320,14 +26318,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RolesAnywhere::Profile" + "AWS::Route53::KeySigningKey" ], "markdownEnumDescriptions": [ - "Definition of AWS::RolesAnywhere::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-profile.html)" + "Represents a key signing key (KSK) associated with a hosted zone. You can only have two KSKs per hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-keysigningkey.html)" ] }, "Properties": { - "$ref": "resources/aws-rolesanywhere-profile.json" + "$ref": "resources/aws-route53-keysigningkey.json" } }, "required": [ @@ -26341,9 +26339,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_Agent": { + "AWS_Logs_Transformer": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::Agent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html)", + "markdownDescription": "Specifies a transformer on the log group to transform logs into consistent structured and information rich format. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-transformer.html)", "allOf": [ { "type": "object", @@ -26351,14 +26349,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::Agent" + "AWS::Logs::Transformer" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::Agent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html)" + "Specifies a transformer on the log group to transform logs into consistent structured and information rich format. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-transformer.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-agent.json" + "$ref": "resources/aws-logs-transformer.json" } }, "required": [ @@ -26372,9 +26370,9 @@ ], "additionalProperties": false }, - "AWS_SQS_Queue": { + "AWS_DataZone_Connection": { "type": "object", - "markdownDescription": "The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.\n Keep the following caveats in mind:\n + If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.\n You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*. \n + If you don't provide a value for a property, the queue is created with the default value for the property.\n + If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.\n + To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html) and is unique within the scope of your queues.\n \n For more information about creating FIFO (first-in-first-out) queues, see [Creating an queue ()](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/create-queue-cloudformation.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html)", + "markdownDescription": "Connections enables users to connect their DataZone resources (domains, projects, and environments) to external resources/services (data, compute, etc) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-connection.html)", "allOf": [ { "type": "object", @@ -26382,18 +26380,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SQS::Queue" + "AWS::DataZone::Connection" ], "markdownEnumDescriptions": [ - "The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.\n Keep the following caveats in mind:\n + If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.\n You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*. \n + If you don't provide a value for a property, the queue is created with the default value for the property.\n + If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.\n + To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html) and is unique within the scope of your queues.\n \n For more information about creating FIFO (first-in-first-out) queues, see [Creating an queue ()](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/create-queue-cloudformation.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html)" + "Connections enables users to connect their DataZone resources (domains, projects, and environments) to external resources/services (data, compute, etc) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-connection.html)" ] }, "Properties": { - "$ref": "resources/aws-sqs-queue.json" + "$ref": "resources/aws-datazone-connection.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -26402,9 +26401,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_IdentityPool": { + "AWS_Logs_AccountPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::IdentityPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html)", + "markdownDescription": "The AWS::Logs::AccountPolicy resource specifies a CloudWatch Logs AccountPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-accountpolicy.html)", "allOf": [ { "type": "object", @@ -26412,14 +26411,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::IdentityPool" + "AWS::Logs::AccountPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::IdentityPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html)" + "The AWS::Logs::AccountPolicy resource specifies a CloudWatch Logs AccountPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-accountpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-identitypool.json" + "$ref": "resources/aws-logs-accountpolicy.json" } }, "required": [ @@ -26433,9 +26432,9 @@ ], "additionalProperties": false }, - "AWS_IAM_User": { + "AWS_GlobalAccelerator_EndpointGroup": { "type": "object", - "markdownDescription": "Creates a new IAM user for your AWS-account.\n For information about quotas for the number of IAM users you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)", + "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::EndpointGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html)", "allOf": [ { "type": "object", @@ -26443,18 +26442,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::User" + "AWS::GlobalAccelerator::EndpointGroup" ], "markdownEnumDescriptions": [ - "Creates a new IAM user for your AWS-account.\n For information about quotas for the number of IAM users you can create, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-user.html)" + "Resource Type definition for AWS::GlobalAccelerator::EndpointGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-endpointgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-user.json" + "$ref": "resources/aws-globalaccelerator-endpointgroup.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -26463,9 +26463,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_Master": { + "AWS_Glue_Job": { "type": "object", - "markdownDescription": "GuardDuty Master resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Job \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html)", "allOf": [ { "type": "object", @@ -26473,14 +26473,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::Master" + "AWS::Glue::Job" ], "markdownEnumDescriptions": [ - "GuardDuty Master resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html)" + "Resource Type definition for AWS::Glue::Job \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-master.json" + "$ref": "resources/aws-glue-job.json" } }, "required": [ @@ -26494,9 +26494,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_ResponseHeadersPolicy": { + "AWS_DataZone_SubscriptionTarget": { "type": "object", - "markdownDescription": "A response headers policy.\n A response headers policy contains information about a set of HTTP response headers.\n After you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it's attached to a cache behavior, the response headers policy affects the HTTP headers that CloudFront includes in HTTP responses to requests that match the cache behavior. CloudFront adds or removes response headers according to the configuration of the response headers policy.\n For more information, see [Adding or removing HTTP headers in CloudFront responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/modifying-response-headers.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html)", + "markdownDescription": "Subscription targets enables one to access the data to which you have subscribed in your projects. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-subscriptiontarget.html)", "allOf": [ { "type": "object", @@ -26504,14 +26504,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::ResponseHeadersPolicy" + "AWS::DataZone::SubscriptionTarget" ], "markdownEnumDescriptions": [ - "A response headers policy.\n A response headers policy contains information about a set of HTTP response headers.\n After you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it's attached to a cache behavior, the response headers policy affects the HTTP headers that CloudFront includes in HTTP responses to requests that match the cache behavior. CloudFront adds or removes response headers according to the configuration of the response headers policy.\n For more information, see [Adding or removing HTTP headers in CloudFront responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/modifying-response-headers.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html)" + "Subscription targets enables one to access the data to which you have subscribed in your projects. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-subscriptiontarget.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-responseheaderspolicy.json" + "$ref": "resources/aws-datazone-subscriptiontarget.json" } }, "required": [ @@ -26525,9 +26525,9 @@ ], "additionalProperties": false }, - "AWS_EC2_Subnet": { + "AWS_Glue_DataCatalogEncryptionSettings": { "type": "object", - "markdownDescription": "Specifies a subnet for the specified VPC.\n For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.\n For more information, see [Subnets for your VPC](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::DataCatalogEncryptionSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html)", "allOf": [ { "type": "object", @@ -26535,14 +26535,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::Subnet" + "AWS::Glue::DataCatalogEncryptionSettings" ], "markdownEnumDescriptions": [ - "Specifies a subnet for the specified VPC.\n For an IPv4 only subnet, specify an IPv4 CIDR block. If the VPC has an IPv6 CIDR block, you can create an IPv6 only subnet or a dual stack subnet instead. For an IPv6 only subnet, specify an IPv6 CIDR block. For a dual stack subnet, specify both an IPv4 CIDR block and an IPv6 CIDR block.\n For more information, see [Subnets for your VPC](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html)" + "Resource Type definition for AWS::Glue::DataCatalogEncryptionSettings \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-datacatalogencryptionsettings.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-subnet.json" + "$ref": "resources/aws-glue-datacatalogencryptionsettings.json" } }, "required": [ @@ -26556,9 +26556,9 @@ ], "additionalProperties": false }, - "AWS_Organizations_ResourcePolicy": { + "AWS_GuardDuty_Filter": { "type": "object", - "markdownDescription": "You can use AWS::Organizations::ResourcePolicy to delegate policy management for AWS Organizations to specified member accounts to perform policy actions that are by default available only to the management account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-resourcepolicy.html)", + "markdownDescription": "Resource Type definition for AWS::GuardDuty::Filter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html)", "allOf": [ { "type": "object", @@ -26566,14 +26566,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Organizations::ResourcePolicy" + "AWS::GuardDuty::Filter" ], "markdownEnumDescriptions": [ - "You can use AWS::Organizations::ResourcePolicy to delegate policy management for AWS Organizations to specified member accounts to perform policy actions that are by default available only to the management account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-resourcepolicy.html)" + "Resource Type definition for AWS::GuardDuty::Filter \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-filter.html)" ] }, "Properties": { - "$ref": "resources/aws-organizations-resourcepolicy.json" + "$ref": "resources/aws-guardduty-filter.json" } }, "required": [ @@ -26587,9 +26587,9 @@ ], "additionalProperties": false }, - "AWS_CloudTrail_ResourcePolicy": { + "AWS_Lightsail_Database": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudTrail::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-resourcepolicy.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-database.html)", "allOf": [ { "type": "object", @@ -26597,14 +26597,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudTrail::ResourcePolicy" + "AWS::Lightsail::Database" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudTrail::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-resourcepolicy.html)" + "Resource Type definition for AWS::Lightsail::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-database.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudtrail-resourcepolicy.json" + "$ref": "resources/aws-lightsail-database.json" } }, "required": [ @@ -26618,9 +26618,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchServerless_Index": { + "AWS_DMS_ReplicationTask": { "type": "object", - "markdownDescription": "An OpenSearch Serverless index resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-index.html)", + "markdownDescription": "Resource Type definition for AWS::DMS::ReplicationTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html)", "allOf": [ { "type": "object", @@ -26628,14 +26628,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchServerless::Index" + "AWS::DMS::ReplicationTask" ], "markdownEnumDescriptions": [ - "An OpenSearch Serverless index resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-index.html)" + "Resource Type definition for AWS::DMS::ReplicationTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchserverless-index.json" + "$ref": "resources/aws-dms-replicationtask.json" } }, "required": [ @@ -26649,9 +26649,9 @@ ], "additionalProperties": false }, - "AWS_RefactorSpaces_Application": { + "AWS_IVS_IngestConfiguration": { "type": "object", - "markdownDescription": "Definition of AWS::RefactorSpaces::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-application.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::IngestConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-ingestconfiguration.html)", "allOf": [ { "type": "object", @@ -26659,19 +26659,18 @@ "Type": { "type": "string", "enum": [ - "AWS::RefactorSpaces::Application" + "AWS::IVS::IngestConfiguration" ], "markdownEnumDescriptions": [ - "Definition of AWS::RefactorSpaces::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-application.html)" + "Resource Type definition for AWS::IVS::IngestConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-ingestconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-refactorspaces-application.json" + "$ref": "resources/aws-ivs-ingestconfiguration.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -26680,9 +26679,9 @@ ], "additionalProperties": false }, - "AWS_LakeFormation_Resource": { + "AWS_IoT_ThingType": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::LakeFormation::Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::ThingType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html)", "allOf": [ { "type": "object", @@ -26690,19 +26689,18 @@ "Type": { "type": "string", "enum": [ - "AWS::LakeFormation::Resource" + "AWS::IoT::ThingType" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::LakeFormation::Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-resource.html)" + "Resource Type definition for AWS::IoT::ThingType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingtype.html)" ] }, "Properties": { - "$ref": "resources/aws-lakeformation-resource.json" + "$ref": "resources/aws-iot-thingtype.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -26711,9 +26709,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_AccessPolicy": { + "AWS_Wisdom_Assistant": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::AccessPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html)", + "markdownDescription": "Definition of AWS::Wisdom::Assistant Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistant.html)", "allOf": [ { "type": "object", @@ -26721,14 +26719,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::AccessPolicy" + "AWS::Wisdom::Assistant" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::AccessPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-accesspolicy.html)" + "Definition of AWS::Wisdom::Assistant Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistant.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-accesspolicy.json" + "$ref": "resources/aws-wisdom-assistant.json" } }, "required": [ @@ -26742,9 +26740,9 @@ ], "additionalProperties": false }, - "AWS_Evidently_Feature": { + "AWS_Route53Resolver_FirewallDomainList": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Evidently::Feature. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-feature.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::FirewallDomainList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewalldomainlist.html)", "allOf": [ { "type": "object", @@ -26752,19 +26750,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Evidently::Feature" + "AWS::Route53Resolver::FirewallDomainList" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Evidently::Feature. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-feature.html)" + "Resource schema for AWS::Route53Resolver::FirewallDomainList. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewalldomainlist.html)" ] }, "Properties": { - "$ref": "resources/aws-evidently-feature.json" + "$ref": "resources/aws-route53resolver-firewalldomainlist.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -26773,9 +26770,9 @@ ], "additionalProperties": false }, - "AWS_Glue_SchemaVersion": { + "AWS_ApplicationSignals_Discovery": { "type": "object", - "markdownDescription": "This resource represents an individual schema version of a schema defined in Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversion.html)", + "markdownDescription": "Resource Type definition for AWS::ApplicationSignals::Discovery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-discovery.html)", "allOf": [ { "type": "object", @@ -26783,19 +26780,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::SchemaVersion" + "AWS::ApplicationSignals::Discovery" ], "markdownEnumDescriptions": [ - "This resource represents an individual schema version of a schema defined in Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversion.html)" + "Resource Type definition for AWS::ApplicationSignals::Discovery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-discovery.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-schemaversion.json" + "$ref": "resources/aws-applicationsignals-discovery.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -26804,9 +26800,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_WaitCondition": { + "AWS_SageMaker_ModelPackage": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudFormation::WaitCondition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitcondition.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelPackage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackage.html)", "allOf": [ { "type": "object", @@ -26814,14 +26810,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::WaitCondition" + "AWS::SageMaker::ModelPackage" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudFormation::WaitCondition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitcondition.html)" + "Resource Type definition for AWS::SageMaker::ModelPackage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackage.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-waitcondition.json" + "$ref": "resources/aws-sagemaker-modelpackage.json" } }, "required": [ @@ -26834,9 +26830,9 @@ ], "additionalProperties": false }, - "AWS_CloudWatch_Dashboard": { + "AWS_Personalize_Schema": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CloudWatch::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html)", + "markdownDescription": "Resource schema for AWS::Personalize::Schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-schema.html)", "allOf": [ { "type": "object", @@ -26844,14 +26840,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudWatch::Dashboard" + "AWS::Personalize::Schema" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CloudWatch::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-dashboard.html)" + "Resource schema for AWS::Personalize::Schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-schema.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudwatch-dashboard.json" + "$ref": "resources/aws-personalize-schema.json" } }, "required": [ @@ -26865,9 +26861,9 @@ ], "additionalProperties": false }, - "AWS_Backup_LogicallyAirGappedBackupVault": { + "AWS_GroundStation_DataflowEndpointGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html)", + "markdownDescription": "AWS Ground Station DataflowEndpointGroup schema for CloudFormation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-dataflowendpointgroup.html)", "allOf": [ { "type": "object", @@ -26875,14 +26871,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::LogicallyAirGappedBackupVault" + "AWS::GroundStation::DataflowEndpointGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Backup::LogicallyAirGappedBackupVault \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-logicallyairgappedbackupvault.html)" + "AWS Ground Station DataflowEndpointGroup schema for CloudFormation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-dataflowendpointgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-logicallyairgappedbackupvault.json" + "$ref": "resources/aws-groundstation-dataflowendpointgroup.json" } }, "required": [ @@ -26896,9 +26892,9 @@ ], "additionalProperties": false }, - "AWS_Connect_ContactFlow": { + "AWS_DLM_LifecyclePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::ContactFlow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflow.html)", + "markdownDescription": "Resource Type definition for AWS::DLM::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html)", "allOf": [ { "type": "object", @@ -26906,19 +26902,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::ContactFlow" + "AWS::DLM::LifecyclePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::ContactFlow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflow.html)" + "Resource Type definition for AWS::DLM::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-contactflow.json" + "$ref": "resources/aws-dlm-lifecyclepolicy.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -26927,9 +26922,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_DocumentationVersion": { + "AWS_KafkaConnect_WorkerConfiguration": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html)", + "markdownDescription": "The configuration of the workers, which are the processes that run the connector logic. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-workerconfiguration.html)", "allOf": [ { "type": "object", @@ -26937,14 +26932,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::DocumentationVersion" + "AWS::KafkaConnect::WorkerConfiguration" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::DocumentationVersion`` resource creates a snapshot of the documentation for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationversion.html)" + "The configuration of the workers, which are the processes that run the connector logic. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-workerconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-documentationversion.json" + "$ref": "resources/aws-kafkaconnect-workerconfiguration.json" } }, "required": [ @@ -26958,9 +26953,9 @@ ], "additionalProperties": false }, - "AWS_SSO_PermissionSet": { + "AWS_NetworkFirewall_TLSInspectionConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for SSO PermissionSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html)", + "markdownDescription": "Resource type definition for AWS::NetworkFirewall::TLSInspectionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-tlsinspectionconfiguration.html)", "allOf": [ { "type": "object", @@ -26968,14 +26963,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSO::PermissionSet" + "AWS::NetworkFirewall::TLSInspectionConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for SSO PermissionSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-permissionset.html)" + "Resource type definition for AWS::NetworkFirewall::TLSInspectionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-tlsinspectionconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-sso-permissionset.json" + "$ref": "resources/aws-networkfirewall-tlsinspectionconfiguration.json" } }, "required": [ @@ -26989,9 +26984,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_FunctionConfiguration": { + "AWS_CloudFront_ResponseHeadersPolicy": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html)", + "markdownDescription": "A response headers policy.\n A response headers policy contains information about a set of HTTP response headers.\n After you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it's attached to a cache behavior, the response headers policy affects the HTTP headers that CloudFront includes in HTTP responses to requests that match the cache behavior. CloudFront adds or removes response headers according to the configuration of the response headers policy.\n For more information, see [Adding or removing HTTP headers in CloudFront responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/modifying-response-headers.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html)", "allOf": [ { "type": "object", @@ -26999,14 +26994,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::FunctionConfiguration" + "AWS::CloudFront::ResponseHeadersPolicy" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html)" + "A response headers policy.\n A response headers policy contains information about a set of HTTP response headers.\n After you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it's attached to a cache behavior, the response headers policy affects the HTTP headers that CloudFront includes in HTTP responses to requests that match the cache behavior. CloudFront adds or removes response headers according to the configuration of the response headers policy.\n For more information, see [Adding or removing HTTP headers in CloudFront responses](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/modifying-response-headers.html) in the *Amazon CloudFront Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-responseheaderspolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-functionconfiguration.json" + "$ref": "resources/aws-cloudfront-responseheaderspolicy.json" } }, "required": [ @@ -27020,9 +27015,9 @@ ], "additionalProperties": false }, - "AWS_WAFv2_RegexPatternSet": { + "AWS_Connect_ViewVersion": { "type": "object", - "markdownDescription": "Contains a list of Regular expressions based on the provided inputs. RegexPatternSet can be used with other WAF entities with RegexPatternSetReferenceStatement to perform other actions . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::ViewVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-viewversion.html)", "allOf": [ { "type": "object", @@ -27030,14 +27025,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFv2::RegexPatternSet" + "AWS::Connect::ViewVersion" ], "markdownEnumDescriptions": [ - "Contains a list of Regular expressions based on the provided inputs. RegexPatternSet can be used with other WAF entities with RegexPatternSetReferenceStatement to perform other actions . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html)" + "Resource Type definition for AWS::Connect::ViewVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-viewversion.html)" ] }, "Properties": { - "$ref": "resources/aws-wafv2-regexpatternset.json" + "$ref": "resources/aws-connect-viewversion.json" } }, "required": [ @@ -27051,9 +27046,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_GlobalReplicationGroup": { + "AWS_EC2_IPAMScope": { "type": "object", - "markdownDescription": "The AWS::ElastiCache::GlobalReplicationGroup resource creates an Amazon ElastiCache Global Replication Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html)", + "markdownDescription": "Resource Schema of AWS::EC2::IPAMScope Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamscope.html)", "allOf": [ { "type": "object", @@ -27061,14 +27056,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::GlobalReplicationGroup" + "AWS::EC2::IPAMScope" ], "markdownEnumDescriptions": [ - "The AWS::ElastiCache::GlobalReplicationGroup resource creates an Amazon ElastiCache Global Replication Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html)" + "Resource Schema of AWS::EC2::IPAMScope Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamscope.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-globalreplicationgroup.json" + "$ref": "resources/aws-ec2-ipamscope.json" } }, "required": [ @@ -27082,9 +27077,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_UserGroup": { + "AWS_ECR_RegistryScanningConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::UserGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html)", + "markdownDescription": "The scanning configuration for a private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registryscanningconfiguration.html)", "allOf": [ { "type": "object", @@ -27092,14 +27087,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::UserGroup" + "AWS::ECR::RegistryScanningConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::UserGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-usergroup.html)" + "The scanning configuration for a private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registryscanningconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-usergroup.json" + "$ref": "resources/aws-ecr-registryscanningconfiguration.json" } }, "required": [ @@ -27113,9 +27108,9 @@ ], "additionalProperties": false }, - "AWS_SNS_Subscription": { + "AWS_Lambda_Version": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SNS::Subscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html)", + "markdownDescription": "Resource Type definition for AWS::Lambda::Version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)", "allOf": [ { "type": "object", @@ -27123,14 +27118,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SNS::Subscription" + "AWS::Lambda::Version" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SNS::Subscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html)" + "Resource Type definition for AWS::Lambda::Version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)" ] }, "Properties": { - "$ref": "resources/aws-sns-subscription.json" + "$ref": "resources/aws-lambda-version.json" } }, "required": [ @@ -27144,9 +27139,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCBlockPublicAccessExclusion": { + "AWS_AppMesh_VirtualService": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCBlockPublicAccessExclusion. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessexclusion.html)", + "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html)", "allOf": [ { "type": "object", @@ -27154,14 +27149,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCBlockPublicAccessExclusion" + "AWS::AppMesh::VirtualService" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCBlockPublicAccessExclusion. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessexclusion.html)" + "Resource Type definition for AWS::AppMesh::VirtualService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcblockpublicaccessexclusion.json" + "$ref": "resources/aws-appmesh-virtualservice.json" } }, "required": [ @@ -27175,9 +27170,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_Route": { + "AWS_EC2_NetworkInsightsAccessScopeAnalysis": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::Route`` resource creates a route for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html)", + "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsAccessScopeAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscopeanalysis.html)", "allOf": [ { "type": "object", @@ -27185,14 +27180,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::Route" + "AWS::EC2::NetworkInsightsAccessScopeAnalysis" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::Route`` resource creates a route for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-route.html)" + "Resource schema for AWS::EC2::NetworkInsightsAccessScopeAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsaccessscopeanalysis.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-route.json" + "$ref": "resources/aws-ec2-networkinsightsaccessscopeanalysis.json" } }, "required": [ @@ -27206,9 +27201,9 @@ ], "additionalProperties": false }, - "AWS_Athena_WorkGroup": { + "AWS_Greengrass_FunctionDefinition": { "type": "object", - "markdownDescription": "Resource schema for AWS::Athena::WorkGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::FunctionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html)", "allOf": [ { "type": "object", @@ -27216,14 +27211,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Athena::WorkGroup" + "AWS::Greengrass::FunctionDefinition" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Athena::WorkGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html)" + "Resource Type definition for AWS::Greengrass::FunctionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-athena-workgroup.json" + "$ref": "resources/aws-greengrass-functiondefinition.json" } }, "required": [ @@ -27237,9 +27232,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_ServiceNetworkVpcAssociation": { + "AWS_Backup_ReportPlan": { "type": "object", - "markdownDescription": "Associates a VPC with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html)", + "markdownDescription": "Contains detailed information about a report plan in AWS Backup Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-reportplan.html)", "allOf": [ { "type": "object", @@ -27247,18 +27242,19 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::ServiceNetworkVpcAssociation" + "AWS::Backup::ReportPlan" ], "markdownEnumDescriptions": [ - "Associates a VPC with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html)" + "Contains detailed information about a report plan in AWS Backup Audit Manager. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-reportplan.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-servicenetworkvpcassociation.json" + "$ref": "resources/aws-backup-reportplan.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -27267,9 +27263,9 @@ ], "additionalProperties": false }, - "AWS_Connect_TrafficDistributionGroup": { + "AWS_Route53Resolver_ResolverQueryLoggingConfigAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::TrafficDistributionGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-trafficdistributiongroup.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html)", "allOf": [ { "type": "object", @@ -27277,19 +27273,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::TrafficDistributionGroup" + "AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::TrafficDistributionGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-trafficdistributiongroup.html)" + "Resource schema for AWS::Route53Resolver::ResolverQueryLoggingConfigAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfigassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-trafficdistributiongroup.json" + "$ref": "resources/aws-route53resolver-resolverqueryloggingconfigassociation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -27298,9 +27293,9 @@ ], "additionalProperties": false }, - "AWS_ACMPCA_CertificateAuthority": { + "AWS_AppSync_DomainName": { "type": "object", - "markdownDescription": "Private certificate authority. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::DomainName \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)", "allOf": [ { "type": "object", @@ -27308,14 +27303,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ACMPCA::CertificateAuthority" + "AWS::AppSync::DomainName" ], "markdownEnumDescriptions": [ - "Private certificate authority. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthority.html)" + "Resource Type definition for AWS::AppSync::DomainName \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)" ] }, "Properties": { - "$ref": "resources/aws-acmpca-certificateauthority.json" + "$ref": "resources/aws-appsync-domainname.json" } }, "required": [ @@ -27329,9 +27324,9 @@ ], "additionalProperties": false }, - "AWS_ServiceDiscovery_PublicDnsNamespace": { + "AWS_Config_StoredQuery": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::PublicDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html)", + "markdownDescription": "Resource Type definition for AWS::Config::StoredQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html)", "allOf": [ { "type": "object", @@ -27339,14 +27334,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceDiscovery::PublicDnsNamespace" + "AWS::Config::StoredQuery" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceDiscovery::PublicDnsNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-publicdnsnamespace.html)" + "Resource Type definition for AWS::Config::StoredQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html)" ] }, "Properties": { - "$ref": "resources/aws-servicediscovery-publicdnsnamespace.json" + "$ref": "resources/aws-config-storedquery.json" } }, "required": [ @@ -27360,9 +27355,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_PublicTypeVersion": { + "AWS_Deadline_Limit": { "type": "object", - "markdownDescription": "Test and Publish a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html)", + "markdownDescription": "Definition of AWS::Deadline::Limit Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-limit.html)", "allOf": [ { "type": "object", @@ -27370,18 +27365,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::PublicTypeVersion" + "AWS::Deadline::Limit" ], "markdownEnumDescriptions": [ - "Test and Publish a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-publictypeversion.html)" + "Definition of AWS::Deadline::Limit Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-limit.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-publictypeversion.json" + "$ref": "resources/aws-deadline-limit.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -27390,9 +27386,9 @@ ], "additionalProperties": false }, - "AWS_IVSChat_Room": { + "AWS_WAFv2_IPSet": { "type": "object", - "markdownDescription": "Resource type definition for AWS::IVSChat::Room. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html)", + "markdownDescription": "Contains a list of IP addresses. This can be either IPV4 or IPV6. The list will be mutually \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html)", "allOf": [ { "type": "object", @@ -27400,18 +27396,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IVSChat::Room" + "AWS::WAFv2::IPSet" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::IVSChat::Room. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html)" + "Contains a list of IP addresses. This can be either IPV4 or IPV6. The list will be mutually \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-ipset.html)" ] }, "Properties": { - "$ref": "resources/aws-ivschat-room.json" + "$ref": "resources/aws-wafv2-ipset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -27420,9 +27417,9 @@ ], "additionalProperties": false }, - "AWS_IoT_ScheduledAudit": { + "AWS_LookoutMetrics_AnomalyDetector": { "type": "object", - "markdownDescription": "Scheduled audits can be used to specify the checks you want to perform during an audit and how often the audit should be run. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html)", + "markdownDescription": "An Amazon Lookout for Metrics Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-anomalydetector.html)", "allOf": [ { "type": "object", @@ -27430,14 +27427,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::ScheduledAudit" + "AWS::LookoutMetrics::AnomalyDetector" ], "markdownEnumDescriptions": [ - "Scheduled audits can be used to specify the checks you want to perform during an audit and how often the audit should be run. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-scheduledaudit.html)" + "An Amazon Lookout for Metrics Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-anomalydetector.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-scheduledaudit.json" + "$ref": "resources/aws-lookoutmetrics-anomalydetector.json" } }, "required": [ @@ -27451,9 +27448,9 @@ ], "additionalProperties": false }, - "AWS_StepFunctions_Activity": { + "AWS_QLDB_Stream": { "type": "object", - "markdownDescription": "Resource schema for Activity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html)", + "markdownDescription": "Resource schema for AWS::QLDB::Stream. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html)", "allOf": [ { "type": "object", @@ -27461,14 +27458,14 @@ "Type": { "type": "string", "enum": [ - "AWS::StepFunctions::Activity" + "AWS::QLDB::Stream" ], "markdownEnumDescriptions": [ - "Resource schema for Activity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html)" + "Resource schema for AWS::QLDB::Stream. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-stream.html)" ] }, "Properties": { - "$ref": "resources/aws-stepfunctions-activity.json" + "$ref": "resources/aws-qldb-stream.json" } }, "required": [ @@ -27482,9 +27479,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_Topic": { + "AWS_RolesAnywhere_CRL": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::Topic Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-topic.html)", + "markdownDescription": "Definition of AWS::RolesAnywhere::CRL Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-crl.html)", "allOf": [ { "type": "object", @@ -27492,18 +27489,19 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::Topic" + "AWS::RolesAnywhere::CRL" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::Topic Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-topic.html)" + "Definition of AWS::RolesAnywhere::CRL Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-crl.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-topic.json" + "$ref": "resources/aws-rolesanywhere-crl.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -27512,9 +27510,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_ConnectionGroup": { + "AWS_ApiGatewayV2_Deployment": { "type": "object", - "markdownDescription": "The connection group for your distribution tenants. When you first create a distribution tenant and you don't specify a connection group, CloudFront will automatically create a default connection group for you. When you create a new distribution tenant and don't specify a connection group, the default one will be associated with your distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-connectiongroup.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::Deployment`` resource creates a deployment for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html)", "allOf": [ { "type": "object", @@ -27522,14 +27520,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::ConnectionGroup" + "AWS::ApiGatewayV2::Deployment" ], "markdownEnumDescriptions": [ - "The connection group for your distribution tenants. When you first create a distribution tenant and you don't specify a connection group, CloudFront will automatically create a default connection group for you. When you create a new distribution tenant and don't specify a connection group, the default one will be associated with your distribution tenant. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-connectiongroup.html)" + "The ``AWS::ApiGatewayV2::Deployment`` resource creates a deployment for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-connectiongroup.json" + "$ref": "resources/aws-apigatewayv2-deployment.json" } }, "required": [ @@ -27543,9 +27541,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchService_Domain": { + "AWS_ElastiCache_GlobalReplicationGroup": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-domain.html)", + "markdownDescription": "The AWS::ElastiCache::GlobalReplicationGroup resource creates an Amazon ElastiCache Global Replication Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html)", "allOf": [ { "type": "object", @@ -27553,18 +27551,19 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchService::Domain" + "AWS::ElastiCache::GlobalReplicationGroup" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchservice-domain.html)" + "The AWS::ElastiCache::GlobalReplicationGroup resource creates an Amazon ElastiCache Global Replication Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchservice-domain.json" + "$ref": "resources/aws-elasticache-globalreplicationgroup.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -27573,9 +27572,9 @@ ], "additionalProperties": false }, - "AWS_Cloud9_EnvironmentEC2": { + "AWS_AppMesh_VirtualGateway": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cloud9::EnvironmentEC2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html)", + "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html)", "allOf": [ { "type": "object", @@ -27583,14 +27582,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cloud9::EnvironmentEC2" + "AWS::AppMesh::VirtualGateway" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cloud9::EnvironmentEC2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html)" + "Resource Type definition for AWS::AppMesh::VirtualGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualgateway.html)" ] }, "Properties": { - "$ref": "resources/aws-cloud9-environmentec2.json" + "$ref": "resources/aws-appmesh-virtualgateway.json" } }, "required": [ @@ -27604,9 +27603,9 @@ ], "additionalProperties": false }, - "AWS_Logs_QueryDefinition": { + "AWS_SES_ConfigurationSet": { "type": "object", - "markdownDescription": "The resource schema for AWSLogs QueryDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html)", + "markdownDescription": "Resource schema for AWS::SES::ConfigurationSet. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html)", "allOf": [ { "type": "object", @@ -27614,19 +27613,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::QueryDefinition" + "AWS::SES::ConfigurationSet" ], "markdownEnumDescriptions": [ - "The resource schema for AWSLogs QueryDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html)" + "Resource schema for AWS::SES::ConfigurationSet. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-querydefinition.json" + "$ref": "resources/aws-ses-configurationset.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -27635,9 +27633,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_Stage": { + "AWS_MediaPackage_OriginEndpoint": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html)", + "markdownDescription": "Resource schema for AWS::MediaPackage::OriginEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html)", "allOf": [ { "type": "object", @@ -27645,14 +27643,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::Stage" + "AWS::MediaPackage::OriginEndpoint" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::Stage`` resource creates a stage for a deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html)" + "Resource schema for AWS::MediaPackage::OriginEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-originendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-stage.json" + "$ref": "resources/aws-mediapackage-originendpoint.json" } }, "required": [ @@ -27666,9 +27664,9 @@ ], "additionalProperties": false }, - "AWS_InspectorV2_CisScanConfiguration": { + "AWS_Cognito_UserPoolResourceServer": { "type": "object", - "markdownDescription": "CIS Scan Configuration resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-cisscanconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolResourceServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html)", "allOf": [ { "type": "object", @@ -27676,14 +27674,14 @@ "Type": { "type": "string", "enum": [ - "AWS::InspectorV2::CisScanConfiguration" + "AWS::Cognito::UserPoolResourceServer" ], "markdownEnumDescriptions": [ - "CIS Scan Configuration resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspectorv2-cisscanconfiguration.html)" + "Resource Type definition for AWS::Cognito::UserPoolResourceServer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolresourceserver.html)" ] }, "Properties": { - "$ref": "resources/aws-inspectorv2-cisscanconfiguration.json" + "$ref": "resources/aws-cognito-userpoolresourceserver.json" } }, "required": [ @@ -27697,9 +27695,9 @@ ], "additionalProperties": false }, - "AWS_Logs_SubscriptionFilter": { + "AWS_SupportApp_SlackWorkspaceConfiguration": { "type": "object", - "markdownDescription": "The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n + A logical destination that belongs to a different account, for cross-account delivery.\n + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.\n \n There can be as many as two subscription filters associated with a log group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html)", + "markdownDescription": "An AWS Support App resource that creates, updates, lists, and deletes Slack workspace configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackworkspaceconfiguration.html)", "allOf": [ { "type": "object", @@ -27707,14 +27705,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::SubscriptionFilter" + "AWS::SupportApp::SlackWorkspaceConfiguration" ], "markdownEnumDescriptions": [ - "The ``AWS::Logs::SubscriptionFilter`` resource specifies a subscription filter and associates it with the specified log group. Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:\n + An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.\n + A logical destination that belongs to a different account, for cross-account delivery.\n + An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.\n + An LAMlong function that belongs to the same account as the subscription filter, for same-account delivery.\n \n There can be as many as two subscription filters associated with a log group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html)" + "An AWS Support App resource that creates, updates, lists, and deletes Slack workspace configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackworkspaceconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-subscriptionfilter.json" + "$ref": "resources/aws-supportapp-slackworkspaceconfiguration.json" } }, "required": [ @@ -27728,9 +27726,9 @@ ], "additionalProperties": false }, - "AWS_Connect_SecurityKey": { + "AWS_ImageBuilder_InfrastructureConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::SecurityKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securitykey.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::InfrastructureConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html)", "allOf": [ { "type": "object", @@ -27738,14 +27736,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::SecurityKey" + "AWS::ImageBuilder::InfrastructureConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::SecurityKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securitykey.html)" + "Resource schema for AWS::ImageBuilder::InfrastructureConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-infrastructureconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-securitykey.json" + "$ref": "resources/aws-imagebuilder-infrastructureconfiguration.json" } }, "required": [ @@ -27759,9 +27757,9 @@ ], "additionalProperties": false }, - "AWS_SSM_Association": { + "AWS_ODB_OdbNetwork": { "type": "object", - "markdownDescription": "The AWS::SSM::Association resource associates an SSM document in AWS Systems Manager with EC2 instances that contain a configuration agent to process the document. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html)", + "markdownDescription": "The AWS::ODB::OdbNetwork resource creates an ODB Network \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-odbnetwork.html)", "allOf": [ { "type": "object", @@ -27769,19 +27767,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::Association" + "AWS::ODB::OdbNetwork" ], "markdownEnumDescriptions": [ - "The AWS::SSM::Association resource associates an SSM document in AWS Systems Manager with EC2 instances that contain a configuration agent to process the document. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html)" + "The AWS::ODB::OdbNetwork resource creates an ODB Network \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-odbnetwork.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-association.json" + "$ref": "resources/aws-odb-odbnetwork.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -27790,9 +27787,9 @@ ], "additionalProperties": false }, - "AWS_AutoScaling_ScalingPolicy": { + "AWS_ECR_RegistryPolicy": { "type": "object", - "markdownDescription": "The AWS::AutoScaling::ScalingPolicy resource specifies an Amazon EC2 Auto Scaling scaling policy so that the Auto Scaling group can scale the number of instances available for your application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scalingpolicy.html)", + "markdownDescription": "The ``AWS::ECR::RegistryPolicy`` resource creates or updates the permissions policy for a private registry.\n A private registry policy is used to specify permissions for another AWS-account and is used when configuring cross-account replication. For more information, see [Registry permissions](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry-permissions.html) in the *Amazon Elastic Container Registry User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html)", "allOf": [ { "type": "object", @@ -27800,14 +27797,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AutoScaling::ScalingPolicy" + "AWS::ECR::RegistryPolicy" ], "markdownEnumDescriptions": [ - "The AWS::AutoScaling::ScalingPolicy resource specifies an Amazon EC2 Auto Scaling scaling policy so that the Auto Scaling group can scale the number of instances available for your application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scalingpolicy.html)" + "The ``AWS::ECR::RegistryPolicy`` resource creates or updates the permissions policy for a private registry.\n A private registry policy is used to specify permissions for another AWS-account and is used when configuring cross-account replication. For more information, see [Registry permissions](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry-permissions.html) in the *Amazon Elastic Container Registry User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-autoscaling-scalingpolicy.json" + "$ref": "resources/aws-ecr-registrypolicy.json" } }, "required": [ @@ -27821,9 +27818,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_BrowserSettings": { + "AWS_ElasticBeanstalk_Environment": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::BrowserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-browsersettings.html)", + "markdownDescription": "Resource Type definition for AWS::ElasticBeanstalk::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html)", "allOf": [ { "type": "object", @@ -27831,18 +27828,19 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::BrowserSettings" + "AWS::ElasticBeanstalk::Environment" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::BrowserSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-browsersettings.html)" + "Resource Type definition for AWS::ElasticBeanstalk::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-browsersettings.json" + "$ref": "resources/aws-elasticbeanstalk-environment.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -27851,9 +27849,9 @@ ], "additionalProperties": false }, - "AWS_Kinesis_StreamConsumer": { + "AWS_Evidently_Launch": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Kinesis::StreamConsumer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html)", + "markdownDescription": "Resource Type definition for AWS::Evidently::Launch. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-launch.html)", "allOf": [ { "type": "object", @@ -27861,14 +27859,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Kinesis::StreamConsumer" + "AWS::Evidently::Launch" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Kinesis::StreamConsumer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-streamconsumer.html)" + "Resource Type definition for AWS::Evidently::Launch. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-launch.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesis-streamconsumer.json" + "$ref": "resources/aws-evidently-launch.json" } }, "required": [ @@ -27882,9 +27880,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_Owner": { + "AWS_KinesisFirehose_DeliveryStream": { "type": "object", - "markdownDescription": "A owner can set up authorization permissions on their resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-owner.html)", + "markdownDescription": "Resource Type definition for AWS::KinesisFirehose::DeliveryStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html)", "allOf": [ { "type": "object", @@ -27892,19 +27890,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::Owner" + "AWS::KinesisFirehose::DeliveryStream" ], "markdownEnumDescriptions": [ - "A owner can set up authorization permissions on their resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-owner.html)" + "Resource Type definition for AWS::KinesisFirehose::DeliveryStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-owner.json" + "$ref": "resources/aws-kinesisfirehose-deliverystream.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -27913,9 +27910,9 @@ ], "additionalProperties": false }, - "AWS_ECS_PrimaryTaskSet": { + "AWS_SES_MailManagerRuleSet": { "type": "object", - "markdownDescription": "A pseudo-resource that manages which of your ECS task sets is primary. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerRuleSet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerruleset.html)", "allOf": [ { "type": "object", @@ -27923,14 +27920,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECS::PrimaryTaskSet" + "AWS::SES::MailManagerRuleSet" ], "markdownEnumDescriptions": [ - "A pseudo-resource that manages which of your ECS task sets is primary. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-primarytaskset.html)" + "Definition of AWS::SES::MailManagerRuleSet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerruleset.html)" ] }, "Properties": { - "$ref": "resources/aws-ecs-primarytaskset.json" + "$ref": "resources/aws-ses-mailmanagerruleset.json" } }, "required": [ @@ -27944,9 +27941,9 @@ ], "additionalProperties": false }, - "AWS_MSK_BatchScramSecret": { + "AWS_Route53Resolver_ResolverRule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MSK::BatchScramSecret \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-batchscramsecret.html)", + "markdownDescription": "Resource Type definition for AWS::Route53Resolver::ResolverRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html)", "allOf": [ { "type": "object", @@ -27954,14 +27951,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MSK::BatchScramSecret" + "AWS::Route53Resolver::ResolverRule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MSK::BatchScramSecret \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-batchscramsecret.html)" + "Resource Type definition for AWS::Route53Resolver::ResolverRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html)" ] }, "Properties": { - "$ref": "resources/aws-msk-batchscramsecret.json" + "$ref": "resources/aws-route53resolver-resolverrule.json" } }, "required": [ @@ -27975,9 +27972,9 @@ ], "additionalProperties": false }, - "AWS_WAF_WebACL": { + "AWS_Pipes_Pipe": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAF::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html)", + "markdownDescription": "Definition of AWS::Pipes::Pipe Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html)", "allOf": [ { "type": "object", @@ -27985,14 +27982,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAF::WebACL" + "AWS::Pipes::Pipe" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAF::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html)" + "Definition of AWS::Pipes::Pipe Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pipes-pipe.html)" ] }, "Properties": { - "$ref": "resources/aws-waf-webacl.json" + "$ref": "resources/aws-pipes-pipe.json" } }, "required": [ @@ -28006,9 +28003,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_User": { + "AWS_SageMaker_ModelCard": { "type": "object", - "markdownDescription": "Definition of AWS::Transfer::User Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelCard. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelcard.html)", "allOf": [ { "type": "object", @@ -28016,14 +28013,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::User" + "AWS::SageMaker::ModelCard" ], "markdownEnumDescriptions": [ - "Definition of AWS::Transfer::User Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-user.html)" + "Resource Type definition for AWS::SageMaker::ModelCard. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelcard.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-user.json" + "$ref": "resources/aws-sagemaker-modelcard.json" } }, "required": [ @@ -28037,9 +28034,9 @@ ], "additionalProperties": false }, - "AWS_DocDBElastic_Cluster": { + "AWS_EC2_IPAMAllocation": { "type": "object", - "markdownDescription": "The AWS::DocDBElastic::Cluster Amazon DocumentDB (with MongoDB compatibility) Elastic Scale resource describes a Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html)", + "markdownDescription": "Resource Schema of AWS::EC2::IPAMAllocation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamallocation.html)", "allOf": [ { "type": "object", @@ -28047,14 +28044,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DocDBElastic::Cluster" + "AWS::EC2::IPAMAllocation" ], "markdownEnumDescriptions": [ - "The AWS::DocDBElastic::Cluster Amazon DocumentDB (with MongoDB compatibility) Elastic Scale resource describes a Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html)" + "Resource Schema of AWS::EC2::IPAMAllocation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamallocation.html)" ] }, "Properties": { - "$ref": "resources/aws-docdbelastic-cluster.json" + "$ref": "resources/aws-ec2-ipamallocation.json" } }, "required": [ @@ -28068,9 +28065,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_Model": { + "AWS_VpcLattice_ResourceConfiguration": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::Model`` resource updates data model for a WebSocket API. For more information, see [Model Selection Expressions](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html)", + "markdownDescription": "VpcLattice ResourceConfiguration CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourceconfiguration.html)", "allOf": [ { "type": "object", @@ -28078,14 +28075,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::Model" + "AWS::VpcLattice::ResourceConfiguration" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::Model`` resource updates data model for a WebSocket API. For more information, see [Model Selection Expressions](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html)" + "VpcLattice ResourceConfiguration CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourceconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-model.json" + "$ref": "resources/aws-vpclattice-resourceconfiguration.json" } }, "required": [ @@ -28099,9 +28096,9 @@ ], "additionalProperties": false }, - "AWS_MediaConvert_JobTemplate": { + "AWS_MediaPackage_Channel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MediaConvert::JobTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html)", + "markdownDescription": "Resource schema for AWS::MediaPackage::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html)", "allOf": [ { "type": "object", @@ -28109,14 +28106,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConvert::JobTemplate" + "AWS::MediaPackage::Channel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MediaConvert::JobTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-jobtemplate.html)" + "Resource schema for AWS::MediaPackage::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-channel.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconvert-jobtemplate.json" + "$ref": "resources/aws-mediapackage-channel.json" } }, "required": [ @@ -28130,9 +28127,9 @@ ], "additionalProperties": false }, - "AWS_Organizations_OrganizationalUnit": { + "AWS_RDS_DBSecurityGroupIngress": { "type": "object", - "markdownDescription": "You can use organizational units (OUs) to group accounts together to administer as a single unit. This greatly simplifies the management of your accounts. For example, you can attach a policy-based control to an OU, and all accounts within the OU automatically inherit the policy. You can create multiple OUs within a single organization, and you can create OUs within other OUs. Each OU can contain multiple accounts, and you can move accounts from one OU to another. However, OU names must be unique within a parent OU or root. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organizationalunit.html)", + "markdownDescription": "Resource Type definition for AWS::RDS::DBSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroupingress.html)", "allOf": [ { "type": "object", @@ -28140,14 +28137,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Organizations::OrganizationalUnit" + "AWS::RDS::DBSecurityGroupIngress" ], "markdownEnumDescriptions": [ - "You can use organizational units (OUs) to group accounts together to administer as a single unit. This greatly simplifies the management of your accounts. For example, you can attach a policy-based control to an OU, and all accounts within the OU automatically inherit the policy. You can create multiple OUs within a single organization, and you can create OUs within other OUs. Each OU can contain multiple accounts, and you can move accounts from one OU to another. However, OU names must be unique within a parent OU or root. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-organizationalunit.html)" + "Resource Type definition for AWS::RDS::DBSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsecuritygroupingress.html)" ] }, "Properties": { - "$ref": "resources/aws-organizations-organizationalunit.json" + "$ref": "resources/aws-rds-dbsecuritygroupingress.json" } }, "required": [ @@ -28161,9 +28158,9 @@ ], "additionalProperties": false }, - "AWS_NetworkFirewall_FirewallPolicy": { + "AWS_QuickSight_Topic": { "type": "object", - "markdownDescription": "Resource type definition for AWS::NetworkFirewall::FirewallPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewallpolicy.html)", + "markdownDescription": "Definition of the AWS::QuickSight::Topic Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-topic.html)", "allOf": [ { "type": "object", @@ -28171,19 +28168,18 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkFirewall::FirewallPolicy" + "AWS::QuickSight::Topic" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::NetworkFirewall::FirewallPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-firewallpolicy.html)" + "Definition of the AWS::QuickSight::Topic Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-topic.html)" ] }, "Properties": { - "$ref": "resources/aws-networkfirewall-firewallpolicy.json" + "$ref": "resources/aws-quicksight-topic.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -28192,9 +28188,9 @@ ], "additionalProperties": false }, - "AWS_CodeArtifact_PackageGroup": { + "AWS_EC2_VPNConnectionRoute": { "type": "object", - "markdownDescription": "The resource schema to create a CodeArtifact package group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-packagegroup.html)", + "markdownDescription": "Specifies a static route for a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnectionroute.html)", "allOf": [ { "type": "object", @@ -28202,14 +28198,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeArtifact::PackageGroup" + "AWS::EC2::VPNConnectionRoute" ], "markdownEnumDescriptions": [ - "The resource schema to create a CodeArtifact package group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-packagegroup.html)" + "Specifies a static route for a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpnconnectionroute.html)" ] }, "Properties": { - "$ref": "resources/aws-codeartifact-packagegroup.json" + "$ref": "resources/aws-ec2-vpnconnectionroute.json" } }, "required": [ @@ -28223,9 +28219,9 @@ ], "additionalProperties": false }, - "AWS_ECR_ReplicationConfiguration": { + "AWS_QBusiness_Permission": { "type": "object", - "markdownDescription": "The ``AWS::ECR::ReplicationConfiguration`` resource creates or updates the replication configuration for a private registry. The first time a replication configuration is applied to a private registry, a service-linked IAM role is created in your account for the replication process. For more information, see [Using Service-Linked Roles for Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/using-service-linked-roles.html) in the *Amazon Elastic Container Registry User Guide*.\n When configuring cross-account replication, the destination account must grant the source account permission to replicate. This permission is controlled using a private registry permissions policy. For more information, see ``AWS::ECR::RegistryPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html)", + "markdownDescription": "Definition of AWS::QBusiness::Permission Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-permission.html)", "allOf": [ { "type": "object", @@ -28233,14 +28229,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECR::ReplicationConfiguration" + "AWS::QBusiness::Permission" ], "markdownEnumDescriptions": [ - "The ``AWS::ECR::ReplicationConfiguration`` resource creates or updates the replication configuration for a private registry. The first time a replication configuration is applied to a private registry, a service-linked IAM role is created in your account for the replication process. For more information, see [Using Service-Linked Roles for Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/using-service-linked-roles.html) in the *Amazon Elastic Container Registry User Guide*.\n When configuring cross-account replication, the destination account must grant the source account permission to replicate. This permission is controlled using a private registry permissions policy. For more information, see ``AWS::ECR::RegistryPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-replicationconfiguration.html)" + "Definition of AWS::QBusiness::Permission Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-permission.html)" ] }, "Properties": { - "$ref": "resources/aws-ecr-replicationconfiguration.json" + "$ref": "resources/aws-qbusiness-permission.json" } }, "required": [ @@ -28254,9 +28250,9 @@ ], "additionalProperties": false }, - "AWS_KinesisFirehose_DeliveryStream": { + "AWS_EC2_VPCEndpointService": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KinesisFirehose::DeliveryStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCEndpointService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html)", "allOf": [ { "type": "object", @@ -28264,14 +28260,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisFirehose::DeliveryStream" + "AWS::EC2::VPCEndpointService" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KinesisFirehose::DeliveryStream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html)" + "Resource Type definition for AWS::EC2::VPCEndpointService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisfirehose-deliverystream.json" + "$ref": "resources/aws-ec2-vpcendpointservice.json" } }, "required": [ @@ -28284,9 +28280,9 @@ ], "additionalProperties": false }, - "AWS_IoT_JobTemplate": { + "AWS_Transfer_WebApp": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::JobTemplate. Job templates enable you to preconfigure jobs so that you can deploy them to multiple sets of target devices. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html)", + "markdownDescription": "Resource Type definition for AWS::Transfer::WebApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-webapp.html)", "allOf": [ { "type": "object", @@ -28294,14 +28290,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::JobTemplate" + "AWS::Transfer::WebApp" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::JobTemplate. Job templates enable you to preconfigure jobs so that you can deploy them to multiple sets of target devices. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html)" + "Resource Type definition for AWS::Transfer::WebApp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-webapp.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-jobtemplate.json" + "$ref": "resources/aws-transfer-webapp.json" } }, "required": [ @@ -28315,9 +28311,9 @@ ], "additionalProperties": false }, - "AWS_EC2_LocalGatewayRouteTableVPCAssociation": { + "AWS_MediaConnect_BridgeSource": { "type": "object", - "markdownDescription": "Resource Type definition for Local Gateway Route Table VPC Association which describes an association between a local gateway route table and a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::BridgeSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgesource.html)", "allOf": [ { "type": "object", @@ -28325,14 +28321,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::LocalGatewayRouteTableVPCAssociation" + "AWS::MediaConnect::BridgeSource" ], "markdownEnumDescriptions": [ - "Resource Type definition for Local Gateway Route Table VPC Association which describes an association between a local gateway route table and a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevpcassociation.html)" + "Resource schema for AWS::MediaConnect::BridgeSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgesource.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-localgatewayroutetablevpcassociation.json" + "$ref": "resources/aws-mediaconnect-bridgesource.json" } }, "required": [ @@ -28346,9 +28342,9 @@ ], "additionalProperties": false }, - "AWS_NotificationsContacts_EmailContact": { + "AWS_LakeFormation_Permissions": { "type": "object", - "markdownDescription": "Definition of AWS::NotificationsContacts::EmailContact Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notificationscontacts-emailcontact.html)", + "markdownDescription": "Resource Type definition for AWS::LakeFormation::Permissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html)", "allOf": [ { "type": "object", @@ -28356,14 +28352,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NotificationsContacts::EmailContact" + "AWS::LakeFormation::Permissions" ], "markdownEnumDescriptions": [ - "Definition of AWS::NotificationsContacts::EmailContact Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notificationscontacts-emailcontact.html)" + "Resource Type definition for AWS::LakeFormation::Permissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html)" ] }, "Properties": { - "$ref": "resources/aws-notificationscontacts-emailcontact.json" + "$ref": "resources/aws-lakeformation-permissions.json" } }, "required": [ @@ -28377,9 +28373,9 @@ ], "additionalProperties": false }, - "AWS_CloudWatch_MetricStream": { + "AWS_SageMaker_Image": { "type": "object", - "markdownDescription": "Resource Type definition for Metric Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html)", "allOf": [ { "type": "object", @@ -28387,18 +28383,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudWatch::MetricStream" + "AWS::SageMaker::Image" ], "markdownEnumDescriptions": [ - "Resource Type definition for Metric Stream \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-metricstream.html)" + "Resource Type definition for AWS::SageMaker::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudwatch-metricstream.json" + "$ref": "resources/aws-sagemaker-image.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -28407,9 +28404,9 @@ ], "additionalProperties": false }, - "AWS_EC2_InternetGateway": { + "AWS_ElastiCache_CacheCluster": { "type": "object", - "markdownDescription": "Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::CacheCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-cachecluster.html)", "allOf": [ { "type": "object", @@ -28417,18 +28414,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::InternetGateway" + "AWS::ElastiCache::CacheCluster" ], "markdownEnumDescriptions": [ - "Allocates an internet gateway for use with a VPC. After creating the Internet gateway, you then attach it to a VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-internetgateway.html)" + "Resource Type definition for AWS::ElastiCache::CacheCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-cachecluster.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-internetgateway.json" + "$ref": "resources/aws-elasticache-cachecluster.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -28437,9 +28435,9 @@ ], "additionalProperties": false }, - "AWS_AppRunner_ObservabilityConfiguration": { + "AWS_Cognito_IdentityPoolPrincipalTag": { "type": "object", - "markdownDescription": "The AWS::AppRunner::ObservabilityConfiguration resource is an AWS App Runner resource type that specifies an App Runner observability configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-observabilityconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::IdentityPoolPrincipalTag \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolprincipaltag.html)", "allOf": [ { "type": "object", @@ -28447,18 +28445,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AppRunner::ObservabilityConfiguration" + "AWS::Cognito::IdentityPoolPrincipalTag" ], "markdownEnumDescriptions": [ - "The AWS::AppRunner::ObservabilityConfiguration resource is an AWS App Runner resource type that specifies an App Runner observability configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-observabilityconfiguration.html)" + "Resource Type definition for AWS::Cognito::IdentityPoolPrincipalTag \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolprincipaltag.html)" ] }, "Properties": { - "$ref": "resources/aws-apprunner-observabilityconfiguration.json" + "$ref": "resources/aws-cognito-identitypoolprincipaltag.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -28467,9 +28466,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_ConnectAttachment": { + "AWS_CodeCommit_Repository": { "type": "object", - "markdownDescription": "AWS::NetworkManager::ConnectAttachment Resource Type Definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectattachment.html)", + "markdownDescription": "Resource Type definition for AWS::CodeCommit::Repository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html)", "allOf": [ { "type": "object", @@ -28477,14 +28476,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::ConnectAttachment" + "AWS::CodeCommit::Repository" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::ConnectAttachment Resource Type Definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectattachment.html)" + "Resource Type definition for AWS::CodeCommit::Repository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-connectattachment.json" + "$ref": "resources/aws-codecommit-repository.json" } }, "required": [ @@ -28498,9 +28497,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayVpcAttachment": { + "AWS_IAM_UserPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayVpcAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayvpcattachment.html)", + "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM user.\n An IAM user can also have a managed policy attached to it. To attach a managed policy to a user, use [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a user, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html)", "allOf": [ { "type": "object", @@ -28508,14 +28507,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayVpcAttachment" + "AWS::IAM::UserPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TransitGatewayVpcAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayvpcattachment.html)" + "Adds or updates an inline policy document that is embedded in the specified IAM user.\n An IAM user can also have a managed policy attached to it. To attach a managed policy to a user, use [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a user, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewayvpcattachment.json" + "$ref": "resources/aws-iam-userpolicy.json" } }, "required": [ @@ -28529,9 +28528,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBClusterParameterGroup": { + "AWS_WAFv2_WebACLAssociation": { "type": "object", - "markdownDescription": "The ``AWS::RDS::DBClusterParameterGroup`` resource creates a new Amazon RDS DB cluster parameter group.\n For information about configuring parameters for Amazon Aurora DB clusters, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n If you apply a parameter group to a DB cluster, then its DB instances might need to reboot. This can result in an outage while the DB instances are rebooting.\n If you apply a change to parameter group associated with a stopped DB cluster, then the updated stack waits until the DB cluster is started. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html)", + "markdownDescription": "Associates WebACL to Application Load Balancer, CloudFront or API Gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html)", "allOf": [ { "type": "object", @@ -28539,14 +28538,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBClusterParameterGroup" + "AWS::WAFv2::WebACLAssociation" ], "markdownEnumDescriptions": [ - "The ``AWS::RDS::DBClusterParameterGroup`` resource creates a new Amazon RDS DB cluster parameter group.\n For information about configuring parameters for Amazon Aurora DB clusters, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n If you apply a parameter group to a DB cluster, then its DB instances might need to reboot. This can result in an outage while the DB instances are rebooting.\n If you apply a change to parameter group associated with a stopped DB cluster, then the updated stack waits until the DB cluster is started. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html)" + "Associates WebACL to Application Load Balancer, CloudFront or API Gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbclusterparametergroup.json" + "$ref": "resources/aws-wafv2-webaclassociation.json" } }, "required": [ @@ -28560,9 +28559,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_Server": { + "AWS_MediaConvert_Preset": { "type": "object", - "markdownDescription": "Definition of AWS::Transfer::Server Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html)", + "markdownDescription": "Resource Type definition for AWS::MediaConvert::Preset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html)", "allOf": [ { "type": "object", @@ -28570,18 +28569,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::Server" + "AWS::MediaConvert::Preset" ], "markdownEnumDescriptions": [ - "Definition of AWS::Transfer::Server Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html)" + "Resource Type definition for AWS::MediaConvert::Preset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-preset.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-server.json" + "$ref": "resources/aws-mediaconvert-preset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -28590,9 +28590,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_User": { + "AWS_RDS_DBProxyEndpoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html)", + "markdownDescription": "Resource schema for AWS::RDS::DBProxyEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxyendpoint.html)", "allOf": [ { "type": "object", @@ -28600,14 +28600,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::User" + "AWS::RDS::DBProxyEndpoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-user.html)" + "Resource schema for AWS::RDS::DBProxyEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxyendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-user.json" + "$ref": "resources/aws-rds-dbproxyendpoint.json" } }, "required": [ @@ -28621,9 +28621,9 @@ ], "additionalProperties": false }, - "AWS_ECR_RegistryScanningConfiguration": { + "AWS_IAM_SAMLProvider": { "type": "object", - "markdownDescription": "The scanning configuration for a private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registryscanningconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::IAM::SAMLProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html)", "allOf": [ { "type": "object", @@ -28631,19 +28631,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ECR::RegistryScanningConfiguration" + "AWS::IAM::SAMLProvider" ], "markdownEnumDescriptions": [ - "The scanning configuration for a private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registryscanningconfiguration.html)" + "Resource Type definition for AWS::IAM::SAMLProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-ecr-registryscanningconfiguration.json" + "$ref": "resources/aws-iam-samlprovider.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -28652,9 +28651,9 @@ ], "additionalProperties": false }, - "AWS_DMS_DataProvider": { + "AWS_CustomerProfiles_Domain": { "type": "object", - "markdownDescription": "Resource schema for AWS::DMS::DataProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-dataprovider.html)", + "markdownDescription": "A domain defined for 3rd party data source in Profile Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html)", "allOf": [ { "type": "object", @@ -28662,14 +28661,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::DataProvider" + "AWS::CustomerProfiles::Domain" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DMS::DataProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-dataprovider.html)" + "A domain defined for 3rd party data source in Profile Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-dataprovider.json" + "$ref": "resources/aws-customerprofiles-domain.json" } }, "required": [ @@ -28683,9 +28682,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_QueueFleetAssociation": { + "AWS_CodeStarConnections_Connection": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::QueueFleetAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuefleetassociation.html)", + "markdownDescription": "Schema for AWS::CodeStarConnections::Connection resource which can be used to connect external source providers with AWS CodePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html)", "allOf": [ { "type": "object", @@ -28693,14 +28692,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::QueueFleetAssociation" + "AWS::CodeStarConnections::Connection" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::QueueFleetAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuefleetassociation.html)" + "Schema for AWS::CodeStarConnections::Connection resource which can be used to connect external source providers with AWS CodePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-queuefleetassociation.json" + "$ref": "resources/aws-codestarconnections-connection.json" } }, "required": [ @@ -28714,9 +28713,9 @@ ], "additionalProperties": false }, - "AWS_Batch_ComputeEnvironment": { + "AWS_Glue_SchemaVersionMetadata": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Batch::ComputeEnvironment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html)", + "markdownDescription": "This resource adds Key-Value metadata to a Schema version of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html)", "allOf": [ { "type": "object", @@ -28724,14 +28723,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Batch::ComputeEnvironment" + "AWS::Glue::SchemaVersionMetadata" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Batch::ComputeEnvironment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html)" + "This resource adds Key-Value metadata to a Schema version of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schemaversionmetadata.html)" ] }, "Properties": { - "$ref": "resources/aws-batch-computeenvironment.json" + "$ref": "resources/aws-glue-schemaversionmetadata.json" } }, "required": [ @@ -28745,9 +28744,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_ServiceAction": { + "AWS_ECS_TaskSet": { "type": "object", - "markdownDescription": "Resource Schema for AWS::ServiceCatalog::ServiceAction \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html)", + "markdownDescription": "Create a task set in the specified cluster and service. This is used when a service uses the EXTERNAL deployment controller type. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.htmlin the Amazon Elastic Container Service Developer Guide. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html)", "allOf": [ { "type": "object", @@ -28755,14 +28754,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::ServiceAction" + "AWS::ECS::TaskSet" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::ServiceCatalog::ServiceAction \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html)" + "Create a task set in the specified cluster and service. This is used when a service uses the EXTERNAL deployment controller type. For more information, see https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.htmlin the Amazon Elastic Container Service Developer Guide. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-serviceaction.json" + "$ref": "resources/aws-ecs-taskset.json" } }, "required": [ @@ -28776,9 +28775,9 @@ ], "additionalProperties": false }, - "AWS_Kendra_Faq": { + "AWS_Redshift_ClusterParameterGroup": { "type": "object", - "markdownDescription": "A Kendra FAQ resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-faq.html)", + "markdownDescription": "Resource Type definition for AWS::Redshift::ClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html)", "allOf": [ { "type": "object", @@ -28786,14 +28785,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Kendra::Faq" + "AWS::Redshift::ClusterParameterGroup" ], "markdownEnumDescriptions": [ - "A Kendra FAQ resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-faq.html)" + "Resource Type definition for AWS::Redshift::ClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-kendra-faq.json" + "$ref": "resources/aws-redshift-clusterparametergroup.json" } }, "required": [ @@ -28807,9 +28806,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolGroup": { + "AWS_ApplicationInsights_Application": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html)", + "markdownDescription": "Resource Type definition for AWS::ApplicationInsights::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html)", "allOf": [ { "type": "object", @@ -28817,14 +28816,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolGroup" + "AWS::ApplicationInsights::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html)" + "Resource Type definition for AWS::ApplicationInsights::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationinsights-application.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpoolgroup.json" + "$ref": "resources/aws-applicationinsights-application.json" } }, "required": [ @@ -28838,9 +28837,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_Connector": { + "AWS_Glue_UsageProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Transfer::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html)", + "markdownDescription": "This creates a Resource of UsageProfile type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-usageprofile.html)", "allOf": [ { "type": "object", @@ -28848,14 +28847,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::Connector" + "AWS::Glue::UsageProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Transfer::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html)" + "This creates a Resource of UsageProfile type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-usageprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-connector.json" + "$ref": "resources/aws-glue-usageprofile.json" } }, "required": [ @@ -28869,9 +28868,9 @@ ], "additionalProperties": false }, - "AWS_Organizations_Account": { + "AWS_Route53Profiles_ProfileAssociation": { "type": "object", - "markdownDescription": "You can use AWS::Organizations::Account to manage accounts in organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-account.html)", + "markdownDescription": "Resource Type definition for AWS::Route53Profiles::ProfileAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileassociation.html)", "allOf": [ { "type": "object", @@ -28879,14 +28878,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Organizations::Account" + "AWS::Route53Profiles::ProfileAssociation" ], "markdownEnumDescriptions": [ - "You can use AWS::Organizations::Account to manage accounts in organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-account.html)" + "Resource Type definition for AWS::Route53Profiles::ProfileAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-organizations-account.json" + "$ref": "resources/aws-route53profiles-profileassociation.json" } }, "required": [ @@ -28900,9 +28899,9 @@ ], "additionalProperties": false }, - "AWS_FinSpace_Environment": { + "AWS_ElastiCache_SecurityGroupIngress": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-finspace-environment.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroupingress.html)", "allOf": [ { "type": "object", @@ -28910,14 +28909,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FinSpace::Environment" + "AWS::ElastiCache::SecurityGroupIngress" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-finspace-environment.html)" + "Resource Type definition for AWS::ElastiCache::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroupingress.html)" ] }, "Properties": { - "$ref": "resources/aws-finspace-environment.json" + "$ref": "resources/aws-elasticache-securitygroupingress.json" } }, "required": [ @@ -28931,9 +28930,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryReadiness_ResourceSet": { + "AWS_SES_MailManagerAddressList": { "type": "object", - "markdownDescription": "Schema for the AWS Route53 Recovery Readiness ResourceSet Resource and API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-resourceset.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerAddressList Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddresslist.html)", "allOf": [ { "type": "object", @@ -28941,19 +28940,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryReadiness::ResourceSet" + "AWS::SES::MailManagerAddressList" ], "markdownEnumDescriptions": [ - "Schema for the AWS Route53 Recovery Readiness ResourceSet Resource and API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-resourceset.html)" + "Definition of AWS::SES::MailManagerAddressList Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddresslist.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoveryreadiness-resourceset.json" + "$ref": "resources/aws-ses-mailmanageraddresslist.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -28962,9 +28960,9 @@ ], "additionalProperties": false }, - "AWS_IoT_TopicRule": { + "AWS_AppRunner_Service": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::TopicRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html)", + "markdownDescription": "The AWS::AppRunner::Service resource specifies an AppRunner Service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-service.html)", "allOf": [ { "type": "object", @@ -28972,14 +28970,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::TopicRule" + "AWS::AppRunner::Service" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::TopicRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html)" + "The AWS::AppRunner::Service resource specifies an AppRunner Service. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-service.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-topicrule.json" + "$ref": "resources/aws-apprunner-service.json" } }, "required": [ @@ -28993,9 +28991,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_RoutingRule": { + "AWS_IoTAnalytics_Dataset": { "type": "object", - "markdownDescription": "Schema for AWS::ApiGatewayV2::RoutingRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routingrule.html)", + "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html)", "allOf": [ { "type": "object", @@ -29003,14 +29001,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::RoutingRule" + "AWS::IoTAnalytics::Dataset" ], "markdownEnumDescriptions": [ - "Schema for AWS::ApiGatewayV2::RoutingRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routingrule.html)" + "Resource Type definition for AWS::IoTAnalytics::Dataset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-dataset.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-routingrule.json" + "$ref": "resources/aws-iotanalytics-dataset.json" } }, "required": [ @@ -29024,9 +29022,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_Membership": { + "AWS_EC2_RouteTable": { "type": "object", - "markdownDescription": "Represents an AWS account that is a part of a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-membership.html)", + "markdownDescription": "Specifies a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.\n For more information, see [Route tables](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html)", "allOf": [ { "type": "object", @@ -29034,14 +29032,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::Membership" + "AWS::EC2::RouteTable" ], "markdownEnumDescriptions": [ - "Represents an AWS account that is a part of a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-membership.html)" + "Specifies a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet.\n For more information, see [Route tables](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-membership.json" + "$ref": "resources/aws-ec2-routetable.json" } }, "required": [ @@ -29055,9 +29053,9 @@ ], "additionalProperties": false }, - "AWS_Lex_BotVersion": { + "AWS_S3Outposts_Bucket": { "type": "object", - "markdownDescription": "A version is a numbered snapshot of your work that you can publish for use in different parts of your workflow, such as development, beta deployment, and production. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botversion.html)", + "markdownDescription": "Resource Type Definition for AWS::S3Outposts::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html)", "allOf": [ { "type": "object", @@ -29065,14 +29063,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lex::BotVersion" + "AWS::S3Outposts::Bucket" ], "markdownEnumDescriptions": [ - "A version is a numbered snapshot of your work that you can publish for use in different parts of your workflow, such as development, beta deployment, and production. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botversion.html)" + "Resource Type Definition for AWS::S3Outposts::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html)" ] }, "Properties": { - "$ref": "resources/aws-lex-botversion.json" + "$ref": "resources/aws-s3outposts-bucket.json" } }, "required": [ @@ -29086,9 +29084,9 @@ ], "additionalProperties": false }, - "AWS_RedshiftServerless_Workgroup": { + "AWS_S3Express_BucketPolicy": { "type": "object", - "markdownDescription": "Definition of AWS::RedshiftServerless::Workgroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html)", + "markdownDescription": "Resource Type definition for AWS::S3Express::BucketPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-bucketpolicy.html)", "allOf": [ { "type": "object", @@ -29096,14 +29094,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RedshiftServerless::Workgroup" + "AWS::S3Express::BucketPolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::RedshiftServerless::Workgroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-workgroup.html)" + "Resource Type definition for AWS::S3Express::BucketPolicy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-bucketpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-redshiftserverless-workgroup.json" + "$ref": "resources/aws-s3express-bucketpolicy.json" } }, "required": [ @@ -29117,9 +29115,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_MessageTemplate": { + "AWS_WAFRegional_GeoMatchSet": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::MessageTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplate.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::GeoMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html)", "allOf": [ { "type": "object", @@ -29127,14 +29125,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::MessageTemplate" + "AWS::WAFRegional::GeoMatchSet" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::MessageTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplate.html)" + "Resource Type definition for AWS::WAFRegional::GeoMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-geomatchset.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-messagetemplate.json" + "$ref": "resources/aws-wafregional-geomatchset.json" } }, "required": [ @@ -29148,9 +29146,9 @@ ], "additionalProperties": false }, - "AWS_Cassandra_Type": { + "AWS_IoTCoreDeviceAdvisor_SuiteDefinition": { "type": "object", - "markdownDescription": "Resource schema for AWS::Cassandra::Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-type.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotcoredeviceadvisor-suitedefinition.html)", "allOf": [ { "type": "object", @@ -29158,14 +29156,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cassandra::Type" + "AWS::IoTCoreDeviceAdvisor::SuiteDefinition" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Cassandra::Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-type.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotcoredeviceadvisor-suitedefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-cassandra-type.json" + "$ref": "resources/aws-iotcoredeviceadvisor-suitedefinition.json" } }, "required": [ @@ -29179,9 +29177,9 @@ ], "additionalProperties": false }, - "AWS_IVS_IngestConfiguration": { + "AWS_NetworkFirewall_LoggingConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::IngestConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-ingestconfiguration.html)", + "markdownDescription": "Resource type definition for AWS::NetworkFirewall::LoggingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html)", "allOf": [ { "type": "object", @@ -29189,18 +29187,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::IngestConfiguration" + "AWS::NetworkFirewall::LoggingConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::IngestConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-ingestconfiguration.html)" + "Resource type definition for AWS::NetworkFirewall::LoggingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-ingestconfiguration.json" + "$ref": "resources/aws-networkfirewall-loggingconfiguration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -29209,9 +29208,9 @@ ], "additionalProperties": false }, - "AWS_PCS_Cluster": { + "AWS_GameLift_Location": { "type": "object", - "markdownDescription": "AWS::PCS::Cluster resource creates an AWS PCS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html)", + "markdownDescription": "The AWS::GameLift::Location resource creates an Amazon GameLift (GameLift) custom location. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-location.html)", "allOf": [ { "type": "object", @@ -29219,14 +29218,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCS::Cluster" + "AWS::GameLift::Location" ], "markdownEnumDescriptions": [ - "AWS::PCS::Cluster resource creates an AWS PCS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html)" + "The AWS::GameLift::Location resource creates an Amazon GameLift (GameLift) custom location. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-location.html)" ] }, "Properties": { - "$ref": "resources/aws-pcs-cluster.json" + "$ref": "resources/aws-gamelift-location.json" } }, "required": [ @@ -29240,9 +29239,9 @@ ], "additionalProperties": false }, - "AWS_Detective_OrganizationAdmin": { + "AWS_ApiGateway_GatewayResponse": { "type": "object", - "markdownDescription": "Resource schema for AWS::Detective::OrganizationAdmin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-organizationadmin.html)", + "markdownDescription": "The ``AWS::ApiGateway::GatewayResponse`` resource creates a gateway response for your API. For more information, see [API Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html#api-gateway-gatewayResponse-definition) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html)", "allOf": [ { "type": "object", @@ -29250,14 +29249,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Detective::OrganizationAdmin" + "AWS::ApiGateway::GatewayResponse" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Detective::OrganizationAdmin \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-organizationadmin.html)" + "The ``AWS::ApiGateway::GatewayResponse`` resource creates a gateway response for your API. For more information, see [API Gateway Responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html#api-gateway-gatewayResponse-definition) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-gatewayresponse.html)" ] }, "Properties": { - "$ref": "resources/aws-detective-organizationadmin.json" + "$ref": "resources/aws-apigateway-gatewayresponse.json" } }, "required": [ @@ -29271,9 +29270,9 @@ ], "additionalProperties": false }, - "AWS_WAFv2_RuleGroup": { + "AWS_SDB_Domain": { "type": "object", - "markdownDescription": "Contains the Rules that identify the requests that you want to allow, block, or count. In a RuleGroup, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a RuleGroup, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the RuleGroup with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a RuleGroup, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html)", + "markdownDescription": "Resource Type definition for AWS::SDB::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sdb-domain.html)", "allOf": [ { "type": "object", @@ -29281,19 +29280,18 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFv2::RuleGroup" + "AWS::SDB::Domain" ], "markdownEnumDescriptions": [ - "Contains the Rules that identify the requests that you want to allow, block, or count. In a RuleGroup, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a RuleGroup, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the RuleGroup with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a RuleGroup, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-rulegroup.html)" + "Resource Type definition for AWS::SDB::Domain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sdb-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-wafv2-rulegroup.json" + "$ref": "resources/aws-sdb-domain.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -29302,9 +29300,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_SourceApiAssociation": { + "AWS_ServiceCatalog_PortfolioProductAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::SourceApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-sourceapiassociation.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::PortfolioProductAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html)", "allOf": [ { "type": "object", @@ -29312,18 +29310,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::SourceApiAssociation" + "AWS::ServiceCatalog::PortfolioProductAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::SourceApiAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-sourceapiassociation.html)" + "Resource Type definition for AWS::ServiceCatalog::PortfolioProductAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioproductassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-sourceapiassociation.json" + "$ref": "resources/aws-servicecatalog-portfolioproductassociation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -29332,9 +29331,9 @@ ], "additionalProperties": false }, - "AWS_IoT_FleetMetric": { + "AWS_NetworkManager_VpcAttachment": { "type": "object", - "markdownDescription": "An aggregated metric of certain devices in your fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html)", + "markdownDescription": "AWS::NetworkManager::VpcAttachment Resoruce Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-vpcattachment.html)", "allOf": [ { "type": "object", @@ -29342,14 +29341,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::FleetMetric" + "AWS::NetworkManager::VpcAttachment" ], "markdownEnumDescriptions": [ - "An aggregated metric of certain devices in your fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-fleetmetric.html)" + "AWS::NetworkManager::VpcAttachment Resoruce Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-vpcattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-fleetmetric.json" + "$ref": "resources/aws-networkmanager-vpcattachment.json" } }, "required": [ @@ -29363,9 +29362,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_LaunchRoleConstraint": { + "AWS_EC2_SecurityGroupEgress": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::LaunchRoleConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html)", + "markdownDescription": "Adds the specified outbound (egress) rule to a security group.\n An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 address range, the IP addresses that are specified by a prefix list, or the instances that are associated with a destination security group. For more information, see [Security group rules](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html).\n You must specify exactly one of the following destinations: an IPv4 address range, an IPv6 address range, a prefix list, or a security group.\n You must specify a protocol for each rule (for example, TCP). If the protocol is TCP or UDP, you must also specify a port or port range. If the protocol is ICMP or ICMPv6, you must also specify the ICMP/ICMPv6 type and code. To specify all types or all codes, use -1.\n Rule changes are propagated to instances associated with the security group as quickly as possible. However, a small delay might occur. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupegress.html)", "allOf": [ { "type": "object", @@ -29373,14 +29372,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::LaunchRoleConstraint" + "AWS::EC2::SecurityGroupEgress" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::LaunchRoleConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchroleconstraint.html)" + "Adds the specified outbound (egress) rule to a security group.\n An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 address range, the IP addresses that are specified by a prefix list, or the instances that are associated with a destination security group. For more information, see [Security group rules](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html).\n You must specify exactly one of the following destinations: an IPv4 address range, an IPv6 address range, a prefix list, or a security group.\n You must specify a protocol for each rule (for example, TCP). If the protocol is TCP or UDP, you must also specify a port or port range. If the protocol is ICMP or ICMPv6, you must also specify the ICMP/ICMPv6 type and code. To specify all types or all codes, use -1.\n Rule changes are propagated to instances associated with the security group as quickly as possible. However, a small delay might occur. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupegress.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-launchroleconstraint.json" + "$ref": "resources/aws-ec2-securitygroupegress.json" } }, "required": [ @@ -29394,9 +29393,9 @@ ], "additionalProperties": false }, - "AWS_ACMPCA_Permission": { + "AWS_CodeStarConnections_RepositoryLink": { "type": "object", - "markdownDescription": "Permission set on private certificate authority \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-permission.html)", + "markdownDescription": "Schema for AWS::CodeStarConnections::RepositoryLink resource which is used to aggregate repository metadata relevant to synchronizing source provider content to AWS Resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-repositorylink.html)", "allOf": [ { "type": "object", @@ -29404,14 +29403,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ACMPCA::Permission" + "AWS::CodeStarConnections::RepositoryLink" ], "markdownEnumDescriptions": [ - "Permission set on private certificate authority \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-permission.html)" + "Schema for AWS::CodeStarConnections::RepositoryLink resource which is used to aggregate repository metadata relevant to synchronizing source provider content to AWS Resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-repositorylink.html)" ] }, "Properties": { - "$ref": "resources/aws-acmpca-permission.json" + "$ref": "resources/aws-codestarconnections-repositorylink.json" } }, "required": [ @@ -29425,9 +29424,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Database": { + "AWS_ECS_TaskDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-database.html)", + "markdownDescription": "Registers a new task definition from the supplied ``family`` and ``containerDefinitions``. Optionally, you can add data volumes to your containers with the ``volumes`` parameter. For more information about task definition parameters and defaults, see [Amazon ECS Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a role for your task with the ``taskRoleArn`` parameter. When you specify a role for a task, its containers can then use the latest versions of the CLI or SDKs to make API requests to the AWS services that are specified in the policy that's associated with the role. For more information, see [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a Docker networking mode for the containers in your task definition with the ``networkMode`` parameter. If you specify the ``awsvpc`` network mode, the task is allocated an elastic network interface, and you must specify a [NetworkConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html) when you create a service or run a task with the task definition. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*.\n In the following example or examples, the Authorization header contents (``AUTHPARAMS``) must be replaced with an AWS Signature Version 4 signature. For more information, see [Signature Version 4 Signing Process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) in the *General Reference*.\n You only need to learn how to sign HTTP requests if you intend to create them manually. When you use the [](https://docs.aws.amazon.com/cli/) or one of the [SDKs](https://docs.aws.amazon.com/tools/) to make requests to AWS, these tools automatically sign the requests for you, with the access key that you specify when you configure the tools. When you use these tools, you don't have to sign requests yourself. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html)", "allOf": [ { "type": "object", @@ -29435,19 +29434,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Database" + "AWS::ECS::TaskDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-database.html)" + "Registers a new task definition from the supplied ``family`` and ``containerDefinitions``. Optionally, you can add data volumes to your containers with the ``volumes`` parameter. For more information about task definition parameters and defaults, see [Amazon ECS Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a role for your task with the ``taskRoleArn`` parameter. When you specify a role for a task, its containers can then use the latest versions of the CLI or SDKs to make API requests to the AWS services that are specified in the policy that's associated with the role. For more information, see [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a Docker networking mode for the containers in your task definition with the ``networkMode`` parameter. If you specify the ``awsvpc`` network mode, the task is allocated an elastic network interface, and you must specify a [NetworkConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html) when you create a service or run a task with the task definition. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*.\n In the following example or examples, the Authorization header contents (``AUTHPARAMS``) must be replaced with an AWS Signature Version 4 signature. For more information, see [Signature Version 4 Signing Process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) in the *General Reference*.\n You only need to learn how to sign HTTP requests if you intend to create them manually. When you use the [](https://docs.aws.amazon.com/cli/) or one of the [SDKs](https://docs.aws.amazon.com/tools/) to make requests to AWS, these tools automatically sign the requests for you, with the access key that you specify when you configure the tools. When you use these tools, you don't have to sign requests yourself. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-database.json" + "$ref": "resources/aws-ecs-taskdefinition.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -29456,9 +29454,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Image": { + "AWS_ServiceCatalog_LaunchTemplateConstraint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::LaunchTemplateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html)", "allOf": [ { "type": "object", @@ -29466,14 +29464,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Image" + "AWS::ServiceCatalog::LaunchTemplateConstraint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Image \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-image.html)" + "Resource Type definition for AWS::ServiceCatalog::LaunchTemplateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchtemplateconstraint.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-image.json" + "$ref": "resources/aws-servicecatalog-launchtemplateconstraint.json" } }, "required": [ @@ -29487,9 +29485,9 @@ ], "additionalProperties": false }, - "AWS_EC2_Volume": { + "AWS_EC2_TransitGatewayMulticastDomain": { "type": "object", - "markdownDescription": "Specifies an Amazon Elastic Block Store (Amazon EBS) volume.\n When you use CFNlong to update an Amazon EBS volume that modifies ``Iops``, ``Size``, or ``VolumeType``, there is a cooldown period before another operation can occur. This can cause your stack to report being in ``UPDATE_IN_PROGRESS`` or ``UPDATE_ROLLBACK_IN_PROGRESS`` for long periods of time.\n Amazon EBS does not support sizing down an Amazon EBS volume. CFNlong does not attempt to modify an Amazon EBS volume to a smaller size on rollback.\n Some common scenarios when you might encounter a cooldown period for Amazon EBS include:\n + You successfully update an Amazon EBS volume and the update succeeds. When you attempt another update within the cooldown window, that update will be subject to a cooldown period.\n + You successfully update an Amazon EBS volume and the update succeeds but another change in your ``update-stack`` call fails. The rollback will be subject to a cooldown period.\n \n For more information, see [Requirements for EBS volume modifications](https://docs.aws.amazon.com/ebs/latest/userguide/modify-volume-requirements.html).\n *DeletionPolicy attribute* \n To control how CFNlong handles the volume when the stack is deleted, set a deletion policy for your volume. You can choose to retain the volume, to delete the volume, or to create a snapshot of the volume. For more information, see [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n If you set a deletion policy that creates a snapshot, all tags on the volume are included in the snapshot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html)", + "markdownDescription": "The AWS::EC2::TransitGatewayMulticastDomain type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html)", "allOf": [ { "type": "object", @@ -29497,14 +29495,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::Volume" + "AWS::EC2::TransitGatewayMulticastDomain" ], "markdownEnumDescriptions": [ - "Specifies an Amazon Elastic Block Store (Amazon EBS) volume.\n When you use CFNlong to update an Amazon EBS volume that modifies ``Iops``, ``Size``, or ``VolumeType``, there is a cooldown period before another operation can occur. This can cause your stack to report being in ``UPDATE_IN_PROGRESS`` or ``UPDATE_ROLLBACK_IN_PROGRESS`` for long periods of time.\n Amazon EBS does not support sizing down an Amazon EBS volume. CFNlong does not attempt to modify an Amazon EBS volume to a smaller size on rollback.\n Some common scenarios when you might encounter a cooldown period for Amazon EBS include:\n + You successfully update an Amazon EBS volume and the update succeeds. When you attempt another update within the cooldown window, that update will be subject to a cooldown period.\n + You successfully update an Amazon EBS volume and the update succeeds but another change in your ``update-stack`` call fails. The rollback will be subject to a cooldown period.\n \n For more information, see [Requirements for EBS volume modifications](https://docs.aws.amazon.com/ebs/latest/userguide/modify-volume-requirements.html).\n *DeletionPolicy attribute* \n To control how CFNlong handles the volume when the stack is deleted, set a deletion policy for your volume. You can choose to retain the volume, to delete the volume, or to create a snapshot of the volume. For more information, see [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n If you set a deletion policy that creates a snapshot, all tags on the volume are included in the snapshot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html)" + "The AWS::EC2::TransitGatewayMulticastDomain type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-volume.json" + "$ref": "resources/aws-ec2-transitgatewaymulticastdomain.json" } }, "required": [ @@ -29518,9 +29516,9 @@ ], "additionalProperties": false }, - "AWS_SecretsManager_RotationSchedule": { + "AWS_Greengrass_DeviceDefinitionVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SecretsManager::RotationSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::DeviceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html)", "allOf": [ { "type": "object", @@ -29528,14 +29526,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecretsManager::RotationSchedule" + "AWS::Greengrass::DeviceDefinitionVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SecretsManager::RotationSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-rotationschedule.html)" + "Resource Type definition for AWS::Greengrass::DeviceDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinitionversion.html)" ] }, "Properties": { - "$ref": "resources/aws-secretsmanager-rotationschedule.json" + "$ref": "resources/aws-greengrass-devicedefinitionversion.json" } }, "required": [ @@ -29549,9 +29547,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_PushTemplate": { + "AWS_RedshiftServerless_Namespace": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::PushTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-pushtemplate.html)", + "markdownDescription": "Definition of AWS::RedshiftServerless::Namespace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-namespace.html)", "allOf": [ { "type": "object", @@ -29559,14 +29557,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::PushTemplate" + "AWS::RedshiftServerless::Namespace" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::PushTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-pushtemplate.html)" + "Definition of AWS::RedshiftServerless::Namespace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshiftserverless-namespace.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-pushtemplate.json" + "$ref": "resources/aws-redshiftserverless-namespace.json" } }, "required": [ @@ -29580,9 +29578,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_DomainName": { + "AWS_FSx_FileSystem": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::DomainName \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)", + "markdownDescription": "Resource Type definition for AWS::FSx::FileSystem \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html)", "allOf": [ { "type": "object", @@ -29590,14 +29588,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::DomainName" + "AWS::FSx::FileSystem" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::DomainName \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html)" + "Resource Type definition for AWS::FSx::FileSystem \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-domainname.json" + "$ref": "resources/aws-fsx-filesystem.json" } }, "required": [ @@ -29611,9 +29609,9 @@ ], "additionalProperties": false }, - "AWS_KendraRanking_ExecutionPlan": { + "AWS_Redshift_ClusterSecurityGroupIngress": { "type": "object", - "markdownDescription": "A KendraRanking Rescore execution plan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendraranking-executionplan.html)", + "markdownDescription": "Resource Type definition for AWS::Redshift::ClusterSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html)", "allOf": [ { "type": "object", @@ -29621,14 +29619,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KendraRanking::ExecutionPlan" + "AWS::Redshift::ClusterSecurityGroupIngress" ], "markdownEnumDescriptions": [ - "A KendraRanking Rescore execution plan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendraranking-executionplan.html)" + "Resource Type definition for AWS::Redshift::ClusterSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html)" ] }, "Properties": { - "$ref": "resources/aws-kendraranking-executionplan.json" + "$ref": "resources/aws-redshift-clustersecuritygroupingress.json" } }, "required": [ @@ -29642,9 +29640,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SecurityGroup": { + "AWS_CodeConnections_Connection": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroup.html)", + "markdownDescription": "Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeconnections-connection.html)", "allOf": [ { "type": "object", @@ -29652,14 +29650,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SecurityGroup" + "AWS::CodeConnections::Connection" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroup.html)" + "Schema for AWS::CodeConnections::Connection resource which can be used to connect external source providers with other AWS services (i.e. AWS CodePipeline) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeconnections-connection.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-securitygroup.json" + "$ref": "resources/aws-codeconnections-connection.json" } }, "required": [ @@ -29673,9 +29671,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryControl_Cluster": { + "AWS_Transfer_Connector": { "type": "object", - "markdownDescription": "AWS Route53 Recovery Control Cluster resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-cluster.html)", + "markdownDescription": "Resource Type definition for AWS::Transfer::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html)", "allOf": [ { "type": "object", @@ -29683,14 +29681,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryControl::Cluster" + "AWS::Transfer::Connector" ], "markdownEnumDescriptions": [ - "AWS Route53 Recovery Control Cluster resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-cluster.html)" + "Resource Type definition for AWS::Transfer::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-connector.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoverycontrol-cluster.json" + "$ref": "resources/aws-transfer-connector.json" } }, "required": [ @@ -29704,9 +29702,9 @@ ], "additionalProperties": false }, - "AWS_ElasticBeanstalk_Environment": { + "AWS_DataZone_GroupProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElasticBeanstalk::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html)", + "markdownDescription": "Group profiles represent groups of Amazon DataZone users. Groups can be manually created, or mapped to Active Directory groups of enterprise customers. In Amazon DataZone, groups serve two purposes. First, a group can map to a team of users in the organizational chart, and thus reduce the administrative work of a Amazon DataZone project owner when there are new employees joining or leaving a team. Second, corporate administrators use Active Directory groups to manage and update user statuses and so Amazon DataZone domain administrators can use these group memberships to implement Amazon DataZone domain policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html)", "allOf": [ { "type": "object", @@ -29714,14 +29712,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticBeanstalk::Environment" + "AWS::DataZone::GroupProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElasticBeanstalk::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html)" + "Group profiles represent groups of Amazon DataZone users. Groups can be manually created, or mapped to Active Directory groups of enterprise customers. In Amazon DataZone, groups serve two purposes. First, a group can map to a team of users in the organizational chart, and thus reduce the administrative work of a Amazon DataZone project owner when there are new employees joining or leaving a team. Second, corporate administrators use Active Directory groups to manage and update user statuses and so Amazon DataZone domain administrators can use these group memberships to implement Amazon DataZone domain policies. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-groupprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticbeanstalk-environment.json" + "$ref": "resources/aws-datazone-groupprofile.json" } }, "required": [ @@ -29735,9 +29733,9 @@ ], "additionalProperties": false }, - "AWS_StepFunctions_StateMachineVersion": { + "AWS_MediaConvert_Queue": { "type": "object", - "markdownDescription": "Resource schema for StateMachineVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html)", + "markdownDescription": "Resource Type definition for AWS::MediaConvert::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html)", "allOf": [ { "type": "object", @@ -29745,19 +29743,18 @@ "Type": { "type": "string", "enum": [ - "AWS::StepFunctions::StateMachineVersion" + "AWS::MediaConvert::Queue" ], "markdownEnumDescriptions": [ - "Resource schema for StateMachineVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html)" + "Resource Type definition for AWS::MediaConvert::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html)" ] }, "Properties": { - "$ref": "resources/aws-stepfunctions-statemachineversion.json" + "$ref": "resources/aws-mediaconvert-queue.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -29766,9 +29763,9 @@ ], "additionalProperties": false }, - "AWS_IoTEvents_DetectorModel": { + "AWS_WorkspacesInstances_WorkspaceInstance": { "type": "object", - "markdownDescription": "The AWS::IoTEvents::DetectorModel resource creates a detector model. You create a *detector model* (a model of your equipment or process) using *states*. For each state, you define conditional (Boolean) logic that evaluates the incoming inputs to detect significant events. When an event is detected, it can change the state or trigger custom-built or predefined actions using other AWS services. You can define additional events that trigger actions when entering or exiting a state and, optionally, when a condition is met. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*.\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) all detector instances created by the model are reset to their initial states. (The detector's ``state``, and the values of any variables and timers are reset.)\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) the version number of the detector model is incremented. (A detector model with version number 1 before the update has version number 2 after the update succeeds.)\n If you attempt to update a detector model using CFN and the update does not succeed, the system may, in some cases, restore the original detector model. When this occurs, the detector model's version is incremented twice (for example, from version 1 to version 3) and the detector instances are reset.\n Also, be aware that if you attempt to update several detector models at once using CFN, some updates may succeed and others fail. In this case, the effects on each detector model's detector instances and version number depend on whether the update succeeded or failed, with the results as stated. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html)", + "markdownDescription": "Resource Type definition for AWS::WorkspacesInstances::WorkspaceInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-workspaceinstance.html)", "allOf": [ { "type": "object", @@ -29776,19 +29773,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTEvents::DetectorModel" + "AWS::WorkspacesInstances::WorkspaceInstance" ], "markdownEnumDescriptions": [ - "The AWS::IoTEvents::DetectorModel resource creates a detector model. You create a *detector model* (a model of your equipment or process) using *states*. For each state, you define conditional (Boolean) logic that evaluates the incoming inputs to detect significant events. When an event is detected, it can change the state or trigger custom-built or predefined actions using other AWS services. You can define additional events that trigger actions when entering or exiting a state and, optionally, when a condition is met. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*.\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) all detector instances created by the model are reset to their initial states. (The detector's ``state``, and the values of any variables and timers are reset.)\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) the version number of the detector model is incremented. (A detector model with version number 1 before the update has version number 2 after the update succeeds.)\n If you attempt to update a detector model using CFN and the update does not succeed, the system may, in some cases, restore the original detector model. When this occurs, the detector model's version is incremented twice (for example, from version 1 to version 3) and the detector instances are reset.\n Also, be aware that if you attempt to update several detector models at once using CFN, some updates may succeed and others fail. In this case, the effects on each detector model's detector instances and version number depend on whether the update succeeded or failed, with the results as stated. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html)" + "Resource Type definition for AWS::WorkspacesInstances::WorkspaceInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesinstances-workspaceinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-iotevents-detectormodel.json" + "$ref": "resources/aws-workspacesinstances-workspaceinstance.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -29797,9 +29793,9 @@ ], "additionalProperties": false }, - "AWS_Athena_PreparedStatement": { + "AWS_SES_DedicatedIpPool": { "type": "object", - "markdownDescription": "Resource schema for AWS::Athena::PreparedStatement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-preparedstatement.html)", + "markdownDescription": "Resource Type definition for AWS::SES::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html)", "allOf": [ { "type": "object", @@ -29807,19 +29803,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Athena::PreparedStatement" + "AWS::SES::DedicatedIpPool" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Athena::PreparedStatement \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-preparedstatement.html)" + "Resource Type definition for AWS::SES::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html)" ] }, "Properties": { - "$ref": "resources/aws-athena-preparedstatement.json" + "$ref": "resources/aws-ses-dedicatedippool.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -29828,9 +29823,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_LayerVersion": { + "AWS_SSO_Instance": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lambda::LayerVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html)", + "markdownDescription": "Resource Type definition for Identity Center (SSO) Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instance.html)", "allOf": [ { "type": "object", @@ -29838,19 +29833,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::LayerVersion" + "AWS::SSO::Instance" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lambda::LayerVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html)" + "Resource Type definition for Identity Center (SSO) Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-instance.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-layerversion.json" + "$ref": "resources/aws-sso-instance.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -29859,9 +29853,9 @@ ], "additionalProperties": false }, - "AWS_RDS_EventSubscription": { + "AWS_IAM_Policy": { "type": "object", - "markdownDescription": "The ``AWS::RDS::EventSubscription`` resource allows you to receive notifications for Amazon Relational Database Service events through the Amazon Simple Notification Service (Amazon SNS). For more information, see [Using Amazon RDS Event Notification](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html)", + "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM group, user or role.\n An IAM user can also have a managed policy attached to it. For information about policies, see [Managed Policies and Inline Policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *User Guide*.\n The Groups, Roles, and Users properties are optional. However, you must specify at least one of these properties.\n For information about policy documents see [Creating policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) in the *User Guide*.\n For information about limits on the number of inline policies that you can embed in an identity, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*.\n This resource does not support [drift detection](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html). The following inline policy resource types support drift detection:\n + [AWS::IAM::GroupPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html) \n + [AWS::IAM::RolePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html) \n + [AWS::IAM::UserPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)", "allOf": [ { "type": "object", @@ -29869,14 +29863,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::EventSubscription" + "AWS::IAM::Policy" ], "markdownEnumDescriptions": [ - "The ``AWS::RDS::EventSubscription`` resource allows you to receive notifications for Amazon Relational Database Service events through the Amazon Simple Notification Service (Amazon SNS). For more information, see [Using Amazon RDS Event Notification](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Events.html) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html)" + "Adds or updates an inline policy document that is embedded in the specified IAM group, user or role.\n An IAM user can also have a managed policy attached to it. For information about policies, see [Managed Policies and Inline Policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *User Guide*.\n The Groups, Roles, and Users properties are optional. However, you must specify at least one of these properties.\n For information about policy documents see [Creating policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) in the *User Guide*.\n For information about limits on the number of inline policies that you can embed in an identity, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*.\n This resource does not support [drift detection](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html). The following inline policy resource types support drift detection:\n + [AWS::IAM::GroupPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html) \n + [AWS::IAM::RolePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html) \n + [AWS::IAM::UserPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-eventsubscription.json" + "$ref": "resources/aws-iam-policy.json" } }, "required": [ @@ -29890,9 +29884,9 @@ ], "additionalProperties": false }, - "AWS_B2BI_Transformer": { + "AWS_EventSchemas_RegistryPolicy": { "type": "object", - "markdownDescription": "Definition of AWS::B2BI::Transformer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-transformer.html)", + "markdownDescription": "Resource Type definition for AWS::EventSchemas::RegistryPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html)", "allOf": [ { "type": "object", @@ -29900,14 +29894,14 @@ "Type": { "type": "string", "enum": [ - "AWS::B2BI::Transformer" + "AWS::EventSchemas::RegistryPolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::B2BI::Transformer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-transformer.html)" + "Resource Type definition for AWS::EventSchemas::RegistryPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registrypolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-b2bi-transformer.json" + "$ref": "resources/aws-eventschemas-registrypolicy.json" } }, "required": [ @@ -29921,9 +29915,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolClient": { + "AWS_EC2_ClientVpnEndpoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolClient \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html)", "allOf": [ { "type": "object", @@ -29931,14 +29925,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolClient" + "AWS::EC2::ClientVpnEndpoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolClient \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html)" + "Resource Type definition for AWS::EC2::ClientVpnEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpoolclient.json" + "$ref": "resources/aws-ec2-clientvpnendpoint.json" } }, "required": [ @@ -29952,9 +29946,9 @@ ], "additionalProperties": false }, - "AWS_CloudTrail_Trail": { + "AWS_GuardDuty_Member": { "type": "object", - "markdownDescription": "Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket. A maximum of five trails can exist in a region, irrespective of the region in which they were created. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html)", + "markdownDescription": "Resource Type definition for AWS::GuardDuty::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html)", "allOf": [ { "type": "object", @@ -29962,14 +29956,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudTrail::Trail" + "AWS::GuardDuty::Member" ], "markdownEnumDescriptions": [ - "Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket. A maximum of five trails can exist in a region, irrespective of the region in which they were created. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html)" + "Resource Type definition for AWS::GuardDuty::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-member.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudtrail-trail.json" + "$ref": "resources/aws-guardduty-member.json" } }, "required": [ @@ -29983,9 +29977,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_NetworkSettings": { + "AWS_NetworkManager_ConnectPeer": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::NetworkSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-networksettings.html)", + "markdownDescription": "AWS::NetworkManager::ConnectPeer Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectpeer.html)", "allOf": [ { "type": "object", @@ -29993,14 +29987,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::NetworkSettings" + "AWS::NetworkManager::ConnectPeer" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::NetworkSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-networksettings.html)" + "AWS::NetworkManager::ConnectPeer Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectpeer.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-networksettings.json" + "$ref": "resources/aws-networkmanager-connectpeer.json" } }, "required": [ @@ -30014,9 +30008,9 @@ ], "additionalProperties": false }, - "AWS_EC2_ClientVpnAuthorizationRule": { + "AWS_Route53Resolver_ResolverDNSSECConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnAuthorizationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::ResolverDNSSECConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverdnssecconfig.html)", "allOf": [ { "type": "object", @@ -30024,19 +30018,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::ClientVpnAuthorizationRule" + "AWS::Route53Resolver::ResolverDNSSECConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::ClientVpnAuthorizationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnauthorizationrule.html)" + "Resource schema for AWS::Route53Resolver::ResolverDNSSECConfig. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverdnssecconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-clientvpnauthorizationrule.json" + "$ref": "resources/aws-route53resolver-resolverdnssecconfig.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -30045,9 +30038,9 @@ ], "additionalProperties": false }, - "AWS_SES_Template": { + "AWS_BillingConductor_PricingPlan": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::Template \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html)", + "markdownDescription": "Pricing Plan enables you to customize your billing details consistent with the usage that accrues in each of your billing groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html)", "allOf": [ { "type": "object", @@ -30055,18 +30048,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::Template" + "AWS::BillingConductor::PricingPlan" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::Template \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html)" + "Pricing Plan enables you to customize your billing details consistent with the usage that accrues in each of your billing groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-template.json" + "$ref": "resources/aws-billingconductor-pricingplan.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -30075,9 +30069,9 @@ ], "additionalProperties": false }, - "AWS_ARCZonalShift_ZonalAutoshiftConfiguration": { + "AWS_EC2_SubnetCidrBlock": { "type": "object", - "markdownDescription": "Definition of AWS::ARCZonalShift::ZonalAutoshiftConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-zonalautoshiftconfiguration.html)", + "markdownDescription": "The AWS::EC2::SubnetCidrBlock resource creates association between subnet and IPv6 CIDR \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html)", "allOf": [ { "type": "object", @@ -30085,18 +30079,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ARCZonalShift::ZonalAutoshiftConfiguration" + "AWS::EC2::SubnetCidrBlock" ], "markdownEnumDescriptions": [ - "Definition of AWS::ARCZonalShift::ZonalAutoshiftConfiguration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-arczonalshift-zonalautoshiftconfiguration.html)" + "The AWS::EC2::SubnetCidrBlock resource creates association between subnet and IPv6 CIDR \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html)" ] }, "Properties": { - "$ref": "resources/aws-arczonalshift-zonalautoshiftconfiguration.json" + "$ref": "resources/aws-ec2-subnetcidrblock.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -30105,9 +30100,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_BridgeSource": { + "AWS_SageMaker_ImageVersion": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::BridgeSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgesource.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ImageVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-imageversion.html)", "allOf": [ { "type": "object", @@ -30115,14 +30110,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::BridgeSource" + "AWS::SageMaker::ImageVersion" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::BridgeSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgesource.html)" + "Resource Type definition for AWS::SageMaker::ImageVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-imageversion.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-bridgesource.json" + "$ref": "resources/aws-sagemaker-imageversion.json" } }, "required": [ @@ -30136,9 +30131,9 @@ ], "additionalProperties": false }, - "AWS_EC2_CapacityReservation": { + "AWS_Route53Profiles_Profile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html)", + "markdownDescription": "Resource Type definition for AWS::Route53Profiles::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profile.html)", "allOf": [ { "type": "object", @@ -30146,14 +30141,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::CapacityReservation" + "AWS::Route53Profiles::Profile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservation.html)" + "Resource Type definition for AWS::Route53Profiles::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profile.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-capacityreservation.json" + "$ref": "resources/aws-route53profiles-profile.json" } }, "required": [ @@ -30167,9 +30162,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_CoreNetwork": { + "AWS_ElasticBeanstalk_ConfigurationTemplate": { "type": "object", - "markdownDescription": "AWS::NetworkManager::CoreNetwork Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-corenetwork.html)", + "markdownDescription": "Resource Type definition for AWS::ElasticBeanstalk::ConfigurationTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html)", "allOf": [ { "type": "object", @@ -30177,14 +30172,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::CoreNetwork" + "AWS::ElasticBeanstalk::ConfigurationTemplate" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::CoreNetwork Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-corenetwork.html)" + "Resource Type definition for AWS::ElasticBeanstalk::ConfigurationTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-configurationtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-corenetwork.json" + "$ref": "resources/aws-elasticbeanstalk-configurationtemplate.json" } }, "required": [ @@ -30229,40 +30224,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerAddonSubscription": { - "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerAddonSubscription Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddonsubscription.html)", - "allOf": [ - { - "type": "object", - "properties": { - "Type": { - "type": "string", - "enum": [ - "AWS::SES::MailManagerAddonSubscription" - ], - "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerAddonSubscription Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddonsubscription.html)" - ] - }, - "Properties": { - "$ref": "resources/aws-ses-mailmanageraddonsubscription.json" - } - }, - "required": [ - "Type", - "Properties" - ] - }, - { - "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" - } - ], - "additionalProperties": false - }, - "AWS_EC2_SecurityGroupIngress": { + "AWS_AutoScalingPlans_ScalingPlan": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupingress.html)", + "markdownDescription": "Resource Type definition for AWS::AutoScalingPlans::ScalingPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html)", "allOf": [ { "type": "object", @@ -30270,14 +30234,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SecurityGroupIngress" + "AWS::AutoScalingPlans::ScalingPlan" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupingress.html)" + "Resource Type definition for AWS::AutoScalingPlans::ScalingPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-securitygroupingress.json" + "$ref": "resources/aws-autoscalingplans-scalingplan.json" } }, "required": [ @@ -30291,9 +30255,9 @@ ], "additionalProperties": false }, - "AWS_EMRServerless_Application": { + "AWS_CleanRoomsML_TrainingDataset": { "type": "object", - "markdownDescription": "Resource schema for AWS::EMRServerless::Application Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrserverless-application.html)", + "markdownDescription": "Definition of AWS::CleanRoomsML::TrainingDataset Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanroomsml-trainingdataset.html)", "allOf": [ { "type": "object", @@ -30301,14 +30265,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EMRServerless::Application" + "AWS::CleanRoomsML::TrainingDataset" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EMRServerless::Application Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrserverless-application.html)" + "Definition of AWS::CleanRoomsML::TrainingDataset Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanroomsml-trainingdataset.html)" ] }, "Properties": { - "$ref": "resources/aws-emrserverless-application.json" + "$ref": "resources/aws-cleanroomsml-trainingdataset.json" } }, "required": [ @@ -30322,9 +30286,9 @@ ], "additionalProperties": false }, - "AWS_ElasticBeanstalk_ApplicationVersion": { + "AWS_DMS_ReplicationConfig": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElasticBeanstalk::ApplicationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-applicationversion.html)", + "markdownDescription": "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationconfig.html)", "allOf": [ { "type": "object", @@ -30332,14 +30296,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticBeanstalk::ApplicationVersion" + "AWS::DMS::ReplicationConfig" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElasticBeanstalk::ApplicationVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-applicationversion.html)" + "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticbeanstalk-applicationversion.json" + "$ref": "resources/aws-dms-replicationconfig.json" } }, "required": [ @@ -30353,9 +30317,9 @@ ], "additionalProperties": false }, - "AWS_S3_Bucket": { + "AWS_ApiGateway_DomainName": { "type": "object", - "markdownDescription": "The ``AWS::S3::Bucket`` resource creates an Amazon S3 bucket in the same AWS Region where you create the AWS CloudFormation stack.\n To control how AWS CloudFormation handles the bucket when the stack is deleted, you can set a deletion policy for your bucket. You can choose to *retain* the bucket or to *delete* the bucket. For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n You can only delete empty buckets. Deletion fails for buckets that have contents. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html)", + "markdownDescription": "The ``AWS::ApiGateway::DomainName`` resource specifies a custom domain name for your API in API Gateway.\n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html)", "allOf": [ { "type": "object", @@ -30363,14 +30327,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::Bucket" + "AWS::ApiGateway::DomainName" ], "markdownEnumDescriptions": [ - "The ``AWS::S3::Bucket`` resource creates an Amazon S3 bucket in the same AWS Region where you create the AWS CloudFormation stack.\n To control how AWS CloudFormation handles the bucket when the stack is deleted, you can set a deletion policy for your bucket. You can choose to *retain* the bucket or to *delete* the bucket. For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n You can only delete empty buckets. Deletion fails for buckets that have contents. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html)" + "The ``AWS::ApiGateway::DomainName`` resource specifies a custom domain name for your API in API Gateway.\n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-bucket.json" + "$ref": "resources/aws-apigateway-domainname.json" } }, "required": [ @@ -30383,9 +30347,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolUserToGroupAttachment": { + "AWS_CloudFront_PublicKey": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolUserToGroupAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html)", + "markdownDescription": "A public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html)", "allOf": [ { "type": "object", @@ -30393,14 +30357,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolUserToGroupAttachment" + "AWS::CloudFront::PublicKey" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolUserToGroupAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html)" + "A public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpoolusertogroupattachment.json" + "$ref": "resources/aws-cloudfront-publickey.json" } }, "required": [ @@ -30414,9 +30378,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Crawler": { + "AWS_FraudDetector_List": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Crawler \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html)", + "markdownDescription": "A resource schema for a List in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-list.html)", "allOf": [ { "type": "object", @@ -30424,14 +30388,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Crawler" + "AWS::FraudDetector::List" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Crawler \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-crawler.html)" + "A resource schema for a List in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-list.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-crawler.json" + "$ref": "resources/aws-frauddetector-list.json" } }, "required": [ @@ -30445,9 +30409,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_EventBridgeRuleTemplate": { + "AWS_RDS_GlobalCluster": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::EventBridgeRuleTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplate.html)", + "markdownDescription": "Resource Type definition for AWS::RDS::GlobalCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html)", "allOf": [ { "type": "object", @@ -30455,19 +30419,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::EventBridgeRuleTemplate" + "AWS::RDS::GlobalCluster" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::EventBridgeRuleTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplate.html)" + "Resource Type definition for AWS::RDS::GlobalCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-eventbridgeruletemplate.json" + "$ref": "resources/aws-rds-globalcluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -30476,9 +30439,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_LaunchNotificationConstraint": { + "AWS_Backup_BackupSelection": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::LaunchNotificationConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html)", + "markdownDescription": "Resource Type definition for AWS::Backup::BackupSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html)", "allOf": [ { "type": "object", @@ -30486,14 +30449,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::LaunchNotificationConstraint" + "AWS::Backup::BackupSelection" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::LaunchNotificationConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-launchnotificationconstraint.html)" + "Resource Type definition for AWS::Backup::BackupSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-launchnotificationconstraint.json" + "$ref": "resources/aws-backup-backupselection.json" } }, "required": [ @@ -30507,9 +30470,9 @@ ], "additionalProperties": false }, - "AWS_Omics_WorkflowVersion": { + "AWS_EC2_RouteServerPropagation": { "type": "object", - "markdownDescription": "Definition of AWS::Omics::WorkflowVersion Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html)", + "markdownDescription": "VPC Route Server Propagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html)", "allOf": [ { "type": "object", @@ -30517,14 +30480,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Omics::WorkflowVersion" + "AWS::EC2::RouteServerPropagation" ], "markdownEnumDescriptions": [ - "Definition of AWS::Omics::WorkflowVersion Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html)" + "VPC Route Server Propagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html)" ] }, "Properties": { - "$ref": "resources/aws-omics-workflowversion.json" + "$ref": "resources/aws-ec2-routeserverpropagation.json" } }, "required": [ @@ -30538,9 +30501,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_EmailChannel": { + "AWS_Bedrock_PromptVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::EmailChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html)", + "markdownDescription": "Definition of AWS::Bedrock::PromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-promptversion.html)", "allOf": [ { "type": "object", @@ -30548,14 +30511,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::EmailChannel" + "AWS::Bedrock::PromptVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::EmailChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-emailchannel.html)" + "Definition of AWS::Bedrock::PromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-promptversion.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-emailchannel.json" + "$ref": "resources/aws-bedrock-promptversion.json" } }, "required": [ @@ -30569,9 +30532,9 @@ ], "additionalProperties": false }, - "AWS_IAM_RolePolicy": { + "AWS_AccessAnalyzer_Analyzer": { "type": "object", - "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM role.\n When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html). You can update a role's trust policy using [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html). For information about roles, see [roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) in the *IAM User Guide*.\n A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed with a role, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html)", + "markdownDescription": "The AWS::AccessAnalyzer::Analyzer type specifies an analyzer of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html)", "allOf": [ { "type": "object", @@ -30579,14 +30542,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::RolePolicy" + "AWS::AccessAnalyzer::Analyzer" ], "markdownEnumDescriptions": [ - "Adds or updates an inline policy document that is embedded in the specified IAM role.\n When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using [CreateRole](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html). You can update a role's trust policy using [UpdateAssumeRolePolicy](https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateAssumeRolePolicy.html). For information about roles, see [roles](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html) in the *IAM User Guide*.\n A role can also have a managed policy attached to it. To attach a managed policy to a role, use [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed with a role, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html)" + "The AWS::AccessAnalyzer::Analyzer type specifies an analyzer of the user's account \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-rolepolicy.json" + "$ref": "resources/aws-accessanalyzer-analyzer.json" } }, "required": [ @@ -30600,9 +30563,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_RateBasedRule": { + "AWS_AppStream_ImageBuilder": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::RateBasedRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::ImageBuilder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html)", "allOf": [ { "type": "object", @@ -30610,14 +30573,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::RateBasedRule" + "AWS::AppStream::ImageBuilder" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::RateBasedRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ratebasedrule.html)" + "Resource Type definition for AWS::AppStream::ImageBuilder \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-imagebuilder.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-ratebasedrule.json" + "$ref": "resources/aws-appstream-imagebuilder.json" } }, "required": [ @@ -30631,9 +30594,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Disk": { + "AWS_DMS_Certificate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Disk \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-disk.html)", + "markdownDescription": "Resource Type definition for AWS::DMS::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html)", "allOf": [ { "type": "object", @@ -30641,19 +30604,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Disk" + "AWS::DMS::Certificate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Disk \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-disk.html)" + "Resource Type definition for AWS::DMS::Certificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-certificate.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-disk.json" + "$ref": "resources/aws-dms-certificate.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -30662,9 +30624,9 @@ ], "additionalProperties": false }, - "AWS_EC2_IPAMResourceDiscovery": { + "AWS_SageMaker_ModelExplainabilityJobDefinition": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EC2::IPAMResourceDiscovery Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscovery.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelExplainabilityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html)", "allOf": [ { "type": "object", @@ -30672,18 +30634,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::IPAMResourceDiscovery" + "AWS::SageMaker::ModelExplainabilityJobDefinition" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EC2::IPAMResourceDiscovery Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamresourcediscovery.html)" + "Resource Type definition for AWS::SageMaker::ModelExplainabilityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ipamresourcediscovery.json" + "$ref": "resources/aws-sagemaker-modelexplainabilityjobdefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -30692,9 +30655,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_Account": { + "AWS_GreengrassV2_ComponentVersion": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html)", + "markdownDescription": "Resource for Greengrass component version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html)", "allOf": [ { "type": "object", @@ -30702,14 +30665,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::Account" + "AWS::GreengrassV2::ComponentVersion" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::Account`` resource specifies the IAM role that Amazon API Gateway uses to write API logs to Amazon CloudWatch Logs. To avoid overwriting other roles, you should only have one ``AWS::ApiGateway::Account`` resource per region per account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html)" + "Resource for Greengrass component version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-account.json" + "$ref": "resources/aws-greengrassv2-componentversion.json" } }, "required": [ @@ -30722,9 +30685,9 @@ ], "additionalProperties": false }, - "AWS_EC2_IPAMPool": { + "AWS_SSM_Parameter": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EC2::IPAMPool Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampool.html)", + "markdownDescription": "The ``AWS::SSM::Parameter`` resource creates an SSM parameter in SYSlong Parameter Store.\n To create an SSM parameter, you must have the IAMlong (IAM) permissions ``ssm:PutParameter`` and ``ssm:AddTagsToResource``. On stack creation, CFNlong adds the following three tags to the parameter: ``aws:cloudformation:stack-name``, ``aws:cloudformation:logical-id``, and ``aws:cloudformation:stack-id``, in addition to any custom tags you specify.\n To add, update, or remove tags during stack update, you must have IAM permissions for both ``ssm:AddTagsToResource`` and ``ssm:RemoveTagsFromResource``. For more information, see [Managing access using policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-iam.html#security_iam_access-manage) in the *User Guide*.\n For information about valid values for parameters, see [About requirements and constraints for parameter names](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html#sysman-parameter-name-constraints) in the *User Guide* and [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html) in the *API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html)", "allOf": [ { "type": "object", @@ -30732,14 +30695,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::IPAMPool" + "AWS::SSM::Parameter" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EC2::IPAMPool Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampool.html)" + "The ``AWS::SSM::Parameter`` resource creates an SSM parameter in SYSlong Parameter Store.\n To create an SSM parameter, you must have the IAMlong (IAM) permissions ``ssm:PutParameter`` and ``ssm:AddTagsToResource``. On stack creation, CFNlong adds the following three tags to the parameter: ``aws:cloudformation:stack-name``, ``aws:cloudformation:logical-id``, and ``aws:cloudformation:stack-id``, in addition to any custom tags you specify.\n To add, update, or remove tags during stack update, you must have IAM permissions for both ``ssm:AddTagsToResource`` and ``ssm:RemoveTagsFromResource``. For more information, see [Managing access using policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-iam.html#security_iam_access-manage) in the *User Guide*.\n For information about valid values for parameters, see [About requirements and constraints for parameter names](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html#sysman-parameter-name-constraints) in the *User Guide* and [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html) in the *API Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ipampool.json" + "$ref": "resources/aws-ssm-parameter.json" } }, "required": [ @@ -30753,9 +30716,9 @@ ], "additionalProperties": false }, - "AWS_Connect_EmailAddress": { + "AWS_Location_PlaceIndex": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::EmailAddress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html)", + "markdownDescription": "Definition of AWS::Location::PlaceIndex Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-placeindex.html)", "allOf": [ { "type": "object", @@ -30763,14 +30726,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::EmailAddress" + "AWS::Location::PlaceIndex" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::EmailAddress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html)" + "Definition of AWS::Location::PlaceIndex Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-placeindex.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-emailaddress.json" + "$ref": "resources/aws-location-placeindex.json" } }, "required": [ @@ -30784,9 +30747,9 @@ ], "additionalProperties": false }, - "AWS_IAM_Policy": { + "AWS_ElastiCache_SubnetGroup": { "type": "object", - "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM group, user or role.\n An IAM user can also have a managed policy attached to it. For information about policies, see [Managed Policies and Inline Policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *User Guide*.\n The Groups, Roles, and Users properties are optional. However, you must specify at least one of these properties.\n For information about policy documents see [Creating policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) in the *User Guide*.\n For information about limits on the number of inline policies that you can embed in an identity, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*.\n This resource does not support [drift detection](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html). The following inline policy resource types support drift detection:\n + [AWS::IAM::GroupPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html) \n + [AWS::IAM::RolePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html) \n + [AWS::IAM::UserPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)", + "markdownDescription": "Resource Type definition for AWS::ElastiCache::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-subnetgroup.html)", "allOf": [ { "type": "object", @@ -30794,14 +30757,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::Policy" + "AWS::ElastiCache::SubnetGroup" ], "markdownEnumDescriptions": [ - "Adds or updates an inline policy document that is embedded in the specified IAM group, user or role.\n An IAM user can also have a managed policy attached to it. For information about policies, see [Managed Policies and Inline Policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *User Guide*.\n The Groups, Roles, and Users properties are optional. However, you must specify at least one of these properties.\n For information about policy documents see [Creating policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) in the *User Guide*.\n For information about limits on the number of inline policies that you can embed in an identity, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*.\n This resource does not support [drift detection](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html). The following inline policy resource types support drift detection:\n + [AWS::IAM::GroupPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html) \n + [AWS::IAM::RolePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-rolepolicy.html) \n + [AWS::IAM::UserPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html)" + "Resource Type definition for AWS::ElastiCache::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-subnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-policy.json" + "$ref": "resources/aws-elasticache-subnetgroup.json" } }, "required": [ @@ -30815,9 +30778,9 @@ ], "additionalProperties": false }, - "AWS_Notifications_EventRule": { + "AWS_Shield_ProactiveEngagement": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Notifications::EventRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-eventrule.html)", + "markdownDescription": "Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-proactiveengagement.html)", "allOf": [ { "type": "object", @@ -30825,14 +30788,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Notifications::EventRule" + "AWS::Shield::ProactiveEngagement" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Notifications::EventRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-eventrule.html)" + "Authorizes the Shield Response Team (SRT) to use email and phone to notify contacts about escalations to the SRT and to initiate proactive customer support. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-proactiveengagement.html)" ] }, "Properties": { - "$ref": "resources/aws-notifications-eventrule.json" + "$ref": "resources/aws-shield-proactiveengagement.json" } }, "required": [ @@ -30846,9 +30809,9 @@ ], "additionalProperties": false }, - "AWS_DataBrew_Project": { + "AWS_LaunchWizard_Deployment": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataBrew::Project. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html)", + "markdownDescription": "Definition of AWS::LaunchWizard::Deployment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-launchwizard-deployment.html)", "allOf": [ { "type": "object", @@ -30856,14 +30819,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataBrew::Project" + "AWS::LaunchWizard::Deployment" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataBrew::Project. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-project.html)" + "Definition of AWS::LaunchWizard::Deployment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-launchwizard-deployment.html)" ] }, "Properties": { - "$ref": "resources/aws-databrew-project.json" + "$ref": "resources/aws-launchwizard-deployment.json" } }, "required": [ @@ -30877,9 +30840,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_DomainName": { + "AWS_VpcLattice_ServiceNetwork": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::DomainName`` resource specifies a custom domain name for your API in API Gateway.\n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html)", + "markdownDescription": "A service network is a logical boundary for a collection of services. You can associate services and VPCs with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html)", "allOf": [ { "type": "object", @@ -30887,14 +30850,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::DomainName" + "AWS::VpcLattice::ServiceNetwork" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::DomainName`` resource specifies a custom domain name for your API in API Gateway.\n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainname.html)" + "A service network is a logical boundary for a collection of services. You can associate services and VPCs with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetwork.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-domainname.json" + "$ref": "resources/aws-vpclattice-servicenetwork.json" } }, "required": [ @@ -30907,9 +30870,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_GraphQLApi": { + "AWS_Connect_EmailAddress": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::GraphQLApi \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::EmailAddress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html)", "allOf": [ { "type": "object", @@ -30917,14 +30880,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::GraphQLApi" + "AWS::Connect::EmailAddress" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::GraphQLApi \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html)" + "Resource Type definition for AWS::Connect::EmailAddress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-graphqlapi.json" + "$ref": "resources/aws-connect-emailaddress.json" } }, "required": [ @@ -30938,9 +30901,9 @@ ], "additionalProperties": false }, - "AWS_SSMIncidents_ResponsePlan": { + "AWS_MSK_BatchScramSecret": { "type": "object", - "markdownDescription": "Resource type definition for AWS::SSMIncidents::ResponsePlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-responseplan.html)", + "markdownDescription": "Resource Type definition for AWS::MSK::BatchScramSecret \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-batchscramsecret.html)", "allOf": [ { "type": "object", @@ -30948,14 +30911,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMIncidents::ResponsePlan" + "AWS::MSK::BatchScramSecret" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::SSMIncidents::ResponsePlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmincidents-responseplan.html)" + "Resource Type definition for AWS::MSK::BatchScramSecret \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-batchscramsecret.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmincidents-responseplan.json" + "$ref": "resources/aws-msk-batchscramsecret.json" } }, "required": [ @@ -30969,9 +30932,9 @@ ], "additionalProperties": false }, - "AWS_RDS_Integration": { + "AWS_IoT_DomainConfiguration": { "type": "object", - "markdownDescription": "A zero-ETL integration with Amazon Redshift. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-integration.html)", + "markdownDescription": "Create and manage a Domain Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html)", "allOf": [ { "type": "object", @@ -30979,19 +30942,18 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::Integration" + "AWS::IoT::DomainConfiguration" ], "markdownEnumDescriptions": [ - "A zero-ETL integration with Amazon Redshift. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-integration.html)" + "Create and manage a Domain Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-domainconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-integration.json" + "$ref": "resources/aws-iot-domainconfiguration.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -31000,9 +30962,9 @@ ], "additionalProperties": false }, - "AWS_Logs_ResourcePolicy": { + "AWS_Panorama_PackageVersion": { "type": "object", - "markdownDescription": "The resource schema for AWSLogs ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html)", + "markdownDescription": "Registers a package version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-packageversion.html)", "allOf": [ { "type": "object", @@ -31010,14 +30972,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::ResourcePolicy" + "AWS::Panorama::PackageVersion" ], "markdownEnumDescriptions": [ - "The resource schema for AWSLogs ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-resourcepolicy.html)" + "Registers a package version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-packageversion.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-resourcepolicy.json" + "$ref": "resources/aws-panorama-packageversion.json" } }, "required": [ @@ -31031,9 +30993,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_Fleet": { + "AWS_Cognito_UserPoolClient": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolClient \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html)", "allOf": [ { "type": "object", @@ -31041,14 +31003,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::Fleet" + "AWS::Cognito::UserPoolClient" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-fleet.html)" + "Resource Type definition for AWS::Cognito::UserPoolClient \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-fleet.json" + "$ref": "resources/aws-cognito-userpoolclient.json" } }, "required": [ @@ -31062,9 +31024,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_Deployment": { + "AWS_Neptune_EventSubscription": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html)", + "markdownDescription": "Resource Type definition for AWS::Neptune::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html)", "allOf": [ { "type": "object", @@ -31072,19 +31034,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::Deployment" + "AWS::Neptune::EventSubscription" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html)" + "Resource Type definition for AWS::Neptune::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-eventsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-deployment.json" + "$ref": "resources/aws-neptune-eventsubscription.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -31093,9 +31054,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_LifecyclePolicy": { + "AWS_IoT_TopicRule": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-lifecyclepolicy.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::TopicRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html)", "allOf": [ { "type": "object", @@ -31103,14 +31064,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::LifecyclePolicy" + "AWS::IoT::TopicRule" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::LifecyclePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-lifecyclepolicy.html)" + "Resource Type definition for AWS::IoT::TopicRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-lifecyclepolicy.json" + "$ref": "resources/aws-iot-topicrule.json" } }, "required": [ @@ -31124,9 +31085,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_DeviceDefinition": { + "AWS_EC2_SnapshotBlockPublicAccess": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::DeviceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-snapshotblockpublicaccess.html)", "allOf": [ { "type": "object", @@ -31134,14 +31095,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::DeviceDefinition" + "AWS::EC2::SnapshotBlockPublicAccess" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::DeviceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-devicedefinition.html)" + "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-snapshotblockpublicaccess.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-devicedefinition.json" + "$ref": "resources/aws-ec2-snapshotblockpublicaccess.json" } }, "required": [ @@ -31155,9 +31116,9 @@ ], "additionalProperties": false }, - "AWS_AppIntegrations_EventIntegration": { + "AWS_RDS_DBParameterGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppIntegrations::EventIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-eventintegration.html)", + "markdownDescription": "The ``AWS::RDS::DBParameterGroup`` resource creates a custom parameter group for an RDS database family.\n This type can be declared in a template and referenced in the ``DBParameterGroupName`` property of an ``AWS::RDS::DBInstance`` resource.\n For information about configuring parameters for Amazon RDS DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html) in the *Amazon RDS User Guide*.\n For information about configuring parameters for Amazon Aurora DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n Applying a parameter group to a DB instance may require the DB instance to reboot, resulting in a database outage for the duration of the reboot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbparametergroup.html)", "allOf": [ { "type": "object", @@ -31165,14 +31126,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppIntegrations::EventIntegration" + "AWS::RDS::DBParameterGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppIntegrations::EventIntegration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-eventintegration.html)" + "The ``AWS::RDS::DBParameterGroup`` resource creates a custom parameter group for an RDS database family.\n This type can be declared in a template and referenced in the ``DBParameterGroupName`` property of an ``AWS::RDS::DBInstance`` resource.\n For information about configuring parameters for Amazon RDS DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html) in the *Amazon RDS User Guide*.\n For information about configuring parameters for Amazon Aurora DB instances, see [Working with parameter groups](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.html) in the *Amazon Aurora User Guide*.\n Applying a parameter group to a DB instance may require the DB instance to reboot, resulting in a database outage for the duration of the reboot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbparametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-appintegrations-eventintegration.json" + "$ref": "resources/aws-rds-dbparametergroup.json" } }, "required": [ @@ -31186,9 +31147,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_Project": { + "AWS_SES_MailManagerAddonSubscription": { "type": "object", - "markdownDescription": "Amazon DataZone projects are business use case\u2013based groupings of people, assets (data), and tools used to simplify access to the AWS analytics. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-project.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerAddonSubscription Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddonsubscription.html)", "allOf": [ { "type": "object", @@ -31196,14 +31157,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::Project" + "AWS::SES::MailManagerAddonSubscription" ], "markdownEnumDescriptions": [ - "Amazon DataZone projects are business use case\u2013based groupings of people, assets (data), and tools used to simplify access to the AWS analytics. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-project.html)" + "Definition of AWS::SES::MailManagerAddonSubscription Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddonsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-project.json" + "$ref": "resources/aws-ses-mailmanageraddonsubscription.json" } }, "required": [ @@ -31217,9 +31178,9 @@ ], "additionalProperties": false }, - "AWS_SSM_ResourcePolicy": { + "AWS_Location_TrackerConsumer": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSM::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcepolicy.html)", + "markdownDescription": "Definition of AWS::Location::TrackerConsumer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-trackerconsumer.html)", "allOf": [ { "type": "object", @@ -31227,14 +31188,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::ResourcePolicy" + "AWS::Location::TrackerConsumer" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSM::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcepolicy.html)" + "Definition of AWS::Location::TrackerConsumer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-trackerconsumer.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-resourcepolicy.json" + "$ref": "resources/aws-location-trackerconsumer.json" } }, "required": [ @@ -31248,9 +31209,9 @@ ], "additionalProperties": false }, - "AWS_FSx_FileSystem": { + "AWS_IoTFleetWise_StateTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::FSx::FileSystem \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html)", + "markdownDescription": "Definition of AWS::IoTFleetWise::StateTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-statetemplate.html)", "allOf": [ { "type": "object", @@ -31258,14 +31219,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FSx::FileSystem" + "AWS::IoTFleetWise::StateTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::FSx::FileSystem \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html)" + "Definition of AWS::IoTFleetWise::StateTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-statetemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-fsx-filesystem.json" + "$ref": "resources/aws-iotfleetwise-statetemplate.json" } }, "required": [ @@ -31279,9 +31240,9 @@ ], "additionalProperties": false }, - "AWS_DataBrew_Schedule": { + "AWS_ApiGatewayV2_DomainName": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataBrew::Schedule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::DomainName`` resource specifies a custom domain name for your API in Amazon API Gateway (API Gateway). \n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html)", "allOf": [ { "type": "object", @@ -31289,14 +31250,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataBrew::Schedule" + "AWS::ApiGatewayV2::DomainName" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataBrew::Schedule. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-schedule.html)" + "The ``AWS::ApiGatewayV2::DomainName`` resource specifies a custom domain name for your API in Amazon API Gateway (API Gateway). \n You can use a custom domain name to provide a URL that's more intuitive and easier to recall. For more information about using custom domain names, see [Set up Custom Domain Name for an API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-custom-domains.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-domainname.html)" ] }, "Properties": { - "$ref": "resources/aws-databrew-schedule.json" + "$ref": "resources/aws-apigatewayv2-domainname.json" } }, "required": [ @@ -31310,9 +31271,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_NetworkAnalyzerConfiguration": { + "AWS_EC2_VPNGatewayRoutePropagation": { "type": "object", - "markdownDescription": "Create and manage NetworkAnalyzerConfiguration resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-networkanalyzerconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPNGatewayRoutePropagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngatewayroutepropagation.html)", "allOf": [ { "type": "object", @@ -31320,14 +31281,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::NetworkAnalyzerConfiguration" + "AWS::EC2::VPNGatewayRoutePropagation" ], "markdownEnumDescriptions": [ - "Create and manage NetworkAnalyzerConfiguration resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-networkanalyzerconfiguration.html)" + "Resource Type definition for AWS::EC2::VPNGatewayRoutePropagation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngatewayroutepropagation.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-networkanalyzerconfiguration.json" + "$ref": "resources/aws-ec2-vpngatewayroutepropagation.json" } }, "required": [ @@ -31372,9 +31333,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_ResolverEndpoint": { + "AWS_OSIS_Pipeline": { "type": "object", - "markdownDescription": "Resource type definition for AWS::Route53Resolver::ResolverEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html)", + "markdownDescription": "An OpenSearch Ingestion Service Data Prepper pipeline running Data Prepper. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-osis-pipeline.html)", "allOf": [ { "type": "object", @@ -31382,14 +31343,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::ResolverEndpoint" + "AWS::OSIS::Pipeline" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::Route53Resolver::ResolverEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html)" + "An OpenSearch Ingestion Service Data Prepper pipeline running Data Prepper. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-osis-pipeline.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-resolverendpoint.json" + "$ref": "resources/aws-osis-pipeline.json" } }, "required": [ @@ -31403,9 +31364,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_ClusterSubnetGroup": { + "AWS_DMS_DataMigration": { "type": "object", - "markdownDescription": "Specifies an Amazon Redshift subnet group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html)", + "markdownDescription": "Resource schema for AWS::DMS::DataMigration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-datamigration.html)", "allOf": [ { "type": "object", @@ -31413,14 +31374,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::ClusterSubnetGroup" + "AWS::DMS::DataMigration" ], "markdownEnumDescriptions": [ - "Specifies an Amazon Redshift subnet group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html)" + "Resource schema for AWS::DMS::DataMigration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-datamigration.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-clustersubnetgroup.json" + "$ref": "resources/aws-dms-datamigration.json" } }, "required": [ @@ -31434,9 +31395,9 @@ ], "additionalProperties": false }, - "AWS_Chatbot_SlackChannelConfiguration": { + "AWS_AppConfig_DeploymentStrategy": { "type": "object", - "markdownDescription": "Resource schema for AWS::Chatbot::SlackChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::AppConfig::DeploymentStrategy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deploymentstrategy.html)", "allOf": [ { "type": "object", @@ -31444,14 +31405,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Chatbot::SlackChannelConfiguration" + "AWS::AppConfig::DeploymentStrategy" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Chatbot::SlackChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html)" + "Resource Type definition for AWS::AppConfig::DeploymentStrategy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deploymentstrategy.html)" ] }, "Properties": { - "$ref": "resources/aws-chatbot-slackchannelconfiguration.json" + "$ref": "resources/aws-appconfig-deploymentstrategy.json" } }, "required": [ @@ -31465,9 +31426,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_ResourceUpdateConstraint": { + "AWS_Redshift_Integration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::ResourceUpdateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html)", + "markdownDescription": "Integration from a source AWS service to a Redshift cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html)", "allOf": [ { "type": "object", @@ -31475,14 +31436,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::ResourceUpdateConstraint" + "AWS::Redshift::Integration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::ResourceUpdateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html)" + "Integration from a source AWS service to a Redshift cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-resourceupdateconstraint.json" + "$ref": "resources/aws-redshift-integration.json" } }, "required": [ @@ -31496,9 +31457,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCBlockPublicAccessOptions": { + "AWS_ResilienceHub_App": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCBlockPublicAccessOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessoptions.html)", + "markdownDescription": "Resource Type Definition for AWS::ResilienceHub::App. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html)", "allOf": [ { "type": "object", @@ -31506,14 +31467,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCBlockPublicAccessOptions" + "AWS::ResilienceHub::App" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCBlockPublicAccessOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessoptions.html)" + "Resource Type Definition for AWS::ResilienceHub::App. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-app.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcblockpublicaccessoptions.json" + "$ref": "resources/aws-resiliencehub-app.json" } }, "required": [ @@ -31527,9 +31488,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_Service": { + "AWS_DocDB_DBClusterParameterGroup": { "type": "object", - "markdownDescription": "A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html)", + "markdownDescription": "Resource Type definition for AWS::DocDB::DBClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html)", "allOf": [ { "type": "object", @@ -31537,18 +31498,19 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::Service" + "AWS::DocDB::DBClusterParameterGroup" ], "markdownEnumDescriptions": [ - "A service is any software application that can run on instances containers, or serverless functions within an account or virtual private cloud (VPC). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-service.html)" + "Resource Type definition for AWS::DocDB::DBClusterParameterGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-dbclusterparametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-service.json" + "$ref": "resources/aws-docdb-dbclusterparametergroup.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -31557,9 +31519,9 @@ ], "additionalProperties": false }, - "AWS_Omics_ReferenceStore": { + "AWS_IAM_ServerCertificate": { "type": "object", - "markdownDescription": "Definition of AWS::Omics::ReferenceStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-referencestore.html)", + "markdownDescription": "Resource Type definition for AWS::IAM::ServerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html)", "allOf": [ { "type": "object", @@ -31567,19 +31529,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Omics::ReferenceStore" + "AWS::IAM::ServerCertificate" ], "markdownEnumDescriptions": [ - "Definition of AWS::Omics::ReferenceStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-referencestore.html)" + "Resource Type definition for AWS::IAM::ServerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-servercertificate.html)" ] }, "Properties": { - "$ref": "resources/aws-omics-referencestore.json" + "$ref": "resources/aws-iam-servercertificate.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -31588,9 +31549,9 @@ ], "additionalProperties": false }, - "AWS_B2BI_Capability": { + "AWS_Organizations_Policy": { "type": "object", - "markdownDescription": "Definition of AWS::B2BI::Capability Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-capability.html)", + "markdownDescription": "Policies in AWS Organizations enable you to manage different features of the AWS accounts in your organization. You can use policies when all features are enabled in your organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-policy.html)", "allOf": [ { "type": "object", @@ -31598,14 +31559,14 @@ "Type": { "type": "string", "enum": [ - "AWS::B2BI::Capability" + "AWS::Organizations::Policy" ], "markdownEnumDescriptions": [ - "Definition of AWS::B2BI::Capability Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-capability.html)" + "Policies in AWS Organizations enable you to manage different features of the AWS accounts in your organization. You can use policies when all features are enabled in your organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-policy.html)" ] }, "Properties": { - "$ref": "resources/aws-b2bi-capability.json" + "$ref": "resources/aws-organizations-policy.json" } }, "required": [ @@ -31619,9 +31580,9 @@ ], "additionalProperties": false }, - "AWS_ApplicationSignals_ServiceLevelObjective": { + "AWS_MemoryDB_MultiRegionCluster": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ApplicationSignals::ServiceLevelObjective \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html)", + "markdownDescription": "The AWS::MemoryDB::Multi Region Cluster resource creates an Amazon MemoryDB Multi Region Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-multiregioncluster.html)", "allOf": [ { "type": "object", @@ -31629,14 +31590,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApplicationSignals::ServiceLevelObjective" + "AWS::MemoryDB::MultiRegionCluster" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ApplicationSignals::ServiceLevelObjective \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-servicelevelobjective.html)" + "The AWS::MemoryDB::Multi Region Cluster resource creates an Amazon MemoryDB Multi Region Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-multiregioncluster.html)" ] }, "Properties": { - "$ref": "resources/aws-applicationsignals-servicelevelobjective.json" + "$ref": "resources/aws-memorydb-multiregioncluster.json" } }, "required": [ @@ -31650,9 +31611,9 @@ ], "additionalProperties": false }, - "AWS_MediaConvert_Queue": { + "AWS_Lightsail_InstanceSnapshot": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MediaConvert::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::InstanceSnapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instancesnapshot.html)", "allOf": [ { "type": "object", @@ -31660,18 +31621,19 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConvert::Queue" + "AWS::Lightsail::InstanceSnapshot" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MediaConvert::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconvert-queue.html)" + "Resource Type definition for AWS::Lightsail::InstanceSnapshot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instancesnapshot.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconvert-queue.json" + "$ref": "resources/aws-lightsail-instancesnapshot.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -31680,9 +31642,9 @@ ], "additionalProperties": false }, - "AWS_IoTFleetWise_Fleet": { + "AWS_IAM_OIDCProvider": { "type": "object", - "markdownDescription": "Definition of AWS::IoTFleetWise::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html)", + "markdownDescription": "Resource Type definition for AWS::IAM::OIDCProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html)", "allOf": [ { "type": "object", @@ -31690,19 +31652,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTFleetWise::Fleet" + "AWS::IAM::OIDCProvider" ], "markdownEnumDescriptions": [ - "Definition of AWS::IoTFleetWise::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html)" + "Resource Type definition for AWS::IAM::OIDCProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-iotfleetwise-fleet.json" + "$ref": "resources/aws-iam-oidcprovider.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -31711,9 +31672,9 @@ ], "additionalProperties": false }, - "AWS_IoT_Certificate": { + "AWS_Budgets_BudgetsAction": { "type": "object", - "markdownDescription": "Use the AWS::IoT::Certificate resource to declare an AWS IoT X.509 certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html)", "allOf": [ { "type": "object", @@ -31721,14 +31682,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::Certificate" + "AWS::Budgets::BudgetsAction" ], "markdownEnumDescriptions": [ - "Use the AWS::IoT::Certificate resource to declare an AWS IoT X.509 certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-certificate.json" + "$ref": "resources/aws-budgets-budgetsaction.json" } }, "required": [ @@ -31742,9 +31703,9 @@ ], "additionalProperties": false }, - "AWS_Glue_TableOptimizer": { + "AWS_ServiceDiscovery_HttpNamespace": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::TableOptimizer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-tableoptimizer.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::HttpNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html)", "allOf": [ { "type": "object", @@ -31752,14 +31713,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::TableOptimizer" + "AWS::ServiceDiscovery::HttpNamespace" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::TableOptimizer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-tableoptimizer.html)" + "Resource Type definition for AWS::ServiceDiscovery::HttpNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-tableoptimizer.json" + "$ref": "resources/aws-servicediscovery-httpnamespace.json" } }, "required": [ @@ -31773,9 +31734,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Connection": { + "AWS_DataZone_Domain": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Connection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html)", + "markdownDescription": "A domain is an organizing entity for connecting together assets, users, and their projects \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domain.html)", "allOf": [ { "type": "object", @@ -31783,14 +31744,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Connection" + "AWS::DataZone::Domain" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Connection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-connection.html)" + "A domain is an organizing entity for connecting together assets, users, and their projects \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-connection.json" + "$ref": "resources/aws-datazone-domain.json" } }, "required": [ @@ -31804,9 +31765,9 @@ ], "additionalProperties": false }, - "AWS_XRay_TransactionSearchConfig": { + "AWS_AppStream_Application": { "type": "object", - "markdownDescription": "This schema provides construct and validation rules for AWS-XRay TransactionSearchConfig resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-transactionsearchconfig.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-application.html)", "allOf": [ { "type": "object", @@ -31814,18 +31775,19 @@ "Type": { "type": "string", "enum": [ - "AWS::XRay::TransactionSearchConfig" + "AWS::AppStream::Application" ], "markdownEnumDescriptions": [ - "This schema provides construct and validation rules for AWS-XRay TransactionSearchConfig resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-transactionsearchconfig.html)" + "Resource Type definition for AWS::AppStream::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-application.html)" ] }, "Properties": { - "$ref": "resources/aws-xray-transactionsearchconfig.json" + "$ref": "resources/aws-appstream-application.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -31834,9 +31796,9 @@ ], "additionalProperties": false }, - "AWS_SES_DedicatedIpPool": { + "AWS_WAFRegional_XssMatchSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html)", "allOf": [ { "type": "object", @@ -31844,18 +31806,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::DedicatedIpPool" + "AWS::WAFRegional::XssMatchSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-dedicatedippool.html)" + "Resource Type definition for AWS::WAFRegional::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-dedicatedippool.json" + "$ref": "resources/aws-wafregional-xssmatchset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -31864,9 +31827,9 @@ ], "additionalProperties": false }, - "AWS_ElastiCache_SecurityGroup": { + "AWS_Cognito_UserPoolDomain": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElastiCache::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroup.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolDomain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html)", "allOf": [ { "type": "object", @@ -31874,14 +31837,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElastiCache::SecurityGroup" + "AWS::Cognito::UserPoolDomain" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElastiCache::SecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-securitygroup.html)" + "Resource Type definition for AWS::Cognito::UserPoolDomain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticache-securitygroup.json" + "$ref": "resources/aws-cognito-userpooldomain.json" } }, "required": [ @@ -31895,9 +31858,9 @@ ], "additionalProperties": false }, - "AWS_RoboMaker_RobotApplication": { + "AWS_S3_BucketPolicy": { "type": "object", - "markdownDescription": "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html)", + "markdownDescription": "Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using an identity other than the root user of the AWS-account that owns the bucket, the calling identity must have the ``PutBucketPolicy`` permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.\n If you don't have ``PutBucketPolicy`` permissions, Amazon S3 returns a ``403 Access Denied`` error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a ``405 Method Not Allowed`` error.\n As a security precaution, the root user of the AWS-account that owns a bucket can always use this operation, even if the policy explicitly denies the root user the ability to perform this action. \n When using the ``AWS::S3::BucketPolicy`` resource, you can create, update, and delete bucket policies for S3 buckets located in regions different from the stack's region. This cross-region bucket policy modification functionality is supported for backward compatibility with existing workflows.\n If the [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html) is not specified or set to ``Delete``, the bucket policy will be removed when the stack is deleted. If set to ``Retain``, the bucket policy will be preserved even after the stack is deleted.\n For example, a CloudFormation stack in ``us-east-1`` can use the ``AWS::S3::BucketPolicy`` resource to manage the bucket policy for an S3 bucket in ``us-west-2``. The retention or removal of the bucket policy during the stack deletion is determined by the ``DeletionPolicy`` attribute specified in the stack template.\n For more information, see [Bucket policy examples](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html).\n The following operations are related to ``PutBucketPolicy``:\n + [CreateBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html) \n + [DeleteBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucketpolicy.html)", "allOf": [ { "type": "object", @@ -31905,14 +31868,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RoboMaker::RobotApplication" + "AWS::S3::BucketPolicy" ], "markdownEnumDescriptions": [ - "This schema is for testing purpose only. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robotapplication.html)" + "Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using an identity other than the root user of the AWS-account that owns the bucket, the calling identity must have the ``PutBucketPolicy`` permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.\n If you don't have ``PutBucketPolicy`` permissions, Amazon S3 returns a ``403 Access Denied`` error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a ``405 Method Not Allowed`` error.\n As a security precaution, the root user of the AWS-account that owns a bucket can always use this operation, even if the policy explicitly denies the root user the ability to perform this action. \n When using the ``AWS::S3::BucketPolicy`` resource, you can create, update, and delete bucket policies for S3 buckets located in regions different from the stack's region. This cross-region bucket policy modification functionality is supported for backward compatibility with existing workflows.\n If the [DeletionPolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html) is not specified or set to ``Delete``, the bucket policy will be removed when the stack is deleted. If set to ``Retain``, the bucket policy will be preserved even after the stack is deleted.\n For example, a CloudFormation stack in ``us-east-1`` can use the ``AWS::S3::BucketPolicy`` resource to manage the bucket policy for an S3 bucket in ``us-west-2``. The retention or removal of the bucket policy during the stack deletion is determined by the ``DeletionPolicy`` attribute specified in the stack template.\n For more information, see [Bucket policy examples](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html).\n The following operations are related to ``PutBucketPolicy``:\n + [CreateBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html) \n + [DeleteBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucketpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-robomaker-robotapplication.json" + "$ref": "resources/aws-s3-bucketpolicy.json" } }, "required": [ @@ -31926,9 +31889,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_ModelExplainabilityJobDefinition": { + "AWS_Connect_PredefinedAttribute": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelExplainabilityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::PredefinedAttribute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-predefinedattribute.html)", "allOf": [ { "type": "object", @@ -31936,14 +31899,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::ModelExplainabilityJobDefinition" + "AWS::Connect::PredefinedAttribute" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::ModelExplainabilityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelexplainabilityjobdefinition.html)" + "Resource Type definition for AWS::Connect::PredefinedAttribute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-predefinedattribute.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-modelexplainabilityjobdefinition.json" + "$ref": "resources/aws-connect-predefinedattribute.json" } }, "required": [ @@ -31957,9 +31920,9 @@ ], "additionalProperties": false }, - "AWS_SSMGuiConnect_Preferences": { + "AWS_Glue_Database": { "type": "object", - "markdownDescription": "Definition of AWS::SSMGuiConnect::Preferences Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmguiconnect-preferences.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html)", "allOf": [ { "type": "object", @@ -31967,18 +31930,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMGuiConnect::Preferences" + "AWS::Glue::Database" ], "markdownEnumDescriptions": [ - "Definition of AWS::SSMGuiConnect::Preferences Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmguiconnect-preferences.html)" + "Resource Type definition for AWS::Glue::Database \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmguiconnect-preferences.json" + "$ref": "resources/aws-glue-database.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -31987,9 +31951,9 @@ ], "additionalProperties": false }, - "AWS_CustomerProfiles_CalculatedAttributeDefinition": { + "AWS_Macie_Session": { "type": "object", - "markdownDescription": "A calculated attribute definition for Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html)", + "markdownDescription": "The AWS::Macie::Session resource specifies a new Amazon Macie session. A session is an object that represents the Amazon Macie service. A session is required for Amazon Macie to become operational. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-session.html)", "allOf": [ { "type": "object", @@ -31997,19 +31961,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CustomerProfiles::CalculatedAttributeDefinition" + "AWS::Macie::Session" ], "markdownEnumDescriptions": [ - "A calculated attribute definition for Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html)" + "The AWS::Macie::Session resource specifies a new Amazon Macie session. A session is an object that represents the Amazon Macie service. A session is required for Amazon Macie to become operational. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-session.html)" ] }, "Properties": { - "$ref": "resources/aws-customerprofiles-calculatedattributedefinition.json" + "$ref": "resources/aws-macie-session.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -32018,9 +31981,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_AppBlockBuilder": { + "AWS_Lightsail_Distribution": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::AppBlockBuilder. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblockbuilder.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Distribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html)", "allOf": [ { "type": "object", @@ -32028,14 +31991,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::AppBlockBuilder" + "AWS::Lightsail::Distribution" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::AppBlockBuilder. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-appblockbuilder.html)" + "Resource Type definition for AWS::Lightsail::Distribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-distribution.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-appblockbuilder.json" + "$ref": "resources/aws-lightsail-distribution.json" } }, "required": [ @@ -32049,9 +32012,9 @@ ], "additionalProperties": false }, - "AWS_IVS_Stage": { + "AWS_OpsWorks_UserProfile": { "type": "object", - "markdownDescription": "Resource Definition for type AWS::IVS::Stage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-stage.html)", + "markdownDescription": "Resource Type definition for AWS::OpsWorks::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html)", "allOf": [ { "type": "object", @@ -32059,18 +32022,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::Stage" + "AWS::OpsWorks::UserProfile" ], "markdownEnumDescriptions": [ - "Resource Definition for type AWS::IVS::Stage. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-stage.html)" + "Resource Type definition for AWS::OpsWorks::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-stage.json" + "$ref": "resources/aws-opsworks-userprofile.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -32079,9 +32043,9 @@ ], "additionalProperties": false }, - "AWS_IoT_CACertificate": { + "AWS_GameLift_GameSessionQueue": { "type": "object", - "markdownDescription": "Registers a CA Certificate in IoT. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html)", + "markdownDescription": "The AWS::GameLift::GameSessionQueue resource creates an Amazon GameLift (GameLift) game session queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html)", "allOf": [ { "type": "object", @@ -32089,14 +32053,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::CACertificate" + "AWS::GameLift::GameSessionQueue" ], "markdownEnumDescriptions": [ - "Registers a CA Certificate in IoT. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-cacertificate.html)" + "The AWS::GameLift::GameSessionQueue resource creates an Amazon GameLift (GameLift) game session queue. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-cacertificate.json" + "$ref": "resources/aws-gamelift-gamesessionqueue.json" } }, "required": [ @@ -32110,9 +32074,9 @@ ], "additionalProperties": false }, - "AWS_IdentityStore_Group": { + "AWS_AppStream_ApplicationFleetAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IdentityStore::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-group.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::ApplicationFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationfleetassociation.html)", "allOf": [ { "type": "object", @@ -32120,14 +32084,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IdentityStore::Group" + "AWS::AppStream::ApplicationFleetAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IdentityStore::Group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-identitystore-group.html)" + "Resource Type definition for AWS::AppStream::ApplicationFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-applicationfleetassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-identitystore-group.json" + "$ref": "resources/aws-appstream-applicationfleetassociation.json" } }, "required": [ @@ -32141,9 +32105,9 @@ ], "additionalProperties": false }, - "AWS_IVS_StreamKey": { + "AWS_ApiGateway_DomainNameAccessAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::StreamKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-streamkey.html)", + "markdownDescription": "Resource Type definition for AWS::ApiGateway::DomainNameAccessAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html)", "allOf": [ { "type": "object", @@ -32151,14 +32115,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::StreamKey" + "AWS::ApiGateway::DomainNameAccessAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::StreamKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-streamkey.html)" + "Resource Type definition for AWS::ApiGateway::DomainNameAccessAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnameaccessassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-streamkey.json" + "$ref": "resources/aws-apigateway-domainnameaccessassociation.json" } }, "required": [ @@ -32172,9 +32136,9 @@ ], "additionalProperties": false }, - "AWS_FraudDetector_EventType": { + "AWS_Backup_RestoreTestingSelection": { "type": "object", - "markdownDescription": "A resource schema for an EventType in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-eventtype.html)", + "markdownDescription": "Resource Type definition for AWS::Backup::RestoreTestingSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingselection.html)", "allOf": [ { "type": "object", @@ -32182,14 +32146,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FraudDetector::EventType" + "AWS::Backup::RestoreTestingSelection" ], "markdownEnumDescriptions": [ - "A resource schema for an EventType in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-eventtype.html)" + "Resource Type definition for AWS::Backup::RestoreTestingSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-restoretestingselection.html)" ] }, "Properties": { - "$ref": "resources/aws-frauddetector-eventtype.json" + "$ref": "resources/aws-backup-restoretestingselection.json" } }, "required": [ @@ -32203,9 +32167,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Cluster": { + "AWS_SageMaker_ModelBiasJobDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-cluster.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelBiasJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html)", "allOf": [ { "type": "object", @@ -32213,14 +32177,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Cluster" + "AWS::SageMaker::ModelBiasJobDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-cluster.html)" + "Resource Type definition for AWS::SageMaker::ModelBiasJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelbiasjobdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-cluster.json" + "$ref": "resources/aws-sagemaker-modelbiasjobdefinition.json" } }, "required": [ @@ -32234,9 +32198,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_Multiplex": { + "AWS_QBusiness_Application": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaLive::Multiplex \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplex.html)", + "markdownDescription": "Definition of AWS::QBusiness::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html)", "allOf": [ { "type": "object", @@ -32244,14 +32208,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::Multiplex" + "AWS::QBusiness::Application" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaLive::Multiplex \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-multiplex.html)" + "Definition of AWS::QBusiness::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-application.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-multiplex.json" + "$ref": "resources/aws-qbusiness-application.json" } }, "required": [ @@ -32265,9 +32229,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayAttachment": { + "AWS_EC2_SecurityGroupIngress": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupingress.html)", "allOf": [ { "type": "object", @@ -32275,14 +32239,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayAttachment" + "AWS::EC2::SecurityGroupIngress" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TransitGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayattachment.html)" + "Resource Type definition for AWS::EC2::SecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupingress.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewayattachment.json" + "$ref": "resources/aws-ec2-securitygroupingress.json" } }, "required": [ @@ -32296,9 +32260,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationS3": { + "AWS_GameLift_Script": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationS3 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html)", + "markdownDescription": "The AWS::GameLift::Script resource creates a new script record for your Realtime Servers script. Realtime scripts are JavaScript that provide configuration settings and optional custom game logic for your game. The script is deployed when you create a Realtime Servers fleet to host your game sessions. Script logic is executed during an active game session. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html)", "allOf": [ { "type": "object", @@ -32306,14 +32270,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationS3" + "AWS::GameLift::Script" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationS3 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html)" + "The AWS::GameLift::Script resource creates a new script record for your Realtime Servers script. Realtime scripts are JavaScript that provide configuration settings and optional custom game logic for your game. The script is deployed when you create a Realtime Servers fleet to host your game sessions. Script logic is executed during an active game session. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locations3.json" + "$ref": "resources/aws-gamelift-script.json" } }, "required": [ @@ -32327,9 +32291,9 @@ ], "additionalProperties": false }, - "AWS_IAM_UserToGroupAddition": { + "AWS_CloudFormation_WaitConditionHandle": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IAM::UserToGroupAddition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)", + "markdownDescription": "Resource Type definition for AWS::CloudFormation::WaitConditionHandle \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html)", "allOf": [ { "type": "object", @@ -32337,19 +32301,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::UserToGroupAddition" + "AWS::CloudFormation::WaitConditionHandle" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IAM::UserToGroupAddition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-usertogroupaddition.html)" + "Resource Type definition for AWS::CloudFormation::WaitConditionHandle \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitconditionhandle.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-usertogroupaddition.json" + "$ref": "resources/aws-cloudformation-waitconditionhandle.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -32358,9 +32321,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_LoadBalancerTlsCertificate": { + "AWS_SageMaker_NotebookInstance": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::LoadBalancerTlsCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancertlscertificate.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::NotebookInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html)", "allOf": [ { "type": "object", @@ -32368,14 +32331,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::LoadBalancerTlsCertificate" + "AWS::SageMaker::NotebookInstance" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::LoadBalancerTlsCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-loadbalancertlscertificate.html)" + "Resource Type definition for AWS::SageMaker::NotebookInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-notebookinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-loadbalancertlscertificate.json" + "$ref": "resources/aws-sagemaker-notebookinstance.json" } }, "required": [ @@ -32389,9 +32352,9 @@ ], "additionalProperties": false }, - "AWS_Config_StoredQuery": { + "AWS_MPA_IdentitySource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Config::StoredQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html)", + "markdownDescription": "Resource Type definition for AWS::MPA::IdentitySource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-identitysource.html)", "allOf": [ { "type": "object", @@ -32399,14 +32362,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::StoredQuery" + "AWS::MPA::IdentitySource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Config::StoredQuery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-storedquery.html)" + "Resource Type definition for AWS::MPA::IdentitySource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-identitysource.html)" ] }, "Properties": { - "$ref": "resources/aws-config-storedquery.json" + "$ref": "resources/aws-mpa-identitysource.json" } }, "required": [ @@ -32420,9 +32383,9 @@ ], "additionalProperties": false }, - "AWS_Shield_DRTAccess": { + "AWS_Connect_View": { "type": "object", - "markdownDescription": "Config the role and list of Amazon S3 log buckets used by the Shield Response Team (SRT) to access your AWS account while assisting with attack mitigation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-drtaccess.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::View \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-view.html)", "allOf": [ { "type": "object", @@ -32430,14 +32393,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Shield::DRTAccess" + "AWS::Connect::View" ], "markdownEnumDescriptions": [ - "Config the role and list of Amazon S3 log buckets used by the Shield Response Team (SRT) to access your AWS account while assisting with attack mitigation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-drtaccess.html)" + "Resource Type definition for AWS::Connect::View \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-view.html)" ] }, "Properties": { - "$ref": "resources/aws-shield-drtaccess.json" + "$ref": "resources/aws-connect-view.json" } }, "required": [ @@ -32451,9 +32414,9 @@ ], "additionalProperties": false }, - "AWS_S3_AccessGrant": { + "AWS_Shield_ProtectionGroup": { "type": "object", - "markdownDescription": "The AWS::S3::AccessGrant resource is an Amazon S3 resource type representing permissions to a specific S3 bucket or prefix hosted in an S3 Access Grants instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrant.html)", + "markdownDescription": "A grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protectiongroup.html)", "allOf": [ { "type": "object", @@ -32461,14 +32424,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::AccessGrant" + "AWS::Shield::ProtectionGroup" ], "markdownEnumDescriptions": [ - "The AWS::S3::AccessGrant resource is an Amazon S3 resource type representing permissions to a specific S3 bucket or prefix hosted in an S3 Access Grants instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrant.html)" + "A grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protectiongroup.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-accessgrant.json" + "$ref": "resources/aws-shield-protectiongroup.json" } }, "required": [ @@ -32482,9 +32445,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_IdentityPoolPrincipalTag": { + "AWS_S3Tables_TableBucket": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::IdentityPoolPrincipalTag \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolprincipaltag.html)", + "markdownDescription": "Creates an Amazon S3 Tables table bucket in the same AWS Region where you create the AWS CloudFormation stack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucket.html)", "allOf": [ { "type": "object", @@ -32492,14 +32455,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::IdentityPoolPrincipalTag" + "AWS::S3Tables::TableBucket" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::IdentityPoolPrincipalTag \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolprincipaltag.html)" + "Creates an Amazon S3 Tables table bucket in the same AWS Region where you create the AWS CloudFormation stack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucket.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-identitypoolprincipaltag.json" + "$ref": "resources/aws-s3tables-tablebucket.json" } }, "required": [ @@ -32513,9 +32476,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayRouteTableAssociation": { + "AWS_MediaLive_ChannelPlacementGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html)", + "markdownDescription": "Definition of AWS::MediaLive::ChannelPlacementGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channelplacementgroup.html)", "allOf": [ { "type": "object", @@ -32523,19 +32486,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayRouteTableAssociation" + "AWS::MediaLive::ChannelPlacementGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TransitGatewayRouteTableAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetableassociation.html)" + "Definition of AWS::MediaLive::ChannelPlacementGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channelplacementgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewayroutetableassociation.json" + "$ref": "resources/aws-medialive-channelplacementgroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -32544,9 +32506,9 @@ ], "additionalProperties": false }, - "AWS_SNS_TopicPolicy": { + "AWS_Bedrock_DataAutomationProject": { "type": "object", - "markdownDescription": "The ``AWS::SNS::TopicPolicy`` resource associates SNS topics with a policy. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html)", + "markdownDescription": "Definition of AWS::Bedrock::DataAutomationProject Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-dataautomationproject.html)", "allOf": [ { "type": "object", @@ -32554,14 +32516,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SNS::TopicPolicy" + "AWS::Bedrock::DataAutomationProject" ], "markdownEnumDescriptions": [ - "The ``AWS::SNS::TopicPolicy`` resource associates SNS topics with a policy. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html)" + "Definition of AWS::Bedrock::DataAutomationProject Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-dataautomationproject.html)" ] }, "Properties": { - "$ref": "resources/aws-sns-topicpolicy.json" + "$ref": "resources/aws-bedrock-dataautomationproject.json" } }, "required": [ @@ -32575,9 +32537,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_GuardrailVersion": { + "AWS_Pinpoint_ADMChannel": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::GuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrailversion.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::ADMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html)", "allOf": [ { "type": "object", @@ -32585,14 +32547,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::GuardrailVersion" + "AWS::Pinpoint::ADMChannel" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::GuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrailversion.html)" + "Resource Type definition for AWS::Pinpoint::ADMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-admchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-guardrailversion.json" + "$ref": "resources/aws-pinpoint-admchannel.json" } }, "required": [ @@ -32606,9 +32568,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_Asset": { + "AWS_CloudFront_StreamingDistribution": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html)", + "markdownDescription": "Resource Type definition for AWS::CloudFront::StreamingDistribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html)", "allOf": [ { "type": "object", @@ -32616,14 +32578,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::Asset" + "AWS::CloudFront::StreamingDistribution" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html)" + "Resource Type definition for AWS::CloudFront::StreamingDistribution \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-streamingdistribution.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-asset.json" + "$ref": "resources/aws-cloudfront-streamingdistribution.json" } }, "required": [ @@ -32637,9 +32599,9 @@ ], "additionalProperties": false }, - "AWS_NeptuneGraph_Graph": { + "AWS_MemoryDB_Cluster": { "type": "object", - "markdownDescription": "The AWS::NeptuneGraph::Graph resource creates an Amazon NeptuneGraph Graph. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-graph.html)", + "markdownDescription": "The AWS::MemoryDB::Cluster resource creates an Amazon MemoryDB Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-cluster.html)", "allOf": [ { "type": "object", @@ -32647,14 +32609,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NeptuneGraph::Graph" + "AWS::MemoryDB::Cluster" ], "markdownEnumDescriptions": [ - "The AWS::NeptuneGraph::Graph resource creates an Amazon NeptuneGraph Graph. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-graph.html)" + "The AWS::MemoryDB::Cluster resource creates an Amazon MemoryDB Cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-neptunegraph-graph.json" + "$ref": "resources/aws-memorydb-cluster.json" } }, "required": [ @@ -32668,9 +32630,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_ResourcePolicy": { + "AWS_SES_MailManagerArchive": { "type": "object", - "markdownDescription": "Retrieves information about the resource policy. The resource policy is an IAM policy created by AWS RAM on behalf of the resource owner when they share a resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcepolicy.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerArchive Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerarchive.html)", "allOf": [ { "type": "object", @@ -32678,19 +32640,18 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::ResourcePolicy" + "AWS::SES::MailManagerArchive" ], "markdownEnumDescriptions": [ - "Retrieves information about the resource policy. The resource policy is an IAM policy created by AWS RAM on behalf of the resource owner when they share a resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcepolicy.html)" + "Definition of AWS::SES::MailManagerArchive Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerarchive.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-resourcepolicy.json" + "$ref": "resources/aws-ses-mailmanagerarchive.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -32699,9 +32660,9 @@ ], "additionalProperties": false }, - "AWS_KinesisAnalyticsV2_ApplicationOutput": { + "AWS_EC2_NetworkAcl": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html)", + "markdownDescription": "Specifies a network ACL for your VPC.\n To add a network ACL entry, see [AWS::EC2::NetworkAclEntry](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkacl.html)", "allOf": [ { "type": "object", @@ -32709,14 +32670,14 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisAnalyticsV2::ApplicationOutput" + "AWS::EC2::NetworkAcl" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::KinesisAnalyticsV2::ApplicationOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-applicationoutput.html)" + "Specifies a network ACL for your VPC.\n To add a network ACL entry, see [AWS::EC2::NetworkAclEntry](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkaclentry.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkacl.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisanalyticsv2-applicationoutput.json" + "$ref": "resources/aws-ec2-networkacl.json" } }, "required": [ @@ -32730,9 +32691,9 @@ ], "additionalProperties": false }, - "AWS_EMR_Step": { + "AWS_RolesAnywhere_TrustAnchor": { "type": "object", - "markdownDescription": "Schema for AWS::EMR::Step \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html)", + "markdownDescription": "Definition of AWS::RolesAnywhere::TrustAnchor Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-trustanchor.html)", "allOf": [ { "type": "object", @@ -32740,14 +32701,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::Step" + "AWS::RolesAnywhere::TrustAnchor" ], "markdownEnumDescriptions": [ - "Schema for AWS::EMR::Step \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html)" + "Definition of AWS::RolesAnywhere::TrustAnchor Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-trustanchor.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-step.json" + "$ref": "resources/aws-rolesanywhere-trustanchor.json" } }, "required": [ @@ -32761,9 +32722,9 @@ ], "additionalProperties": false }, - "AWS_SupportApp_SlackWorkspaceConfiguration": { + "AWS_AppSync_Resolver": { "type": "object", - "markdownDescription": "An AWS Support App resource that creates, updates, lists, and deletes Slack workspace configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackworkspaceconfiguration.html)", + "markdownDescription": "The ``AWS::AppSync::Resolver`` resource defines the logical GraphQL resolver that you attach to fields in a schema. Request and response templates for resolvers are written in Apache Velocity Template Language (VTL) format. For more information about resolvers, see [Resolver Mapping Template Reference](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference.html).\n When you submit an update, CFNLong updates resources based on differences between what you submit and the stack's current template. To cause this resource to be updated you must change a property value for this resource in the CFNshort template. Changing the S3 file content without changing a property value will not result in an update operation.\n See [Update Behaviors of Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html)", "allOf": [ { "type": "object", @@ -32771,14 +32732,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SupportApp::SlackWorkspaceConfiguration" + "AWS::AppSync::Resolver" ], "markdownEnumDescriptions": [ - "An AWS Support App resource that creates, updates, lists, and deletes Slack workspace configurations. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-slackworkspaceconfiguration.html)" + "The ``AWS::AppSync::Resolver`` resource defines the logical GraphQL resolver that you attach to fields in a schema. Request and response templates for resolvers are written in Apache Velocity Template Language (VTL) format. For more information about resolvers, see [Resolver Mapping Template Reference](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference.html).\n When you submit an update, CFNLong updates resources based on differences between what you submit and the stack's current template. To cause this resource to be updated you must change a property value for this resource in the CFNshort template. Changing the S3 file content without changing a property value will not result in an update operation.\n See [Update Behaviors of Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-resolver.html)" ] }, "Properties": { - "$ref": "resources/aws-supportapp-slackworkspaceconfiguration.json" + "$ref": "resources/aws-appsync-resolver.json" } }, "required": [ @@ -32792,9 +32753,9 @@ ], "additionalProperties": false }, - "AWS_Amplify_Domain": { + "AWS_QBusiness_DataSource": { "type": "object", - "markdownDescription": "The AWS::Amplify::Domain resource allows you to connect a custom domain to your app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html)", + "markdownDescription": "Definition of AWS::QBusiness::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html)", "allOf": [ { "type": "object", @@ -32802,14 +32763,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Amplify::Domain" + "AWS::QBusiness::DataSource" ], "markdownEnumDescriptions": [ - "The AWS::Amplify::Domain resource allows you to connect a custom domain to your app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html)" + "Definition of AWS::QBusiness::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html)" ] }, "Properties": { - "$ref": "resources/aws-amplify-domain.json" + "$ref": "resources/aws-qbusiness-datasource.json" } }, "required": [ @@ -32823,9 +32784,9 @@ ], "additionalProperties": false }, - "AWS_RolesAnywhere_TrustAnchor": { + "AWS_Invoicing_InvoiceUnit": { "type": "object", - "markdownDescription": "Definition of AWS::RolesAnywhere::TrustAnchor Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-trustanchor.html)", + "markdownDescription": "An invoice unit is a set of mutually exclusive accounts that correspond to your business entity. Invoice units allow you to separate AWS account costs and configures your invoice for each business entity. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html)", "allOf": [ { "type": "object", @@ -32833,14 +32794,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RolesAnywhere::TrustAnchor" + "AWS::Invoicing::InvoiceUnit" ], "markdownEnumDescriptions": [ - "Definition of AWS::RolesAnywhere::TrustAnchor Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-trustanchor.html)" + "An invoice unit is a set of mutually exclusive accounts that correspond to your business entity. Invoice units allow you to separate AWS account costs and configures your invoice for each business entity. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html)" ] }, "Properties": { - "$ref": "resources/aws-rolesanywhere-trustanchor.json" + "$ref": "resources/aws-invoicing-invoiceunit.json" } }, "required": [ @@ -32854,9 +32815,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_ResolverRule": { + "AWS_EC2_SubnetNetworkAclAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Route53Resolver::ResolverRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::SubnetNetworkAclAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetnetworkaclassociation.html)", "allOf": [ { "type": "object", @@ -32864,14 +32825,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::ResolverRule" + "AWS::EC2::SubnetNetworkAclAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Route53Resolver::ResolverRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverrule.html)" + "Resource Type definition for AWS::EC2::SubnetNetworkAclAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetnetworkaclassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-resolverrule.json" + "$ref": "resources/aws-ec2-subnetnetworkaclassociation.json" } }, "required": [ @@ -32885,9 +32846,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TrafficMirrorSession": { + "AWS_Neptune_DBClusterParameterGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::TrafficMirrorSession \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html)", + "markdownDescription": "The AWS::Neptune::DBClusterParameterGroup resource creates a new Amazon Neptune DB cluster parameter group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html)", "allOf": [ { "type": "object", @@ -32895,14 +32856,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TrafficMirrorSession" + "AWS::Neptune::DBClusterParameterGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::TrafficMirrorSession \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrorsession.html)" + "The AWS::Neptune::DBClusterParameterGroup resource creates a new Amazon Neptune DB cluster parameter group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbclusterparametergroup.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-trafficmirrorsession.json" + "$ref": "resources/aws-neptune-dbclusterparametergroup.json" } }, "required": [ @@ -32916,9 +32877,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolDomain": { + "AWS_IoT_SecurityProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolDomain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html)", + "markdownDescription": "A security profile defines a set of expected behaviors for devices in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html)", "allOf": [ { "type": "object", @@ -32926,19 +32887,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolDomain" + "AWS::IoT::SecurityProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolDomain \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html)" + "A security profile defines a set of expected behaviors for devices in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpooldomain.json" + "$ref": "resources/aws-iot-securityprofile.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -32947,9 +32907,9 @@ ], "additionalProperties": false }, - "AWS_AppMesh_VirtualService": { + "AWS_StepFunctions_Activity": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppMesh::VirtualService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html)", + "markdownDescription": "Resource schema for Activity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html)", "allOf": [ { "type": "object", @@ -32957,14 +32917,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppMesh::VirtualService" + "AWS::StepFunctions::Activity" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppMesh::VirtualService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-virtualservice.html)" + "Resource schema for Activity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html)" ] }, "Properties": { - "$ref": "resources/aws-appmesh-virtualservice.json" + "$ref": "resources/aws-stepfunctions-activity.json" } }, "required": [ @@ -32978,9 +32938,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_SecurityControl": { + "AWS_IoTWireless_TaskDefinition": { "type": "object", - "markdownDescription": "A security control in Security Hub describes a security best practice related to a specific resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html)", + "markdownDescription": "Creates a gateway task definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-taskdefinition.html)", "allOf": [ { "type": "object", @@ -32988,14 +32948,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::SecurityControl" + "AWS::IoTWireless::TaskDefinition" ], "markdownEnumDescriptions": [ - "A security control in Security Hub describes a security best practice related to a specific resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-securitycontrol.html)" + "Creates a gateway task definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-taskdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-securitycontrol.json" + "$ref": "resources/aws-iotwireless-taskdefinition.json" } }, "required": [ @@ -33009,9 +32969,9 @@ ], "additionalProperties": false }, - "AWS_SSMContacts_ContactChannel": { + "AWS_IoTSiteWise_Gateway": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSMContacts::ContactChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contactchannel.html)", + "markdownDescription": "Resource schema for AWS::IoTSiteWise::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html)", "allOf": [ { "type": "object", @@ -33019,18 +32979,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SSMContacts::ContactChannel" + "AWS::IoTSiteWise::Gateway" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSMContacts::ContactChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contactchannel.html)" + "Resource schema for AWS::IoTSiteWise::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html)" ] }, "Properties": { - "$ref": "resources/aws-ssmcontacts-contactchannel.json" + "$ref": "resources/aws-iotsitewise-gateway.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -33039,9 +33000,9 @@ ], "additionalProperties": false }, - "AWS_Glue_MLTransform": { + "AWS_EC2_LaunchTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::MLTransform \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html)", + "markdownDescription": "Specifies the properties for creating a launch template.\n The minimum required properties for specifying a launch template are as follows:\n + You must specify at least one property for the launch template data.\n + You can optionally specify a name for the launch template. If you do not specify a name, CFN creates a name for you.\n \n A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the ``ImageId`` property, which has no default value. If you do not specify an AMI ID for the launch template ``ImageId`` property, you must specify an AMI ID for the instance ``ImageId`` property.\n For more information, see [Launch an instance from a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html)", "allOf": [ { "type": "object", @@ -33049,14 +33010,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::MLTransform" + "AWS::EC2::LaunchTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::MLTransform \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html)" + "Specifies the properties for creating a launch template.\n The minimum required properties for specifying a launch template are as follows:\n + You must specify at least one property for the launch template data.\n + You can optionally specify a name for the launch template. If you do not specify a name, CFN creates a name for you.\n \n A launch template can contain some or all of the configuration information to launch an instance. When you launch an instance using a launch template, instance properties that are not specified in the launch template use default values, except the ``ImageId`` property, which has no default value. If you do not specify an AMI ID for the launch template ``ImageId`` property, you must specify an AMI ID for the instance ``ImageId`` property.\n For more information, see [Launch an instance from a launch template](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-mltransform.json" + "$ref": "resources/aws-ec2-launchtemplate.json" } }, "required": [ @@ -33070,9 +33031,9 @@ ], "additionalProperties": false }, - "AWS_ElasticLoadBalancing_LoadBalancer": { + "AWS_FraudDetector_Label": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancing::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancing-loadbalancer.html)", + "markdownDescription": "An label for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-label.html)", "allOf": [ { "type": "object", @@ -33080,14 +33041,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticLoadBalancing::LoadBalancer" + "AWS::FraudDetector::Label" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElasticLoadBalancing::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancing-loadbalancer.html)" + "An label for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-label.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticloadbalancing-loadbalancer.json" + "$ref": "resources/aws-frauddetector-label.json" } }, "required": [ @@ -33101,9 +33062,9 @@ ], "additionalProperties": false }, - "AWS_Personalize_Schema": { + "AWS_S3ObjectLambda_AccessPoint": { "type": "object", - "markdownDescription": "Resource schema for AWS::Personalize::Schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-schema.html)", + "markdownDescription": "The AWS::S3ObjectLambda::AccessPoint resource is an Amazon S3ObjectLambda resource type that you can use to add computation to S3 actions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspoint.html)", "allOf": [ { "type": "object", @@ -33111,14 +33072,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Personalize::Schema" + "AWS::S3ObjectLambda::AccessPoint" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Personalize::Schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-schema.html)" + "The AWS::S3ObjectLambda::AccessPoint resource is an Amazon S3ObjectLambda resource type that you can use to add computation to S3 actions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3objectlambda-accesspoint.html)" ] }, "Properties": { - "$ref": "resources/aws-personalize-schema.json" + "$ref": "resources/aws-s3objectlambda-accesspoint.json" } }, "required": [ @@ -33132,9 +33093,9 @@ ], "additionalProperties": false }, - "AWS_LakeFormation_PrincipalPermissions": { + "AWS_B2BI_Transformer": { "type": "object", - "markdownDescription": "The ``AWS::LakeFormation::PrincipalPermissions`` resource represents the permissions that a principal has on a GLUDC resource (such as GLUlong databases or GLUlong tables). When you create a ``PrincipalPermissions`` resource, the permissions are granted via the LFlong``GrantPermissions`` API operation. When you delete a ``PrincipalPermissions`` resource, the permissions on principal-resource pair are revoked via the LFlong``RevokePermissions`` API operation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-principalpermissions.html)", + "markdownDescription": "Definition of AWS::B2BI::Transformer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-transformer.html)", "allOf": [ { "type": "object", @@ -33142,14 +33103,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LakeFormation::PrincipalPermissions" + "AWS::B2BI::Transformer" ], "markdownEnumDescriptions": [ - "The ``AWS::LakeFormation::PrincipalPermissions`` resource represents the permissions that a principal has on a GLUDC resource (such as GLUlong databases or GLUlong tables). When you create a ``PrincipalPermissions`` resource, the permissions are granted via the LFlong``GrantPermissions`` API operation. When you delete a ``PrincipalPermissions`` resource, the permissions on principal-resource pair are revoked via the LFlong``RevokePermissions`` API operation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-principalpermissions.html)" + "Definition of AWS::B2BI::Transformer Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-transformer.html)" ] }, "Properties": { - "$ref": "resources/aws-lakeformation-principalpermissions.json" + "$ref": "resources/aws-b2bi-transformer.json" } }, "required": [ @@ -33163,9 +33124,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerArchive": { + "AWS_CloudTrail_ResourcePolicy": { "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerArchive Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerarchive.html)", + "markdownDescription": "Resource Type definition for AWS::CloudTrail::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -33173,18 +33134,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::MailManagerArchive" + "AWS::CloudTrail::ResourcePolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerArchive Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerarchive.html)" + "Resource Type definition for AWS::CloudTrail::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-mailmanagerarchive.json" + "$ref": "resources/aws-cloudtrail-resourcepolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -33193,9 +33155,9 @@ ], "additionalProperties": false }, - "AWS_Connect_User": { + "AWS_MediaPackageV2_Channel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-user.html)", + "markdownDescription": "

Represents an entry point into AWS Elemental MediaPackage for an ABR video content stream sent from an upstream encoder such as AWS Elemental MediaLive. The channel continuously analyzes the content that it receives and prepares it to be distributed to consumers via one or more origin endpoints.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html)", "allOf": [ { "type": "object", @@ -33203,14 +33165,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::User" + "AWS::MediaPackageV2::Channel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-user.html)" + "

Represents an entry point into AWS Elemental MediaPackage for an ABR video content stream sent from an upstream encoder such as AWS Elemental MediaLive. The channel continuously analyzes the content that it receives and prepares it to be distributed to consumers via one or more origin endpoints.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channel.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-user.json" + "$ref": "resources/aws-mediapackagev2-channel.json" } }, "required": [ @@ -33224,9 +33186,9 @@ ], "additionalProperties": false }, - "AWS_Route53Profiles_ProfileResourceAssociation": { + "AWS_DMS_MigrationProject": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Route53Profiles::ProfileResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileresourceassociation.html)", + "markdownDescription": "Resource schema for AWS::DMS::MigrationProject \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-migrationproject.html)", "allOf": [ { "type": "object", @@ -33234,19 +33196,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Profiles::ProfileResourceAssociation" + "AWS::DMS::MigrationProject" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Route53Profiles::ProfileResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileresourceassociation.html)" + "Resource schema for AWS::DMS::MigrationProject \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-migrationproject.html)" ] }, "Properties": { - "$ref": "resources/aws-route53profiles-profileresourceassociation.json" + "$ref": "resources/aws-dms-migrationproject.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -33255,9 +33216,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_StaticIp": { + "AWS_CleanRooms_PrivacyBudgetTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::StaticIp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-staticip.html)", + "markdownDescription": "Represents a privacy budget within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-privacybudgettemplate.html)", "allOf": [ { "type": "object", @@ -33265,14 +33226,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::StaticIp" + "AWS::CleanRooms::PrivacyBudgetTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::StaticIp \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-staticip.html)" + "Represents a privacy budget within a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-privacybudgettemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-staticip.json" + "$ref": "resources/aws-cleanrooms-privacybudgettemplate.json" } }, "required": [ @@ -33286,9 +33247,9 @@ ], "additionalProperties": false }, - "AWS_Connect_IntegrationAssociation": { + "AWS_WAFRegional_WebACLAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::IntegrationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-integrationassociation.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::WebACLAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html)", "allOf": [ { "type": "object", @@ -33296,14 +33257,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::IntegrationAssociation" + "AWS::WAFRegional::WebACLAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::IntegrationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-integrationassociation.html)" + "Resource Type definition for AWS::WAFRegional::WebACLAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-integrationassociation.json" + "$ref": "resources/aws-wafregional-webaclassociation.json" } }, "required": [ @@ -33317,9 +33278,9 @@ ], "additionalProperties": false }, - "AWS_FraudDetector_Label": { + "AWS_WAFv2_WebACL": { "type": "object", - "markdownDescription": "An label for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-label.html)", + "markdownDescription": "Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html)", "allOf": [ { "type": "object", @@ -33327,14 +33288,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FraudDetector::Label" + "AWS::WAFv2::WebACL" ], "markdownEnumDescriptions": [ - "An label for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-label.html)" + "Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html)" ] }, "Properties": { - "$ref": "resources/aws-frauddetector-label.json" + "$ref": "resources/aws-wafv2-webacl.json" } }, "required": [ @@ -33348,9 +33309,9 @@ ], "additionalProperties": false }, - "AWS_CustomerProfiles_EventStream": { + "AWS_EC2_TransitGatewayConnect": { "type": "object", - "markdownDescription": "An Event Stream resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html)", + "markdownDescription": "The AWS::EC2::TransitGatewayConnect type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayconnect.html)", "allOf": [ { "type": "object", @@ -33358,14 +33319,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CustomerProfiles::EventStream" + "AWS::EC2::TransitGatewayConnect" ], "markdownEnumDescriptions": [ - "An Event Stream resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventstream.html)" + "The AWS::EC2::TransitGatewayConnect type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayconnect.html)" ] }, "Properties": { - "$ref": "resources/aws-customerprofiles-eventstream.json" + "$ref": "resources/aws-ec2-transitgatewayconnect.json" } }, "required": [ @@ -33379,9 +33340,9 @@ ], "additionalProperties": false }, - "AWS_Omics_VariantStore": { + "AWS_SQS_QueuePolicy": { "type": "object", - "markdownDescription": "Definition of AWS::Omics::VariantStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-variantstore.html)", + "markdownDescription": "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queuepolicy.html)", "allOf": [ { "type": "object", @@ -33389,14 +33350,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Omics::VariantStore" + "AWS::SQS::QueuePolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::Omics::VariantStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-variantstore.html)" + "The ``AWS::SQS::QueuePolicy`` type applies a policy to SQS queues. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sqs-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queuepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-omics-variantstore.json" + "$ref": "resources/aws-sqs-queuepolicy.json" } }, "required": [ @@ -33410,9 +33371,9 @@ ], "additionalProperties": false }, - "AWS_EMR_InstanceFleetConfig": { + "AWS_Timestream_Database": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EMR::InstanceFleetConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancefleetconfig.html)", + "markdownDescription": "The AWS::Timestream::Database resource creates a Timestream database. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-database.html)", "allOf": [ { "type": "object", @@ -33420,19 +33381,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::InstanceFleetConfig" + "AWS::Timestream::Database" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EMR::InstanceFleetConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancefleetconfig.html)" + "The AWS::Timestream::Database resource creates a Timestream database. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-database.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-instancefleetconfig.json" + "$ref": "resources/aws-timestream-database.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -33441,9 +33401,9 @@ ], "additionalProperties": false }, - "AWS_NeptuneGraph_PrivateGraphEndpoint": { + "AWS_SES_EmailIdentity": { "type": "object", - "markdownDescription": "The AWS::NeptuneGraph::PrivateGraphEndpoint resource creates an Amazon NeptuneGraph PrivateGraphEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-privategraphendpoint.html)", + "markdownDescription": "Resource Type definition for AWS::SES::EmailIdentity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html)", "allOf": [ { "type": "object", @@ -33451,14 +33411,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NeptuneGraph::PrivateGraphEndpoint" + "AWS::SES::EmailIdentity" ], "markdownEnumDescriptions": [ - "The AWS::NeptuneGraph::PrivateGraphEndpoint resource creates an Amazon NeptuneGraph PrivateGraphEndpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptunegraph-privategraphendpoint.html)" + "Resource Type definition for AWS::SES::EmailIdentity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-emailidentity.html)" ] }, "Properties": { - "$ref": "resources/aws-neptunegraph-privategraphendpoint.json" + "$ref": "resources/aws-ses-emailidentity.json" } }, "required": [ @@ -33472,9 +33432,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_RouteResponse": { + "AWS_SecurityLake_DataLake": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::RouteResponse`` resource creates a route response for a WebSocket API. For more information, see [Set up Route Responses for a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-route-response.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html)", + "markdownDescription": "Resource Type definition for AWS::SecurityLake::DataLake \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html)", "allOf": [ { "type": "object", @@ -33482,19 +33442,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::RouteResponse" + "AWS::SecurityLake::DataLake" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::RouteResponse`` resource creates a route response for a WebSocket API. For more information, see [Set up Route Responses for a WebSocket API in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-route-response.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-routeresponse.html)" + "Resource Type definition for AWS::SecurityLake::DataLake \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-routeresponse.json" + "$ref": "resources/aws-securitylake-datalake.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -33503,9 +33462,9 @@ ], "additionalProperties": false }, - "AWS_S3Outposts_Bucket": { + "AWS_AIOps_InvestigationGroup": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::S3Outposts::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html)", + "markdownDescription": "Definition of AWS::AIOps::InvestigationGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html)", "allOf": [ { "type": "object", @@ -33513,14 +33472,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Outposts::Bucket" + "AWS::AIOps::InvestigationGroup" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::S3Outposts::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-bucket.html)" + "Definition of AWS::AIOps::InvestigationGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-s3outposts-bucket.json" + "$ref": "resources/aws-aiops-investigationgroup.json" } }, "required": [ @@ -33534,9 +33493,9 @@ ], "additionalProperties": false }, - "AWS_Location_APIKey": { + "AWS_CloudWatch_CompositeAlarm": { "type": "object", - "markdownDescription": "Definition of AWS::Location::APIKey Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html)", + "markdownDescription": "The AWS::CloudWatch::CompositeAlarm type specifies an alarm which aggregates the states of other Alarms (Metric or Composite Alarms) as defined by the AlarmRule expression \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html)", "allOf": [ { "type": "object", @@ -33544,14 +33503,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Location::APIKey" + "AWS::CloudWatch::CompositeAlarm" ], "markdownEnumDescriptions": [ - "Definition of AWS::Location::APIKey Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html)" + "The AWS::CloudWatch::CompositeAlarm type specifies an alarm which aggregates the states of other Alarms (Metric or Composite Alarms) as defined by the AlarmRule expression \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudwatch-compositealarm.html)" ] }, "Properties": { - "$ref": "resources/aws-location-apikey.json" + "$ref": "resources/aws-cloudwatch-compositealarm.json" } }, "required": [ @@ -33565,9 +33524,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_AIPromptVersion": { + "AWS_MediaLive_SignalMap": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::AIPromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aipromptversion.html)", + "markdownDescription": "Definition of AWS::MediaLive::SignalMap Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-signalmap.html)", "allOf": [ { "type": "object", @@ -33575,14 +33534,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::AIPromptVersion" + "AWS::MediaLive::SignalMap" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::AIPromptVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aipromptversion.html)" + "Definition of AWS::MediaLive::SignalMap Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-signalmap.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-aipromptversion.json" + "$ref": "resources/aws-medialive-signalmap.json" } }, "required": [ @@ -33596,9 +33555,9 @@ ], "additionalProperties": false }, - "AWS_DMS_ReplicationTask": { + "AWS_AppMesh_Route": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DMS::ReplicationTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html)", + "markdownDescription": "Resource Type definition for AWS::AppMesh::Route \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html)", "allOf": [ { "type": "object", @@ -33606,14 +33565,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::ReplicationTask" + "AWS::AppMesh::Route" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DMS::ReplicationTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationtask.html)" + "Resource Type definition for AWS::AppMesh::Route \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-route.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-replicationtask.json" + "$ref": "resources/aws-appmesh-route.json" } }, "required": [ @@ -33627,9 +33586,9 @@ ], "additionalProperties": false }, - "AWS_IoT_SecurityProfile": { + "AWS_EC2_NetworkInsightsPath": { "type": "object", - "markdownDescription": "A security profile defines a set of expected behaviors for devices in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html)", + "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsPath \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html)", "allOf": [ { "type": "object", @@ -33637,18 +33596,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::SecurityProfile" + "AWS::EC2::NetworkInsightsPath" ], "markdownEnumDescriptions": [ - "A security profile defines a set of expected behaviors for devices in your account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-securityprofile.html)" + "Resource schema for AWS::EC2::NetworkInsightsPath \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-securityprofile.json" + "$ref": "resources/aws-ec2-networkinsightspath.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -33657,9 +33617,9 @@ ], "additionalProperties": false }, - "AWS_EventSchemas_Discoverer": { + "AWS_Glue_Trigger": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EventSchemas::Discoverer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-discoverer.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::Trigger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html)", "allOf": [ { "type": "object", @@ -33667,14 +33627,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EventSchemas::Discoverer" + "AWS::Glue::Trigger" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EventSchemas::Discoverer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-discoverer.html)" + "Resource Type definition for AWS::Glue::Trigger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-trigger.html)" ] }, "Properties": { - "$ref": "resources/aws-eventschemas-discoverer.json" + "$ref": "resources/aws-glue-trigger.json" } }, "required": [ @@ -33688,9 +33648,9 @@ ], "additionalProperties": false }, - "AWS_WAF_ByteMatchSet": { + "AWS_ControlTower_EnabledControl": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAF::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html)", + "markdownDescription": "Enables a control on a specified target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledcontrol.html)", "allOf": [ { "type": "object", @@ -33698,14 +33658,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAF::ByteMatchSet" + "AWS::ControlTower::EnabledControl" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAF::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html)" + "Enables a control on a specified target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-enabledcontrol.html)" ] }, "Properties": { - "$ref": "resources/aws-waf-bytematchset.json" + "$ref": "resources/aws-controltower-enabledcontrol.json" } }, "required": [ @@ -33719,9 +33679,9 @@ ], "additionalProperties": false }, - "AWS_Detective_MemberInvitation": { + "AWS_Route53Resolver_FirewallRuleGroupAssociation": { "type": "object", - "markdownDescription": "Resource schema for AWS::Detective::MemberInvitation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::FirewallRuleGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroupassociation.html)", "allOf": [ { "type": "object", @@ -33729,14 +33689,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Detective::MemberInvitation" + "AWS::Route53Resolver::FirewallRuleGroupAssociation" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Detective::MemberInvitation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html)" + "Resource schema for AWS::Route53Resolver::FirewallRuleGroupAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroupassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-detective-memberinvitation.json" + "$ref": "resources/aws-route53resolver-firewallrulegroupassociation.json" } }, "required": [ @@ -33750,9 +33710,9 @@ ], "additionalProperties": false }, - "AWS_EC2_GatewayRouteTableAssociation": { + "AWS_AppRunner_VpcConnector": { "type": "object", - "markdownDescription": "Associates a gateway with a route table. The gateway and route table must be in the same VPC. This association causes the incoming traffic to the gateway to be routed according to the routes in the route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html)", + "markdownDescription": "The AWS::AppRunner::VpcConnector resource specifies an App Runner VpcConnector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcconnector.html)", "allOf": [ { "type": "object", @@ -33760,14 +33720,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::GatewayRouteTableAssociation" + "AWS::AppRunner::VpcConnector" ], "markdownEnumDescriptions": [ - "Associates a gateway with a route table. The gateway and route table must be in the same VPC. This association causes the incoming traffic to the gateway to be routed according to the routes in the route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-gatewayroutetableassociation.html)" + "The AWS::AppRunner::VpcConnector resource specifies an App Runner VpcConnector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcconnector.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-gatewayroutetableassociation.json" + "$ref": "resources/aws-apprunner-vpcconnector.json" } }, "required": [ @@ -33781,9 +33741,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SubnetCidrBlock": { + "AWS_Grafana_Workspace": { "type": "object", - "markdownDescription": "The AWS::EC2::SubnetCidrBlock resource creates association between subnet and IPv6 CIDR \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html)", + "markdownDescription": "Definition of AWS::Grafana::Workspace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-grafana-workspace.html)", "allOf": [ { "type": "object", @@ -33791,14 +33751,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SubnetCidrBlock" + "AWS::Grafana::Workspace" ], "markdownEnumDescriptions": [ - "The AWS::EC2::SubnetCidrBlock resource creates association between subnet and IPv6 CIDR \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html)" + "Definition of AWS::Grafana::Workspace Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-grafana-workspace.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-subnetcidrblock.json" + "$ref": "resources/aws-grafana-workspace.json" } }, "required": [ @@ -33812,9 +33772,9 @@ ], "additionalProperties": false }, - "AWS_XRay_ResourcePolicy": { + "AWS_ApiGateway_RestApi": { "type": "object", - "markdownDescription": "This schema provides construct and validation rules for AWS-XRay Resource Policy resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-resourcepolicy.html)", + "markdownDescription": "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html)", "allOf": [ { "type": "object", @@ -33822,19 +33782,18 @@ "Type": { "type": "string", "enum": [ - "AWS::XRay::ResourcePolicy" + "AWS::ApiGateway::RestApi" ], "markdownEnumDescriptions": [ - "This schema provides construct and validation rules for AWS-XRay Resource Policy resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-resourcepolicy.html)" + "The ``AWS::ApiGateway::RestApi`` resource creates a REST API. For more information, see [restapi:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateRestApi.html) in the *Amazon API Gateway REST API Reference*.\n On January 1, 2016, the Swagger Specification was donated to the [OpenAPI initiative](https://docs.aws.amazon.com/https://www.openapis.org/), becoming the foundation of the OpenAPI Specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html)" ] }, "Properties": { - "$ref": "resources/aws-xray-resourcepolicy.json" + "$ref": "resources/aws-apigateway-restapi.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -33843,9 +33802,9 @@ ], "additionalProperties": false }, - "AWS_EC2_IPAMScope": { + "AWS_ApiGatewayV2_Model": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EC2::IPAMScope Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamscope.html)", + "markdownDescription": "The ``AWS::ApiGatewayV2::Model`` resource updates data model for a WebSocket API. For more information, see [Model Selection Expressions](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html)", "allOf": [ { "type": "object", @@ -33853,14 +33812,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::IPAMScope" + "AWS::ApiGatewayV2::Model" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EC2::IPAMScope Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipamscope.html)" + "The ``AWS::ApiGatewayV2::Model`` resource updates data model for a WebSocket API. For more information, see [Model Selection Expressions](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-model-selection-expressions) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-model.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ipamscope.json" + "$ref": "resources/aws-apigatewayv2-model.json" } }, "required": [ @@ -33874,9 +33833,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_ApiKey": { + "AWS_ACMPCA_Certificate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppSync::ApiKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html)", + "markdownDescription": "The ``AWS::ACMPCA::Certificate`` resource is used to issue a certificate using your private certificate authority. For more information, see the [IssueCertificate](https://docs.aws.amazon.com/privateca/latest/APIReference/API_IssueCertificate.html) action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html)", "allOf": [ { "type": "object", @@ -33884,14 +33843,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::ApiKey" + "AWS::ACMPCA::Certificate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppSync::ApiKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html)" + "The ``AWS::ACMPCA::Certificate`` resource is used to issue a certificate using your private certificate authority. For more information, see the [IssueCertificate](https://docs.aws.amazon.com/privateca/latest/APIReference/API_IssueCertificate.html) action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificate.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-apikey.json" + "$ref": "resources/aws-acmpca-certificate.json" } }, "required": [ @@ -33905,9 +33864,9 @@ ], "additionalProperties": false }, - "AWS_RefactorSpaces_Environment": { + "AWS_SecurityHub_ProductSubscription": { "type": "object", - "markdownDescription": "Definition of AWS::RefactorSpaces::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-environment.html)", + "markdownDescription": "The AWS::SecurityHub::ProductSubscription resource represents a subscription to a service that is allowed to generate findings for your Security Hub account. One product subscription resource is created for each product enabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-productsubscription.html)", "allOf": [ { "type": "object", @@ -33915,18 +33874,19 @@ "Type": { "type": "string", "enum": [ - "AWS::RefactorSpaces::Environment" + "AWS::SecurityHub::ProductSubscription" ], "markdownEnumDescriptions": [ - "Definition of AWS::RefactorSpaces::Environment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-refactorspaces-environment.html)" + "The AWS::SecurityHub::ProductSubscription resource represents a subscription to a service that is allowed to generate findings for your Security Hub account. One product subscription resource is created for each product enabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-productsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-refactorspaces-environment.json" + "$ref": "resources/aws-securityhub-productsubscription.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -33935,9 +33895,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_ServiceNetworkResourceAssociation": { + "AWS_ODB_CloudVmCluster": { "type": "object", - "markdownDescription": "VpcLattice ServiceNetworkResourceAssociation CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkresourceassociation.html)", + "markdownDescription": "The AWS::ODB::CloudVmCluster resource creates a Cloud VM Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-cloudvmcluster.html)", "allOf": [ { "type": "object", @@ -33945,14 +33905,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::ServiceNetworkResourceAssociation" + "AWS::ODB::CloudVmCluster" ], "markdownEnumDescriptions": [ - "VpcLattice ServiceNetworkResourceAssociation CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkresourceassociation.html)" + "The AWS::ODB::CloudVmCluster resource creates a Cloud VM Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-cloudvmcluster.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-servicenetworkresourceassociation.json" + "$ref": "resources/aws-odb-cloudvmcluster.json" } }, "required": [ @@ -33965,9 +33925,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_OriginRequestPolicy": { + "AWS_Events_Connection": { "type": "object", - "markdownDescription": "An origin request policy.\n When it's attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:\n + The request body and the URL path (without the domain name) from the viewer request.\n + The headers that CloudFront automatically includes in every origin request, including ``Host``, ``User-Agent``, and ``X-Amz-Cf-Id``.\n + All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.\n \n CloudFront sends a request when it can't find an object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use ``CachePolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::Events::Connection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html)", "allOf": [ { "type": "object", @@ -33975,19 +33935,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::OriginRequestPolicy" + "AWS::Events::Connection" ], "markdownEnumDescriptions": [ - "An origin request policy.\n When it's attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:\n + The request body and the URL path (without the domain name) from the viewer request.\n + The headers that CloudFront automatically includes in every origin request, including ``Host``, ``User-Agent``, and ``X-Amz-Cf-Id``.\n + All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.\n \n CloudFront sends a request when it can't find an object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use ``CachePolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html)" + "Resource Type definition for AWS::Events::Connection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-originrequestpolicy.json" + "$ref": "resources/aws-events-connection.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -33996,9 +33955,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_RegexPatternSet": { + "AWS_OpenSearchServerless_LifecyclePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::RegexPatternSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html)", + "markdownDescription": "Amazon OpenSearchServerless lifecycle policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-lifecyclepolicy.html)", "allOf": [ { "type": "object", @@ -34006,14 +33965,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::RegexPatternSet" + "AWS::OpenSearchServerless::LifecyclePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::RegexPatternSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html)" + "Amazon OpenSearchServerless lifecycle policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-lifecyclepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-regexpatternset.json" + "$ref": "resources/aws-opensearchserverless-lifecyclepolicy.json" } }, "required": [ @@ -34027,9 +33986,9 @@ ], "additionalProperties": false }, - "AWS_CodeBuild_Project": { + "AWS_AppSync_FunctionConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeBuild::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html)", "allOf": [ { "type": "object", @@ -34037,14 +33996,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeBuild::Project" + "AWS::AppSync::FunctionConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeBuild::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-codebuild-project.json" + "$ref": "resources/aws-appsync-functionconfiguration.json" } }, "required": [ @@ -34058,9 +34017,9 @@ ], "additionalProperties": false }, - "AWS_EFS_FileSystem": { + "AWS_GlobalAccelerator_CrossAccountAttachment": { "type": "object", - "markdownDescription": "The ``AWS::EFS::FileSystem`` resource creates a new, empty file system in EFSlong (EFS). You must create a mount target ([AWS::EFS::MountTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)) to mount your EFS file system on an EC2 or other AWS cloud compute resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html)", + "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::CrossAccountAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-crossaccountattachment.html)", "allOf": [ { "type": "object", @@ -34068,18 +34027,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EFS::FileSystem" + "AWS::GlobalAccelerator::CrossAccountAttachment" ], "markdownEnumDescriptions": [ - "The ``AWS::EFS::FileSystem`` resource creates a new, empty file system in EFSlong (EFS). You must create a mount target ([AWS::EFS::MountTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)) to mount your EFS file system on an EC2 or other AWS cloud compute resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html)" + "Resource Type definition for AWS::GlobalAccelerator::CrossAccountAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-crossaccountattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-efs-filesystem.json" + "$ref": "resources/aws-globalaccelerator-crossaccountattachment.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -34088,9 +34048,9 @@ ], "additionalProperties": false }, - "AWS_Events_Rule": { + "AWS_IoT_AccountAuditConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Events::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)", + "markdownDescription": "Configures the Device Defender audit settings for this account. Settings include how audit notifications are sent and which audit checks are enabled or disabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html)", "allOf": [ { "type": "object", @@ -34098,18 +34058,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Events::Rule" + "AWS::IoT::AccountAuditConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Events::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html)" + "Configures the Device Defender audit settings for this account. Settings include how audit notifications are sent and which audit checks are enabled or disabled. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-accountauditconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-events-rule.json" + "$ref": "resources/aws-iot-accountauditconfiguration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -34118,9 +34079,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_Workflow": { + "AWS_WAF_WebACL": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-workflow.html)", + "markdownDescription": "Resource Type definition for AWS::WAF::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html)", "allOf": [ { "type": "object", @@ -34128,14 +34089,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::Workflow" + "AWS::WAF::WebACL" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-workflow.html)" + "Resource Type definition for AWS::WAF::WebACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-workflow.json" + "$ref": "resources/aws-waf-webacl.json" } }, "required": [ @@ -34149,9 +34110,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_Function": { + "AWS_S3Tables_TablePolicy": { "type": "object", - "markdownDescription": "Creates a CF function.\n To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function, and the function\u2019s stage.\n By default, when you create a function, it\u2019s in the ``DEVELOPMENT`` stage. In this stage, you can [test the function](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/test-function.html) in the CF console (or with ``TestFunction`` in the CF API).\n When you\u2019re ready to use your function with a CF distribution, publish the function to the ``LIVE`` stage. You can do this in the CF console, with ``PublishFunction`` in the CF API, or by updating the ``AWS::CloudFront::Function`` resource with the ``AutoPublish`` property set to ``true``. When the function is published to the ``LIVE`` stage, you can attach it to a distribution\u2019s cache behavior, using the function\u2019s ARN.\n To automatically publish the function to the ``LIVE`` stage when it\u2019s created, set the ``AutoPublish`` property to ``true``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html)", + "markdownDescription": "Resource Type definition for AWS::S3Tables::TablePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablepolicy.html)", "allOf": [ { "type": "object", @@ -34159,14 +34120,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::Function" + "AWS::S3Tables::TablePolicy" ], "markdownEnumDescriptions": [ - "Creates a CF function.\n To create a function, you provide the function code and some configuration information about the function. The response contains an Amazon Resource Name (ARN) that uniquely identifies the function, and the function\u2019s stage.\n By default, when you create a function, it\u2019s in the ``DEVELOPMENT`` stage. In this stage, you can [test the function](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/test-function.html) in the CF console (or with ``TestFunction`` in the CF API).\n When you\u2019re ready to use your function with a CF distribution, publish the function to the ``LIVE`` stage. You can do this in the CF console, with ``PublishFunction`` in the CF API, or by updating the ``AWS::CloudFront::Function`` resource with the ``AutoPublish`` property set to ``true``. When the function is published to the ``LIVE`` stage, you can attach it to a distribution\u2019s cache behavior, using the function\u2019s ARN.\n To automatically publish the function to the ``LIVE`` stage when it\u2019s created, set the ``AutoPublish`` property to ``true``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-function.html)" + "Resource Type definition for AWS::S3Tables::TablePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-function.json" + "$ref": "resources/aws-s3tables-tablepolicy.json" } }, "required": [ @@ -34180,9 +34141,9 @@ ], "additionalProperties": false }, - "AWS_M2_Application": { + "AWS_MSK_Replicator": { "type": "object", - "markdownDescription": "Represents an application that runs on an AWS Mainframe Modernization Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-application.html)", + "markdownDescription": "Resource Type definition for AWS::MSK::Replicator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-replicator.html)", "allOf": [ { "type": "object", @@ -34190,14 +34151,14 @@ "Type": { "type": "string", "enum": [ - "AWS::M2::Application" + "AWS::MSK::Replicator" ], "markdownEnumDescriptions": [ - "Represents an application that runs on an AWS Mainframe Modernization Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-application.html)" + "Resource Type definition for AWS::MSK::Replicator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-replicator.html)" ] }, "Properties": { - "$ref": "resources/aws-m2-application.json" + "$ref": "resources/aws-msk-replicator.json" } }, "required": [ @@ -34211,9 +34172,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkInterfaceAttachment": { + "AWS_FraudDetector_EntityType": { "type": "object", - "markdownDescription": "Attaches an elastic network interface (ENI) to an Amazon EC2 instance. You can use this resource type to attach additional network interfaces to an instance without interruption. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfaceattachment.html)", + "markdownDescription": "An entity type for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-entitytype.html)", "allOf": [ { "type": "object", @@ -34221,14 +34182,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkInterfaceAttachment" + "AWS::FraudDetector::EntityType" ], "markdownEnumDescriptions": [ - "Attaches an elastic network interface (ENI) to an Amazon EC2 instance. You can use this resource type to attach additional network interfaces to an instance without interruption. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterfaceattachment.html)" + "An entity type for fraud detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-entitytype.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkinterfaceattachment.json" + "$ref": "resources/aws-frauddetector-entitytype.json" } }, "required": [ @@ -34242,9 +34203,9 @@ ], "additionalProperties": false }, - "AWS_PCS_ComputeNodeGroup": { + "AWS_DataSync_LocationNFS": { "type": "object", - "markdownDescription": "AWS::PCS::ComputeNodeGroup resource creates an AWS PCS compute node group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html)", + "markdownDescription": "Resource schema for AWS::DataSync::LocationNFS \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html)", "allOf": [ { "type": "object", @@ -34252,14 +34213,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCS::ComputeNodeGroup" + "AWS::DataSync::LocationNFS" ], "markdownEnumDescriptions": [ - "AWS::PCS::ComputeNodeGroup resource creates an AWS PCS compute node group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html)" + "Resource schema for AWS::DataSync::LocationNFS \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html)" ] }, "Properties": { - "$ref": "resources/aws-pcs-computenodegroup.json" + "$ref": "resources/aws-datasync-locationnfs.json" } }, "required": [ @@ -34273,9 +34234,9 @@ ], "additionalProperties": false }, - "AWS_Batch_SchedulingPolicy": { + "AWS_Route53Resolver_OutpostResolver": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Batch::SchedulingPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-schedulingpolicy.html)", + "markdownDescription": "Resource schema for AWS::Route53Resolver::OutpostResolver. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-outpostresolver.html)", "allOf": [ { "type": "object", @@ -34283,18 +34244,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Batch::SchedulingPolicy" + "AWS::Route53Resolver::OutpostResolver" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Batch::SchedulingPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-schedulingpolicy.html)" + "Resource schema for AWS::Route53Resolver::OutpostResolver. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-outpostresolver.html)" ] }, "Properties": { - "$ref": "resources/aws-batch-schedulingpolicy.json" + "$ref": "resources/aws-route53resolver-outpostresolver.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -34303,9 +34265,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_Detector": { + "AWS_Organizations_Account": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GuardDuty::Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html)", + "markdownDescription": "You can use AWS::Organizations::Account to manage accounts in organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-account.html)", "allOf": [ { "type": "object", @@ -34313,14 +34275,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::Detector" + "AWS::Organizations::Account" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GuardDuty::Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-detector.html)" + "You can use AWS::Organizations::Account to manage accounts in organization. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-organizations-account.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-detector.json" + "$ref": "resources/aws-organizations-account.json" } }, "required": [ @@ -34334,9 +34296,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_VpcOrigin": { + "AWS_HealthImaging_Datastore": { "type": "object", - "markdownDescription": "An Amazon CloudFront VPC origin. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-vpcorigin.html)", + "markdownDescription": "Definition of AWS::HealthImaging::Datastore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthimaging-datastore.html)", "allOf": [ { "type": "object", @@ -34344,19 +34306,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::VpcOrigin" + "AWS::HealthImaging::Datastore" ], "markdownEnumDescriptions": [ - "An Amazon CloudFront VPC origin. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-vpcorigin.html)" + "Definition of AWS::HealthImaging::Datastore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthimaging-datastore.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-vpcorigin.json" + "$ref": "resources/aws-healthimaging-datastore.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -34365,9 +34326,9 @@ ], "additionalProperties": false }, - "AWS_DevOpsGuru_NotificationChannel": { + "AWS_QBusiness_DataAccessor": { "type": "object", - "markdownDescription": "This resource schema represents the NotificationChannel resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-notificationchannel.html)", + "markdownDescription": "Definition of AWS::QBusiness::DataAccessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-dataaccessor.html)", "allOf": [ { "type": "object", @@ -34375,14 +34336,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DevOpsGuru::NotificationChannel" + "AWS::QBusiness::DataAccessor" ], "markdownEnumDescriptions": [ - "This resource schema represents the NotificationChannel resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-notificationchannel.html)" + "Definition of AWS::QBusiness::DataAccessor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-dataaccessor.html)" ] }, "Properties": { - "$ref": "resources/aws-devopsguru-notificationchannel.json" + "$ref": "resources/aws-qbusiness-dataaccessor.json" } }, "required": [ @@ -34396,9 +34357,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_Dashboard": { + "AWS_XRay_Group": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html)", + "markdownDescription": "This schema provides construct and validation rules for AWS-XRay Group resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-group.html)", "allOf": [ { "type": "object", @@ -34406,14 +34367,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::Dashboard" + "AWS::XRay::Group" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::Dashboard \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dashboard.html)" + "This schema provides construct and validation rules for AWS-XRay Group resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-group.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-dashboard.json" + "$ref": "resources/aws-xray-group.json" } }, "required": [ @@ -34427,9 +34388,9 @@ ], "additionalProperties": false }, - "AWS_Comprehend_Flywheel": { + "AWS_GameLift_MatchmakingRuleSet": { "type": "object", - "markdownDescription": "The AWS::Comprehend::Flywheel resource creates an Amazon Comprehend Flywheel that enables customer to train their model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html)", + "markdownDescription": "The AWS::GameLift::MatchmakingRuleSet resource creates an Amazon GameLift (GameLift) matchmaking rule set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html)", "allOf": [ { "type": "object", @@ -34437,14 +34398,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Comprehend::Flywheel" + "AWS::GameLift::MatchmakingRuleSet" ], "markdownEnumDescriptions": [ - "The AWS::Comprehend::Flywheel resource creates an Amazon Comprehend Flywheel that enables customer to train their model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-comprehend-flywheel.html)" + "The AWS::GameLift::MatchmakingRuleSet resource creates an Amazon GameLift (GameLift) matchmaking rule set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html)" ] }, "Properties": { - "$ref": "resources/aws-comprehend-flywheel.json" + "$ref": "resources/aws-gamelift-matchmakingruleset.json" } }, "required": [ @@ -34458,9 +34419,9 @@ ], "additionalProperties": false }, - "AWS_Config_OrganizationConformancePack": { + "AWS_Notifications_ManagedNotificationAccountContactAssociation": { "type": "object", - "markdownDescription": "Resource schema for AWS::Config::OrganizationConformancePack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html)", + "markdownDescription": "Resource Type definition for ManagedNotificationAccountContactAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationaccountcontactassociation.html)", "allOf": [ { "type": "object", @@ -34468,14 +34429,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::OrganizationConformancePack" + "AWS::Notifications::ManagedNotificationAccountContactAssociation" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Config::OrganizationConformancePack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconformancepack.html)" + "Resource Type definition for ManagedNotificationAccountContactAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-managednotificationaccountcontactassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-config-organizationconformancepack.json" + "$ref": "resources/aws-notifications-managednotificationaccountcontactassociation.json" } }, "required": [ @@ -34489,9 +34450,9 @@ ], "additionalProperties": false }, - "AWS_SSM_MaintenanceWindow": { + "AWS_AppMesh_Mesh": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSM::MaintenanceWindow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html)", + "markdownDescription": "Resource Type definition for AWS::AppMesh::Mesh \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html)", "allOf": [ { "type": "object", @@ -34499,19 +34460,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::MaintenanceWindow" + "AWS::AppMesh::Mesh" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSM::MaintenanceWindow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindow.html)" + "Resource Type definition for AWS::AppMesh::Mesh \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-maintenancewindow.json" + "$ref": "resources/aws-appmesh-mesh.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -34520,9 +34480,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_BridgeOutput": { + "AWS_Bedrock_IntelligentPromptRouter": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::BridgeOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgeoutput.html)", + "markdownDescription": "Definition of AWS::Bedrock::IntelligentPromptRouter Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-intelligentpromptrouter.html)", "allOf": [ { "type": "object", @@ -34530,14 +34490,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::BridgeOutput" + "AWS::Bedrock::IntelligentPromptRouter" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::BridgeOutput \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-bridgeoutput.html)" + "Definition of AWS::Bedrock::IntelligentPromptRouter Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-intelligentpromptrouter.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-bridgeoutput.json" + "$ref": "resources/aws-bedrock-intelligentpromptrouter.json" } }, "required": [ @@ -34551,9 +34511,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_EventSourceMapping": { + "AWS_SecurityLake_SubscriberNotification": { "type": "object", - "markdownDescription": "The ``AWS::Lambda::EventSourceMapping`` resource creates a mapping between an event source and an LAMlong function. LAM reads items from the event source and triggers the function.\n For details about each event source type, see the following topics. In particular, each of the topics describes the required and optional parameters for the specific event source. \n + [Configuring a Dynamo DB stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#services-dynamodb-eventsourcemapping) \n + [Configuring a Kinesis stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#services-kinesis-eventsourcemapping) \n + [Configuring an SQS queue as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-eventsource) \n + [Configuring an MQ broker as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html#services-mq-eventsourcemapping) \n + [Configuring MSK as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html) \n + [Configuring Self-Managed Apache Kafka as an event source](https://docs.aws.amazon.com/lambda/latest/dg/kafka-smaa.html) \n + [Configuring Amazon DocumentDB as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-documentdb.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)", + "markdownDescription": "Resource Type definition for AWS::SecurityLake::SubscriberNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscribernotification.html)", "allOf": [ { "type": "object", @@ -34561,14 +34521,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::EventSourceMapping" + "AWS::SecurityLake::SubscriberNotification" ], "markdownEnumDescriptions": [ - "The ``AWS::Lambda::EventSourceMapping`` resource creates a mapping between an event source and an LAMlong function. LAM reads items from the event source and triggers the function.\n For details about each event source type, see the following topics. In particular, each of the topics describes the required and optional parameters for the specific event source. \n + [Configuring a Dynamo DB stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html#services-dynamodb-eventsourcemapping) \n + [Configuring a Kinesis stream as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html#services-kinesis-eventsourcemapping) \n + [Configuring an SQS queue as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-eventsource) \n + [Configuring an MQ broker as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-mq.html#services-mq-eventsourcemapping) \n + [Configuring MSK as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html) \n + [Configuring Self-Managed Apache Kafka as an event source](https://docs.aws.amazon.com/lambda/latest/dg/kafka-smaa.html) \n + [Configuring Amazon DocumentDB as an event source](https://docs.aws.amazon.com/lambda/latest/dg/with-documentdb.html) \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html)" + "Resource Type definition for AWS::SecurityLake::SubscriberNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscribernotification.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-eventsourcemapping.json" + "$ref": "resources/aws-securitylake-subscribernotification.json" } }, "required": [ @@ -34582,9 +34542,9 @@ ], "additionalProperties": false }, - "AWS_Notifications_NotificationConfiguration": { + "AWS_MediaPackageV2_ChannelPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Notifications::NotificationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationconfiguration.html)", + "markdownDescription": "

Represents a resource-based policy that allows or denies access to a channel.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html)", "allOf": [ { "type": "object", @@ -34592,14 +34552,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Notifications::NotificationConfiguration" + "AWS::MediaPackageV2::ChannelPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Notifications::NotificationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationconfiguration.html)" + "

Represents a resource-based policy that allows or denies access to a channel.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-channelpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-notifications-notificationconfiguration.json" + "$ref": "resources/aws-mediapackagev2-channelpolicy.json" } }, "required": [ @@ -34613,9 +34573,9 @@ ], "additionalProperties": false }, - "AWS_GuardDuty_IPSet": { + "AWS_ApiGateway_DomainNameV2": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GuardDuty::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html)", + "markdownDescription": "Resource Type definition for AWS::ApiGateway::DomainNameV2. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2.html)", "allOf": [ { "type": "object", @@ -34623,19 +34583,18 @@ "Type": { "type": "string", "enum": [ - "AWS::GuardDuty::IPSet" + "AWS::ApiGateway::DomainNameV2" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GuardDuty::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html)" + "Resource Type definition for AWS::ApiGateway::DomainNameV2. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-domainnamev2.html)" ] }, "Properties": { - "$ref": "resources/aws-guardduty-ipset.json" + "$ref": "resources/aws-apigateway-domainnamev2.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -34644,9 +34603,9 @@ ], "additionalProperties": false }, - "AWS_IoT_PolicyPrincipalAttachment": { + "AWS_EC2_RouteServerEndpoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::PolicyPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html)", + "markdownDescription": "VPC Route Server Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html)", "allOf": [ { "type": "object", @@ -34654,14 +34613,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::PolicyPrincipalAttachment" + "AWS::EC2::RouteServerEndpoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::PolicyPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html)" + "VPC Route Server Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-policyprincipalattachment.json" + "$ref": "resources/aws-ec2-routeserverendpoint.json" } }, "required": [ @@ -34675,9 +34634,9 @@ ], "additionalProperties": false }, - "AWS_MediaTailor_SourceLocation": { + "AWS_ApiGateway_ApiKey": { "type": "object", - "markdownDescription": "Definition of AWS::MediaTailor::SourceLocation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-sourcelocation.html)", + "markdownDescription": "The ``AWS::ApiGateway::ApiKey`` resource creates a unique key that you can distribute to clients who are executing API Gateway ``Method`` resources that require an API key. To specify which API key clients must use, map the API key with the ``RestApi`` and ``Stage`` resources that include the methods that require a key. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html)", "allOf": [ { "type": "object", @@ -34685,19 +34644,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaTailor::SourceLocation" + "AWS::ApiGateway::ApiKey" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaTailor::SourceLocation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-sourcelocation.html)" + "The ``AWS::ApiGateway::ApiKey`` resource creates a unique key that you can distribute to clients who are executing API Gateway ``Method`` resources that require an API key. To specify which API key clients must use, map the API key with the ``RestApi`` and ``Stage`` resources that include the methods that require a key. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html)" ] }, "Properties": { - "$ref": "resources/aws-mediatailor-sourcelocation.json" + "$ref": "resources/aws-apigateway-apikey.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -34706,9 +34664,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_AIGuardrail": { + "AWS_IVS_StorageConfiguration": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::AIGuardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrail.html)", + "markdownDescription": "Resource Type definition for AWS::IVS::StorageConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-storageconfiguration.html)", "allOf": [ { "type": "object", @@ -34716,14 +34674,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::AIGuardrail" + "AWS::IVS::StorageConfiguration" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::AIGuardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrail.html)" + "Resource Type definition for AWS::IVS::StorageConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-storageconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-aiguardrail.json" + "$ref": "resources/aws-ivs-storageconfiguration.json" } }, "required": [ @@ -34737,9 +34695,9 @@ ], "additionalProperties": false }, - "AWS_KMS_ReplicaKey": { + "AWS_S3_AccessGrantsInstance": { "type": "object", - "markdownDescription": "The AWS::KMS::ReplicaKey resource specifies a multi-region replica AWS KMS key in AWS Key Management Service (AWS KMS). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html)", + "markdownDescription": "The AWS::S3::AccessGrantsInstance resource is an Amazon S3 resource type that hosts Access Grants and their associated locations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantsinstance.html)", "allOf": [ { "type": "object", @@ -34747,19 +34705,18 @@ "Type": { "type": "string", "enum": [ - "AWS::KMS::ReplicaKey" + "AWS::S3::AccessGrantsInstance" ], "markdownEnumDescriptions": [ - "The AWS::KMS::ReplicaKey resource specifies a multi-region replica AWS KMS key in AWS Key Management Service (AWS KMS). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html)" + "The AWS::S3::AccessGrantsInstance resource is an Amazon S3 resource type that hosts Access Grants and their associated locations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accessgrantsinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-kms-replicakey.json" + "$ref": "resources/aws-s3-accessgrantsinstance.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -34768,9 +34725,9 @@ ], "additionalProperties": false }, - "AWS_Config_RemediationConfiguration": { + "AWS_EC2_FlowLog": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Config::RemediationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html)", + "markdownDescription": "Specifies a VPC flow log, which enables you to capture IP traffic for a specific network interface, subnet, or VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html)", "allOf": [ { "type": "object", @@ -34778,14 +34735,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::RemediationConfiguration" + "AWS::EC2::FlowLog" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Config::RemediationConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-remediationconfiguration.html)" + "Specifies a VPC flow log, which enables you to capture IP traffic for a specific network interface, subnet, or VPC. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html)" ] }, "Properties": { - "$ref": "resources/aws-config-remediationconfiguration.json" + "$ref": "resources/aws-ec2-flowlog.json" } }, "required": [ @@ -34799,9 +34756,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolIdentityProvider": { + "AWS_ODB_CloudAutonomousVmCluster": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolIdentityProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html)", + "markdownDescription": "The AWS::ODB::CloudAutonomousVmCluster resource creates a Cloud Autonomous VM Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-cloudautonomousvmcluster.html)", "allOf": [ { "type": "object", @@ -34809,19 +34766,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolIdentityProvider" + "AWS::ODB::CloudAutonomousVmCluster" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolIdentityProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html)" + "The AWS::ODB::CloudAutonomousVmCluster resource creates a Cloud Autonomous VM Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-odb-cloudautonomousvmcluster.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpoolidentityprovider.json" + "$ref": "resources/aws-odb-cloudautonomousvmcluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -34830,9 +34786,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_AIAgent": { + "AWS_M2_Environment": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::AIAgent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagent.html)", + "markdownDescription": "Represents a runtime environment that can run migrated mainframe applications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-environment.html)", "allOf": [ { "type": "object", @@ -34840,14 +34796,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::AIAgent" + "AWS::M2::Environment" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::AIAgent Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiagent.html)" + "Represents a runtime environment that can run migrated mainframe applications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-m2-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-aiagent.json" + "$ref": "resources/aws-m2-environment.json" } }, "required": [ @@ -34861,9 +34817,9 @@ ], "additionalProperties": false }, - "AWS_SES_ReceiptRule": { + "AWS_SNS_TopicPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::ReceiptRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html)", + "markdownDescription": "The ``AWS::SNS::TopicPolicy`` resource associates SNS topics with a policy. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html)", "allOf": [ { "type": "object", @@ -34871,14 +34827,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::ReceiptRule" + "AWS::SNS::TopicPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::ReceiptRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-receiptrule.html)" + "The ``AWS::SNS::TopicPolicy`` resource associates SNS topics with a policy. For an example snippet, see [Declaring an policy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-iam.html#scenario-sns-policy) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topicpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-receiptrule.json" + "$ref": "resources/aws-sns-topicpolicy.json" } }, "required": [ @@ -34892,9 +34848,9 @@ ], "additionalProperties": false }, - "AWS_LakeFormation_DataCellsFilter": { + "AWS_Logs_Integration": { "type": "object", - "markdownDescription": "A resource schema representing a Lake Formation Data Cells Filter. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datacellsfilter.html)", + "markdownDescription": "Resource Schema for Logs Integration Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-integration.html)", "allOf": [ { "type": "object", @@ -34902,14 +34858,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LakeFormation::DataCellsFilter" + "AWS::Logs::Integration" ], "markdownEnumDescriptions": [ - "A resource schema representing a Lake Formation Data Cells Filter. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datacellsfilter.html)" + "Resource Schema for Logs Integration Resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-integration.html)" ] }, "Properties": { - "$ref": "resources/aws-lakeformation-datacellsfilter.json" + "$ref": "resources/aws-logs-integration.json" } }, "required": [ @@ -34923,9 +34879,9 @@ ], "additionalProperties": false }, - "AWS_HealthImaging_Datastore": { + "AWS_S3Tables_TableBucketPolicy": { "type": "object", - "markdownDescription": "Definition of AWS::HealthImaging::Datastore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthimaging-datastore.html)", + "markdownDescription": "Applies an IAM resource policy to a table bucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucketpolicy.html)", "allOf": [ { "type": "object", @@ -34933,18 +34889,19 @@ "Type": { "type": "string", "enum": [ - "AWS::HealthImaging::Datastore" + "AWS::S3Tables::TableBucketPolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::HealthImaging::Datastore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-healthimaging-datastore.html)" + "Applies an IAM resource policy to a table bucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucketpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-healthimaging-datastore.json" + "$ref": "resources/aws-s3tables-tablebucketpolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -34953,9 +34910,9 @@ ], "additionalProperties": false }, - "AWS_ResilienceHub_ResiliencyPolicy": { + "AWS_GuardDuty_Master": { "type": "object", - "markdownDescription": "Resource Type Definition for Resiliency Policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-resiliencypolicy.html)", + "markdownDescription": "GuardDuty Master resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html)", "allOf": [ { "type": "object", @@ -34963,14 +34920,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ResilienceHub::ResiliencyPolicy" + "AWS::GuardDuty::Master" ], "markdownEnumDescriptions": [ - "Resource Type Definition for Resiliency Policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resiliencehub-resiliencypolicy.html)" + "GuardDuty Master resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-master.html)" ] }, "Properties": { - "$ref": "resources/aws-resiliencehub-resiliencypolicy.json" + "$ref": "resources/aws-guardduty-master.json" } }, "required": [ @@ -34984,9 +34941,9 @@ ], "additionalProperties": false }, - "AWS_AppStream_StackUserAssociation": { + "AWS_ACMPCA_Permission": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppStream::StackUserAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html)", + "markdownDescription": "Permission set on private certificate authority \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-permission.html)", "allOf": [ { "type": "object", @@ -34994,14 +34951,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppStream::StackUserAssociation" + "AWS::ACMPCA::Permission" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppStream::StackUserAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html)" + "Permission set on private certificate authority \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-permission.html)" ] }, "Properties": { - "$ref": "resources/aws-appstream-stackuserassociation.json" + "$ref": "resources/aws-acmpca-permission.json" } }, "required": [ @@ -35015,9 +34972,9 @@ ], "additionalProperties": false }, - "AWS_PCAConnectorAD_DirectoryRegistration": { + "AWS_OpenSearchServerless_Index": { "type": "object", - "markdownDescription": "Definition of AWS::PCAConnectorAD::DirectoryRegistration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-directoryregistration.html)", + "markdownDescription": "An OpenSearch Serverless index resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-index.html)", "allOf": [ { "type": "object", @@ -35025,14 +34982,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PCAConnectorAD::DirectoryRegistration" + "AWS::OpenSearchServerless::Index" ], "markdownEnumDescriptions": [ - "Definition of AWS::PCAConnectorAD::DirectoryRegistration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-directoryregistration.html)" + "An OpenSearch Serverless index resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-index.html)" ] }, "Properties": { - "$ref": "resources/aws-pcaconnectorad-directoryregistration.json" + "$ref": "resources/aws-opensearchserverless-index.json" } }, "required": [ @@ -35046,9 +35003,9 @@ ], "additionalProperties": false }, - "AWS_GreengrassV2_ComponentVersion": { + "AWS_CodeStarNotifications_NotificationRule": { "type": "object", - "markdownDescription": "Resource for Greengrass component version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html)", + "markdownDescription": "Resource Type definition for AWS::CodeStarNotifications::NotificationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html)", "allOf": [ { "type": "object", @@ -35056,18 +35013,19 @@ "Type": { "type": "string", "enum": [ - "AWS::GreengrassV2::ComponentVersion" + "AWS::CodeStarNotifications::NotificationRule" ], "markdownEnumDescriptions": [ - "Resource for Greengrass component version. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-componentversion.html)" + "Resource Type definition for AWS::CodeStarNotifications::NotificationRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrassv2-componentversion.json" + "$ref": "resources/aws-codestarnotifications-notificationrule.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35076,9 +35034,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalogAppRegistry_Application": { + "AWS_PinpointEmail_Identity": { "type": "object", - "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html)", + "markdownDescription": "Resource Type definition for AWS::PinpointEmail::Identity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html)", "allOf": [ { "type": "object", @@ -35086,14 +35044,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalogAppRegistry::Application" + "AWS::PinpointEmail::Identity" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::ServiceCatalogAppRegistry::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-application.html)" + "Resource Type definition for AWS::PinpointEmail::Identity \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-identity.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalogappregistry-application.json" + "$ref": "resources/aws-pinpointemail-identity.json" } }, "required": [ @@ -35107,9 +35065,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_LinkAssociation": { + "AWS_LakeFormation_PrincipalPermissions": { "type": "object", - "markdownDescription": "The AWS::NetworkManager::LinkAssociation type associates a link to a device. The device and link must be in the same global network and the same site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html)", + "markdownDescription": "The ``AWS::LakeFormation::PrincipalPermissions`` resource represents the permissions that a principal has on a GLUDC resource (such as GLUlong databases or GLUlong tables). When you create a ``PrincipalPermissions`` resource, the permissions are granted via the LFlong``GrantPermissions`` API operation. When you delete a ``PrincipalPermissions`` resource, the permissions on principal-resource pair are revoked via the LFlong``RevokePermissions`` API operation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-principalpermissions.html)", "allOf": [ { "type": "object", @@ -35117,14 +35075,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::LinkAssociation" + "AWS::LakeFormation::PrincipalPermissions" ], "markdownEnumDescriptions": [ - "The AWS::NetworkManager::LinkAssociation type associates a link to a device. The device and link must be in the same global network and the same site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-linkassociation.html)" + "The ``AWS::LakeFormation::PrincipalPermissions`` resource represents the permissions that a principal has on a GLUDC resource (such as GLUlong databases or GLUlong tables). When you create a ``PrincipalPermissions`` resource, the permissions are granted via the LFlong``GrantPermissions`` API operation. When you delete a ``PrincipalPermissions`` resource, the permissions on principal-resource pair are revoked via the LFlong``RevokePermissions`` API operation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-principalpermissions.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-linkassociation.json" + "$ref": "resources/aws-lakeformation-principalpermissions.json" } }, "required": [ @@ -35138,9 +35096,9 @@ ], "additionalProperties": false }, - "AWS_DataBrew_Ruleset": { + "AWS_DSQL_Cluster": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataBrew::Ruleset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-ruleset.html)", + "markdownDescription": "Resource Type definition for AWS::DSQL::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html)", "allOf": [ { "type": "object", @@ -35148,19 +35106,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DataBrew::Ruleset" + "AWS::DSQL::Cluster" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataBrew::Ruleset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-ruleset.html)" + "Resource Type definition for AWS::DSQL::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-databrew-ruleset.json" + "$ref": "resources/aws-dsql-cluster.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -35169,9 +35126,9 @@ ], "additionalProperties": false }, - "AWS_EntityResolution_IdMappingWorkflow": { + "AWS_MPA_ApprovalTeam": { "type": "object", - "markdownDescription": "IdMappingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idmappingworkflow.html)", + "markdownDescription": "Resource Type definition for AWS::MPA::ApprovalTeam. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html)", "allOf": [ { "type": "object", @@ -35179,14 +35136,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EntityResolution::IdMappingWorkflow" + "AWS::MPA::ApprovalTeam" ], "markdownEnumDescriptions": [ - "IdMappingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idmappingworkflow.html)" + "Resource Type definition for AWS::MPA::ApprovalTeam. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mpa-approvalteam.html)" ] }, "Properties": { - "$ref": "resources/aws-entityresolution-idmappingworkflow.json" + "$ref": "resources/aws-mpa-approvalteam.json" } }, "required": [ @@ -35200,9 +35157,9 @@ ], "additionalProperties": false }, - "AWS_Connect_Rule": { + "AWS_ServiceCatalogAppRegistry_ResourceAssociation": { "type": "object", - "markdownDescription": "Creates a rule for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-rule.html)", + "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html)", "allOf": [ { "type": "object", @@ -35210,14 +35167,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::Rule" + "AWS::ServiceCatalogAppRegistry::ResourceAssociation" ], "markdownEnumDescriptions": [ - "Creates a rule for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-rule.html)" + "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-rule.json" + "$ref": "resources/aws-servicecatalogappregistry-resourceassociation.json" } }, "required": [ @@ -35231,9 +35188,9 @@ ], "additionalProperties": false }, - "AWS_Events_Connection": { + "AWS_Deadline_Queue": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Events::Connection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html)", + "markdownDescription": "Definition of AWS::Deadline::Queue Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queue.html)", "allOf": [ { "type": "object", @@ -35241,18 +35198,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Events::Connection" + "AWS::Deadline::Queue" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Events::Connection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-connection.html)" + "Definition of AWS::Deadline::Queue Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queue.html)" ] }, "Properties": { - "$ref": "resources/aws-events-connection.json" + "$ref": "resources/aws-deadline-queue.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35261,9 +35219,9 @@ ], "additionalProperties": false }, - "AWS_ElasticLoadBalancingV2_Listener": { + "AWS_Forecast_DatasetGroup": { "type": "object", - "markdownDescription": "Specifies a listener for an Application Load Balancer, Network Load Balancer, or Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html)", + "markdownDescription": "Represents a dataset group that holds a collection of related datasets \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-datasetgroup.html)", "allOf": [ { "type": "object", @@ -35271,14 +35229,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticLoadBalancingV2::Listener" + "AWS::Forecast::DatasetGroup" ], "markdownEnumDescriptions": [ - "Specifies a listener for an Application Load Balancer, Network Load Balancer, or Gateway Load Balancer. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html)" + "Represents a dataset group that holds a collection of related datasets \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-forecast-datasetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticloadbalancingv2-listener.json" + "$ref": "resources/aws-forecast-datasetgroup.json" } }, "required": [ @@ -35292,9 +35250,9 @@ ], "additionalProperties": false }, - "AWS_EC2_CustomerGateway": { + "AWS_GameLift_ContainerFleet": { "type": "object", - "markdownDescription": "Specifies a customer gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html)", + "markdownDescription": "The AWS::GameLift::ContainerFleet resource creates an Amazon GameLift (GameLift) container fleet to host game servers. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containerfleet.html)", "allOf": [ { "type": "object", @@ -35302,14 +35260,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::CustomerGateway" + "AWS::GameLift::ContainerFleet" ], "markdownEnumDescriptions": [ - "Specifies a customer gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html)" + "The AWS::GameLift::ContainerFleet resource creates an Amazon GameLift (GameLift) container fleet to host game servers. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containerfleet.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-customergateway.json" + "$ref": "resources/aws-gamelift-containerfleet.json" } }, "required": [ @@ -35323,9 +35281,9 @@ ], "additionalProperties": false }, - "AWS_IAM_OIDCProvider": { + "AWS_CloudFront_VpcOrigin": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IAM::OIDCProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html)", + "markdownDescription": "An Amazon CloudFront VPC origin. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-vpcorigin.html)", "allOf": [ { "type": "object", @@ -35333,18 +35291,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::OIDCProvider" + "AWS::CloudFront::VpcOrigin" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IAM::OIDCProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html)" + "An Amazon CloudFront VPC origin. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-vpcorigin.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-oidcprovider.json" + "$ref": "resources/aws-cloudfront-vpcorigin.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35353,9 +35312,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_GCMChannel": { + "AWS_Route53RecoveryReadiness_RecoveryGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::GCMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html)", + "markdownDescription": "AWS Route53 Recovery Readiness Recovery Group Schema and API specifications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-recoverygroup.html)", "allOf": [ { "type": "object", @@ -35363,19 +35322,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::GCMChannel" + "AWS::Route53RecoveryReadiness::RecoveryGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::GCMChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-gcmchannel.html)" + "AWS Route53 Recovery Readiness Recovery Group Schema and API specifications. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-recoverygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-gcmchannel.json" + "$ref": "resources/aws-route53recoveryreadiness-recoverygroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -35384,9 +35342,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayPeeringAttachment": { + "AWS_Lambda_EventInvokeConfig": { "type": "object", - "markdownDescription": "The AWS::EC2::TransitGatewayPeeringAttachment type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaypeeringattachment.html)", + "markdownDescription": "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)", "allOf": [ { "type": "object", @@ -35394,14 +35352,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayPeeringAttachment" + "AWS::Lambda::EventInvokeConfig" ], "markdownEnumDescriptions": [ - "The AWS::EC2::TransitGatewayPeeringAttachment type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaypeeringattachment.html)" + "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventinvokeconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewaypeeringattachment.json" + "$ref": "resources/aws-lambda-eventinvokeconfig.json" } }, "required": [ @@ -35415,9 +35373,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryReadiness_Cell": { + "AWS_Greengrass_ResourceDefinition": { "type": "object", - "markdownDescription": "The API Schema for AWS Route53 Recovery Readiness Cells. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-cell.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::ResourceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html)", "allOf": [ { "type": "object", @@ -35425,18 +35383,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryReadiness::Cell" + "AWS::Greengrass::ResourceDefinition" ], "markdownEnumDescriptions": [ - "The API Schema for AWS Route53 Recovery Readiness Cells. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-cell.html)" + "Resource Type definition for AWS::Greengrass::ResourceDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-resourcedefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoveryreadiness-cell.json" + "$ref": "resources/aws-greengrass-resourcedefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35445,9 +35404,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_SubscriptionTarget": { + "AWS_Proton_EnvironmentTemplate": { "type": "object", - "markdownDescription": "Subscription targets enables one to access the data to which you have subscribed in your projects. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-subscriptiontarget.html)", + "markdownDescription": "Definition of AWS::Proton::EnvironmentTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmenttemplate.html)", "allOf": [ { "type": "object", @@ -35455,19 +35414,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::SubscriptionTarget" + "AWS::Proton::EnvironmentTemplate" ], "markdownEnumDescriptions": [ - "Subscription targets enables one to access the data to which you have subscribed in your projects. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-subscriptiontarget.html)" + "Definition of AWS::Proton::EnvironmentTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmenttemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-subscriptiontarget.json" + "$ref": "resources/aws-proton-environmenttemplate.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -35476,9 +35434,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_CloudWatchAlarmTemplateGroup": { + "AWS_MediaTailor_ChannelPolicy": { "type": "object", - "markdownDescription": "Definition of AWS::MediaLive::CloudWatchAlarmTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplategroup.html)", + "markdownDescription": "Definition of AWS::MediaTailor::ChannelPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channelpolicy.html)", "allOf": [ { "type": "object", @@ -35486,14 +35444,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::CloudWatchAlarmTemplateGroup" + "AWS::MediaTailor::ChannelPolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaLive::CloudWatchAlarmTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplategroup.html)" + "Definition of AWS::MediaTailor::ChannelPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channelpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-cloudwatchalarmtemplategroup.json" + "$ref": "resources/aws-mediatailor-channelpolicy.json" } }, "required": [ @@ -35507,9 +35465,9 @@ ], "additionalProperties": false }, - "AWS_Panorama_Package": { + "AWS_Cognito_UserPoolIdentityProvider": { "type": "object", - "markdownDescription": "Creates a package and storage location in an Amazon S3 access point. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-package.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolIdentityProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html)", "allOf": [ { "type": "object", @@ -35517,14 +35475,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Panorama::Package" + "AWS::Cognito::UserPoolIdentityProvider" ], "markdownEnumDescriptions": [ - "Creates a package and storage location in an Amazon S3 access point. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-package.html)" + "Resource Type definition for AWS::Cognito::UserPoolIdentityProvider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolidentityprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-panorama-package.json" + "$ref": "resources/aws-cognito-userpoolidentityprovider.json" } }, "required": [ @@ -35538,9 +35496,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_UsagePlan": { + "AWS_Bedrock_FlowAlias": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::UsagePlan`` resource creates a usage plan for deployed APIs. A usage plan sets a target for the throttling and quota limits on individual client API keys. For more information, see [Creating and Using API Usage Plans in Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*.\n In some cases clients can exceed the targets that you set. Don\u2019t rely on usage plans to control costs. Consider using [](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html) to monitor costs and [](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) to manage API requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html)", + "markdownDescription": "Definition of AWS::Bedrock::FlowAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowalias.html)", "allOf": [ { "type": "object", @@ -35548,18 +35506,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::UsagePlan" + "AWS::Bedrock::FlowAlias" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::UsagePlan`` resource creates a usage plan for deployed APIs. A usage plan sets a target for the throttling and quota limits on individual client API keys. For more information, see [Creating and Using API Usage Plans in Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-api-usage-plans.html) in the *API Gateway Developer Guide*.\n In some cases clients can exceed the targets that you set. Don\u2019t rely on usage plans to control costs. Consider using [](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html) to monitor costs and [](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) to manage API requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html)" + "Definition of AWS::Bedrock::FlowAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowalias.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-usageplan.json" + "$ref": "resources/aws-bedrock-flowalias.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35568,9 +35527,9 @@ ], "additionalProperties": false }, - "AWS_MediaLive_Channel": { + "AWS_Wisdom_AssistantAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MediaLive::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html)", + "markdownDescription": "Definition of AWS::Wisdom::AssistantAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistantassociation.html)", "allOf": [ { "type": "object", @@ -35578,18 +35537,19 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaLive::Channel" + "AWS::Wisdom::AssistantAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MediaLive::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-channel.html)" + "Definition of AWS::Wisdom::AssistantAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-assistantassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-medialive-channel.json" + "$ref": "resources/aws-wisdom-assistantassociation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35598,9 +35558,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_TagOption": { + "AWS_MSK_VpcConnection": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::TagOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html)", + "markdownDescription": "Resource Type definition for AWS::MSK::VpcConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-vpcconnection.html)", "allOf": [ { "type": "object", @@ -35608,14 +35568,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::TagOption" + "AWS::MSK::VpcConnection" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceCatalog::TagOption \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-tagoption.html)" + "Resource Type definition for AWS::MSK::VpcConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-vpcconnection.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-tagoption.json" + "$ref": "resources/aws-msk-vpcconnection.json" } }, "required": [ @@ -35629,9 +35589,9 @@ ], "additionalProperties": false }, - "AWS_FSx_DataRepositoryAssociation": { + "AWS_GlobalAccelerator_Listener": { "type": "object", - "markdownDescription": "Creates an Amazon FSx for Lustre data repository association (DRA). A data repository association is a link between a directory on the file system and an Amazon S3 bucket or prefix. You can have a maximum of 8 data repository associations on a file system. Data repository associations are supported on all FSx for Lustre 2.12 and newer file systems, excluding ``scratch_1`` deployment type. \n Each data repository association must have a unique Amazon FSx file system directory and a unique S3 bucket or prefix associated with it. You can configure a data repository association for automatic import only, for automatic export only, or for both. To learn more about linking a data repository to your file system, see [Linking your file system to an S3 bucket](https://docs.aws.amazon.com/fsx/latest/LustreGuide/create-dra-linked-data-repo.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-datarepositoryassociation.html)", + "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::Listener \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html)", "allOf": [ { "type": "object", @@ -35639,14 +35599,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FSx::DataRepositoryAssociation" + "AWS::GlobalAccelerator::Listener" ], "markdownEnumDescriptions": [ - "Creates an Amazon FSx for Lustre data repository association (DRA). A data repository association is a link between a directory on the file system and an Amazon S3 bucket or prefix. You can have a maximum of 8 data repository associations on a file system. Data repository associations are supported on all FSx for Lustre 2.12 and newer file systems, excluding ``scratch_1`` deployment type. \n Each data repository association must have a unique Amazon FSx file system directory and a unique S3 bucket or prefix associated with it. You can configure a data repository association for automatic import only, for automatic export only, or for both. To learn more about linking a data repository to your file system, see [Linking your file system to an S3 bucket](https://docs.aws.amazon.com/fsx/latest/LustreGuide/create-dra-linked-data-repo.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-datarepositoryassociation.html)" + "Resource Type definition for AWS::GlobalAccelerator::Listener \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html)" ] }, "Properties": { - "$ref": "resources/aws-fsx-datarepositoryassociation.json" + "$ref": "resources/aws-globalaccelerator-listener.json" } }, "required": [ @@ -35660,9 +35620,9 @@ ], "additionalProperties": false }, - "AWS_ServiceDiscovery_Instance": { + "AWS_CloudTrail_Dashboard": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html)", + "markdownDescription": "The Amazon CloudTrail dashboard resource allows customers to manage managed dashboards and create custom dashboards. You can manually refresh custom and managed dashboards. For custom dashboards, you can also set up an automatic refresh schedule and modify dashboard widgets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-dashboard.html)", "allOf": [ { "type": "object", @@ -35670,19 +35630,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceDiscovery::Instance" + "AWS::CloudTrail::Dashboard" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceDiscovery::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html)" + "The Amazon CloudTrail dashboard resource allows customers to manage managed dashboards and create custom dashboards. You can manually refresh custom and managed dashboards. For custom dashboards, you can also set up an automatic refresh schedule and modify dashboard widgets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-dashboard.html)" ] }, "Properties": { - "$ref": "resources/aws-servicediscovery-instance.json" + "$ref": "resources/aws-cloudtrail-dashboard.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -35691,9 +35650,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_Task": { + "AWS_SecurityHub_Insight": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::Task. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html)", + "markdownDescription": "The AWS::SecurityHub::Insight resource represents the AWS Security Hub Insight in your account. An AWS Security Hub insight is a collection of related findings. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-insight.html)", "allOf": [ { "type": "object", @@ -35701,14 +35660,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::Task" + "AWS::SecurityHub::Insight" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::Task. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html)" + "The AWS::SecurityHub::Insight resource represents the AWS Security Hub Insight in your account. An AWS Security Hub insight is a collection of related findings. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-insight.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-task.json" + "$ref": "resources/aws-securityhub-insight.json" } }, "required": [ @@ -35722,9 +35681,9 @@ ], "additionalProperties": false }, - "AWS_EntityResolution_PolicyStatement": { + "AWS_EventSchemas_Registry": { "type": "object", - "markdownDescription": "Policy Statement defined in AWS Entity Resolution Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-policystatement.html)", + "markdownDescription": "Resource Type definition for AWS::EventSchemas::Registry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registry.html)", "allOf": [ { "type": "object", @@ -35732,19 +35691,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EntityResolution::PolicyStatement" + "AWS::EventSchemas::Registry" ], "markdownEnumDescriptions": [ - "Policy Statement defined in AWS Entity Resolution Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-policystatement.html)" + "Resource Type definition for AWS::EventSchemas::Registry \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eventschemas-registry.html)" ] }, "Properties": { - "$ref": "resources/aws-entityresolution-policystatement.json" + "$ref": "resources/aws-eventschemas-registry.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -35753,9 +35711,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCGatewayAttachment": { + "AWS_Deadline_Monitor": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcgatewayattachment.html)", + "markdownDescription": "Definition of AWS::Deadline::Monitor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-monitor.html)", "allOf": [ { "type": "object", @@ -35763,14 +35721,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCGatewayAttachment" + "AWS::Deadline::Monitor" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCGatewayAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcgatewayattachment.html)" + "Definition of AWS::Deadline::Monitor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-monitor.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcgatewayattachment.json" + "$ref": "resources/aws-deadline-monitor.json" } }, "required": [ @@ -35784,9 +35742,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkInsightsPath": { + "AWS_Route53_HostedZone": { "type": "object", - "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsPath \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html)", + "markdownDescription": "Creates a new public or private hosted zone. You create records in a public hosted zone to define how you want to route traffic on the internet for a domain, such as example.com, and its subdomains (apex.example.com, acme.example.com). You create records in a private hosted zone to define how you want to route traffic for a domain and its subdomains within one or more Amazon Virtual Private Clouds (Amazon VPCs). \n You can't convert a public hosted zone to a private hosted zone or vice versa. Instead, you must create a new hosted zone with the same name and create new resource record sets.\n For more information about charges for hosted zones, see [Amazon Route 53 Pricing](https://docs.aws.amazon.com/route53/pricing/).\n Note the following:\n + You can't create a hosted zone for a top-level domain (TLD) such as .com.\n + If your domain is registered with a registrar other than Route 53, you must update the name servers with your registrar to make Route 53 the DNS service for the domain. For more information, see [Migrating DNS Service for an Existing Domain to Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html) in the *Amazon Route 53 Developer Guide*. \n \n When you submit a ``CreateHostedZone`` request, the initial status of the hosted zone is ``PENDING``. For public hosted zones, this means that the NS and SOA records are not yet available on all Route 53 DNS servers. When the NS and SOA records are available, the status of the zone changes to ``INSYNC``.\n The ``CreateHostedZone`` request requires the caller to have an ``ec2:DescribeVpcs`` permission.\n When creating private hosted zones, the Amazon VPC must belong to the same partition where the hosted zone is created. A partition is a group of AWS-Regions. Each AWS-account is scoped to one partition.\n The following are the supported partitions:\n + ``aws`` - AWS-Regions\n + ``aws-cn`` - China Regions\n + ``aws-us-gov`` - govcloud-us-region\n \n For more information, see [Access Management](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html)", "allOf": [ { "type": "object", @@ -35794,19 +35752,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkInsightsPath" + "AWS::Route53::HostedZone" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::EC2::NetworkInsightsPath \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightspath.html)" + "Creates a new public or private hosted zone. You create records in a public hosted zone to define how you want to route traffic on the internet for a domain, such as example.com, and its subdomains (apex.example.com, acme.example.com). You create records in a private hosted zone to define how you want to route traffic for a domain and its subdomains within one or more Amazon Virtual Private Clouds (Amazon VPCs). \n You can't convert a public hosted zone to a private hosted zone or vice versa. Instead, you must create a new hosted zone with the same name and create new resource record sets.\n For more information about charges for hosted zones, see [Amazon Route 53 Pricing](https://docs.aws.amazon.com/route53/pricing/).\n Note the following:\n + You can't create a hosted zone for a top-level domain (TLD) such as .com.\n + If your domain is registered with a registrar other than Route 53, you must update the name servers with your registrar to make Route 53 the DNS service for the domain. For more information, see [Migrating DNS Service for an Existing Domain to Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html) in the *Amazon Route 53 Developer Guide*. \n \n When you submit a ``CreateHostedZone`` request, the initial status of the hosted zone is ``PENDING``. For public hosted zones, this means that the NS and SOA records are not yet available on all Route 53 DNS servers. When the NS and SOA records are available, the status of the zone changes to ``INSYNC``.\n The ``CreateHostedZone`` request requires the caller to have an ``ec2:DescribeVpcs`` permission.\n When creating private hosted zones, the Amazon VPC must belong to the same partition where the hosted zone is created. A partition is a group of AWS-Regions. Each AWS-account is scoped to one partition.\n The following are the supported partitions:\n + ``aws`` - AWS-Regions\n + ``aws-cn`` - China Regions\n + ``aws-us-gov`` - govcloud-us-region\n \n For more information, see [Access Management](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkinsightspath.json" + "$ref": "resources/aws-route53-hostedzone.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -35815,9 +35772,9 @@ ], "additionalProperties": false }, - "AWS_EC2_NetworkInterface": { + "AWS_AppSync_ChannelNamespace": { "type": "object", - "markdownDescription": "The AWS::EC2::NetworkInterface resource creates network interface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterface.html)", + "markdownDescription": "Resource schema for AppSync ChannelNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html)", "allOf": [ { "type": "object", @@ -35825,14 +35782,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::NetworkInterface" + "AWS::AppSync::ChannelNamespace" ], "markdownEnumDescriptions": [ - "The AWS::EC2::NetworkInterface resource creates network interface \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinterface.html)" + "Resource schema for AppSync ChannelNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-networkinterface.json" + "$ref": "resources/aws-appsync-channelnamespace.json" } }, "required": [ @@ -35846,9 +35803,9 @@ ], "additionalProperties": false }, - "AWS_Config_ConfigRule": { + "AWS_MWAA_Environment": { "type": "object", - "markdownDescription": "You must first create and start the CC configuration recorder in order to create CC managed rules with CFNlong. For more information, see [Managing the Configuration Recorder](https://docs.aws.amazon.com/config/latest/developerguide/stop-start-recorder.html).\n Adds or updates an CC rule to evaluate if your AWS resources comply with your desired configurations. For information on how many CC rules you can have per account, see [Service Limits](https://docs.aws.amazon.com/config/latest/developerguide/configlimits.html) in the *Developer Guide*.\n There are two types of rules: *Managed Rules* and *Custom Rules*. You can use the ``ConfigRule`` resource to create both CC Managed Rules and CC Custom Rules.\n CC Managed Rules are predefined, customizable rules created by CC. For a list of managed rules, see [List of Managed Rules](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html). If you are adding an CC managed rule, you must specify the rule's identifier for the ``SourceIdentifier`` key.\n CC Custom Rules are rules that you create from scratch. There are two ways to create CC custom rules: with Lambda functions ([Developer Guide](https://docs.aws.amazon.com/config/latest/developerguide/gettingstarted-concepts.html#gettingstarted-concepts-function)) and with CFNGUARDshort ([Guard GitHub Repository](https://docs.aws.amazon.com/https://github.com/aws-cloudformation/cloudformation-guard)), a policy-as-code language. CC custom rules created with LAMlong are called *Custom Lambda Rules* and CC custom rules created with CFNGUARDshort are called *Custom Policy Rules*.\n If you are adding a new CC Custom LAM rule, you first need to create an LAMlong function that the rule invokes to evaluate your resources. When you use the ``ConfigRule`` resource to add a Custom LAM rule to CC, you must specify the Amazon Resource Name (ARN) that LAMlong assigns to the function. You specify the ARN in the ``SourceIdentifier`` key. This key is part of the ``Source`` object, which is part of the ``ConfigRule`` object. \n For any new CC rule that you add, specify the ``ConfigRuleName`` in the ``ConfigRule`` object. Do not specify the ``ConfigRuleArn`` or the ``ConfigRuleId``. These values are generated by CC for new rules.\n If you are updating a rule that you added previously, you can specify the rule by ``ConfigRuleName``, ``ConfigRuleId``, or ``ConfigRuleArn`` in the ``ConfigRule`` data type that you use in this request.\n For more information about developing and using CC rules, see [Evaluating Resources with Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html)", + "markdownDescription": "Resource schema for AWS::MWAA::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html)", "allOf": [ { "type": "object", @@ -35856,14 +35813,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::ConfigRule" + "AWS::MWAA::Environment" ], "markdownEnumDescriptions": [ - "You must first create and start the CC configuration recorder in order to create CC managed rules with CFNlong. For more information, see [Managing the Configuration Recorder](https://docs.aws.amazon.com/config/latest/developerguide/stop-start-recorder.html).\n Adds or updates an CC rule to evaluate if your AWS resources comply with your desired configurations. For information on how many CC rules you can have per account, see [Service Limits](https://docs.aws.amazon.com/config/latest/developerguide/configlimits.html) in the *Developer Guide*.\n There are two types of rules: *Managed Rules* and *Custom Rules*. You can use the ``ConfigRule`` resource to create both CC Managed Rules and CC Custom Rules.\n CC Managed Rules are predefined, customizable rules created by CC. For a list of managed rules, see [List of Managed Rules](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html). If you are adding an CC managed rule, you must specify the rule's identifier for the ``SourceIdentifier`` key.\n CC Custom Rules are rules that you create from scratch. There are two ways to create CC custom rules: with Lambda functions ([Developer Guide](https://docs.aws.amazon.com/config/latest/developerguide/gettingstarted-concepts.html#gettingstarted-concepts-function)) and with CFNGUARDshort ([Guard GitHub Repository](https://docs.aws.amazon.com/https://github.com/aws-cloudformation/cloudformation-guard)), a policy-as-code language. CC custom rules created with LAMlong are called *Custom Lambda Rules* and CC custom rules created with CFNGUARDshort are called *Custom Policy Rules*.\n If you are adding a new CC Custom LAM rule, you first need to create an LAMlong function that the rule invokes to evaluate your resources. When you use the ``ConfigRule`` resource to add a Custom LAM rule to CC, you must specify the Amazon Resource Name (ARN) that LAMlong assigns to the function. You specify the ARN in the ``SourceIdentifier`` key. This key is part of the ``Source`` object, which is part of the ``ConfigRule`` object. \n For any new CC rule that you add, specify the ``ConfigRuleName`` in the ``ConfigRule`` object. Do not specify the ``ConfigRuleArn`` or the ``ConfigRuleId``. These values are generated by CC for new rules.\n If you are updating a rule that you added previously, you can specify the rule by ``ConfigRuleName``, ``ConfigRuleId``, or ``ConfigRuleArn`` in the ``ConfigRule`` data type that you use in this request.\n For more information about developing and using CC rules, see [Evaluating Resources with Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html)" + "Resource schema for AWS::MWAA::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mwaa-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-config-configrule.json" + "$ref": "resources/aws-mwaa-environment.json" } }, "required": [ @@ -35877,9 +35834,9 @@ ], "additionalProperties": false }, - "AWS_CleanRooms_IdMappingTable": { + "AWS_AppSync_ApiCache": { "type": "object", - "markdownDescription": "Represents an association between an ID mapping workflow and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idmappingtable.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::ApiCache \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)", "allOf": [ { "type": "object", @@ -35887,14 +35844,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CleanRooms::IdMappingTable" + "AWS::AppSync::ApiCache" ], "markdownEnumDescriptions": [ - "Represents an association between an ID mapping workflow and a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-idmappingtable.html)" + "Resource Type definition for AWS::AppSync::ApiCache \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html)" ] }, "Properties": { - "$ref": "resources/aws-cleanrooms-idmappingtable.json" + "$ref": "resources/aws-appsync-apicache.json" } }, "required": [ @@ -35908,9 +35865,9 @@ ], "additionalProperties": false }, - "AWS_ElasticLoadBalancingV2_TrustStore": { + "AWS_Config_DeliveryChannel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancingV2::TrustStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-truststore.html)", + "markdownDescription": "Resource Type definition for AWS::Config::DeliveryChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html)", "allOf": [ { "type": "object", @@ -35918,18 +35875,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ElasticLoadBalancingV2::TrustStore" + "AWS::Config::DeliveryChannel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ElasticLoadBalancingV2::TrustStore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-truststore.html)" + "Resource Type definition for AWS::Config::DeliveryChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html)" ] }, "Properties": { - "$ref": "resources/aws-elasticloadbalancingv2-truststore.json" + "$ref": "resources/aws-config-deliverychannel.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35938,9 +35896,9 @@ ], "additionalProperties": false }, - "AWS_MSK_VpcConnection": { + "AWS_IAM_ManagedPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MSK::VpcConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-vpcconnection.html)", + "markdownDescription": "Creates a new managed policy for your AWS-account.\n This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.\n As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.\n For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html)", "allOf": [ { "type": "object", @@ -35948,14 +35906,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MSK::VpcConnection" + "AWS::IAM::ManagedPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MSK::VpcConnection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-vpcconnection.html)" + "Creates a new managed policy for your AWS-account.\n This operation creates a policy version with a version identifier of ``v1`` and sets v1 as the policy's default version. For more information about policy versions, see [Versioning for managed policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html) in the *IAM User Guide*.\n As a best practice, you can validate your IAM policies. To learn more, see [Validating IAM policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html) in the *IAM User Guide*.\n For more information about managed policies in general, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-msk-vpcconnection.json" + "$ref": "resources/aws-iam-managedpolicy.json" } }, "required": [ @@ -35969,9 +35927,9 @@ ], "additionalProperties": false }, - "AWS_ECR_PullThroughCacheRule": { + "AWS_FSx_DataRepositoryAssociation": { "type": "object", - "markdownDescription": "The ``AWS::ECR::PullThroughCacheRule`` resource creates or updates a pull through cache rule. A pull through cache rule provides a way to cache images from an upstream registry in your Amazon ECR private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html)", + "markdownDescription": "Creates an Amazon FSx for Lustre data repository association (DRA). A data repository association is a link between a directory on the file system and an Amazon S3 bucket or prefix. You can have a maximum of 8 data repository associations on a file system. Data repository associations are supported on all FSx for Lustre 2.12 and newer file systems, excluding ``scratch_1`` deployment type. \n Each data repository association must have a unique Amazon FSx file system directory and a unique S3 bucket or prefix associated with it. You can configure a data repository association for automatic import only, for automatic export only, or for both. To learn more about linking a data repository to your file system, see [Linking your file system to an S3 bucket](https://docs.aws.amazon.com/fsx/latest/LustreGuide/create-dra-linked-data-repo.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-datarepositoryassociation.html)", "allOf": [ { "type": "object", @@ -35979,18 +35937,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ECR::PullThroughCacheRule" + "AWS::FSx::DataRepositoryAssociation" ], "markdownEnumDescriptions": [ - "The ``AWS::ECR::PullThroughCacheRule`` resource creates or updates a pull through cache rule. A pull through cache rule provides a way to cache images from an upstream registry in your Amazon ECR private registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-pullthroughcacherule.html)" + "Creates an Amazon FSx for Lustre data repository association (DRA). A data repository association is a link between a directory on the file system and an Amazon S3 bucket or prefix. You can have a maximum of 8 data repository associations on a file system. Data repository associations are supported on all FSx for Lustre 2.12 and newer file systems, excluding ``scratch_1`` deployment type. \n Each data repository association must have a unique Amazon FSx file system directory and a unique S3 bucket or prefix associated with it. You can configure a data repository association for automatic import only, for automatic export only, or for both. To learn more about linking a data repository to your file system, see [Linking your file system to an S3 bucket](https://docs.aws.amazon.com/fsx/latest/LustreGuide/create-dra-linked-data-repo.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-datarepositoryassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-ecr-pullthroughcacherule.json" + "$ref": "resources/aws-fsx-datarepositoryassociation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -35999,9 +35958,9 @@ ], "additionalProperties": false }, - "AWS_QBusiness_Index": { + "AWS_DataZone_DataSource": { "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html)", + "markdownDescription": "A data source is used to import technical metadata of assets (data) from the source databases or data warehouses into Amazon DataZone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-datasource.html)", "allOf": [ { "type": "object", @@ -36009,14 +35968,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QBusiness::Index" + "AWS::DataZone::DataSource" ], "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::Index Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-index.html)" + "A data source is used to import technical metadata of assets (data) from the source databases or data warehouses into Amazon DataZone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-datasource.html)" ] }, "Properties": { - "$ref": "resources/aws-qbusiness-index.json" + "$ref": "resources/aws-datazone-datasource.json" } }, "required": [ @@ -36030,9 +35989,9 @@ ], "additionalProperties": false }, - "AWS_ManagedBlockchain_Member": { + "AWS_Wisdom_MessageTemplateVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ManagedBlockchain::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html)", + "markdownDescription": "A version for the specified customer-managed message template within the specified knowledge base. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplateversion.html)", "allOf": [ { "type": "object", @@ -36040,14 +35999,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ManagedBlockchain::Member" + "AWS::Wisdom::MessageTemplateVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ManagedBlockchain::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html)" + "A version for the specified customer-managed message template within the specified knowledge base. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-messagetemplateversion.html)" ] }, "Properties": { - "$ref": "resources/aws-managedblockchain-member.json" + "$ref": "resources/aws-wisdom-messagetemplateversion.json" } }, "required": [ @@ -36061,9 +36020,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_EndpointAccess": { + "AWS_Bedrock_AgentAlias": { "type": "object", - "markdownDescription": "Resource schema for a Redshift-managed VPC endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html)", + "markdownDescription": "Definition of AWS::Bedrock::AgentAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html)", "allOf": [ { "type": "object", @@ -36071,14 +36030,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::EndpointAccess" + "AWS::Bedrock::AgentAlias" ], "markdownEnumDescriptions": [ - "Resource schema for a Redshift-managed VPC endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-endpointaccess.html)" + "Definition of AWS::Bedrock::AgentAlias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agentalias.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-endpointaccess.json" + "$ref": "resources/aws-bedrock-agentalias.json" } }, "required": [ @@ -36092,9 +36051,9 @@ ], "additionalProperties": false }, - "AWS_EFS_MountTarget": { + "AWS_WAFv2_LoggingConfiguration": { "type": "object", - "markdownDescription": "The ``AWS::EFS::MountTarget`` resource is an Amazon EFS resource that creates a mount target for an EFS file system. You can then mount the file system on Amazon EC2 instances or other resources by using the mount target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)", + "markdownDescription": "A WAFv2 Logging Configuration Resource Provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html)", "allOf": [ { "type": "object", @@ -36102,14 +36061,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EFS::MountTarget" + "AWS::WAFv2::LoggingConfiguration" ], "markdownEnumDescriptions": [ - "The ``AWS::EFS::MountTarget`` resource is an Amazon EFS resource that creates a mount target for an EFS file system. You can then mount the file system on Amazon EC2 instances or other resources by using the mount target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)" + "A WAFv2 Logging Configuration Resource Provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-efs-mounttarget.json" + "$ref": "resources/aws-wafv2-loggingconfiguration.json" } }, "required": [ @@ -36123,9 +36082,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerRelay": { + "AWS_ElasticLoadBalancingV2_ListenerCertificate": { "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerRelay Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerrelay.html)", + "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancingV2::ListenerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html)", "allOf": [ { "type": "object", @@ -36133,14 +36092,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::MailManagerRelay" + "AWS::ElasticLoadBalancingV2::ListenerCertificate" ], "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerRelay Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagerrelay.html)" + "Resource Type definition for AWS::ElasticLoadBalancingV2::ListenerCertificate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-mailmanagerrelay.json" + "$ref": "resources/aws-elasticloadbalancingv2-listenercertificate.json" } }, "required": [ @@ -36154,9 +36113,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Classifier": { + "AWS_EKS_Cluster": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Classifier \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html)", + "markdownDescription": "An object representing an Amazon EKS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html)", "allOf": [ { "type": "object", @@ -36164,18 +36123,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Classifier" + "AWS::EKS::Cluster" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Classifier \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-classifier.html)" + "An object representing an Amazon EKS cluster. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-classifier.json" + "$ref": "resources/aws-eks-cluster.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -36184,9 +36144,9 @@ ], "additionalProperties": false }, - "AWS_OSIS_Pipeline": { + "AWS_SES_VdmAttributes": { "type": "object", - "markdownDescription": "An OpenSearch Ingestion Service Data Prepper pipeline running Data Prepper. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-osis-pipeline.html)", + "markdownDescription": "Resource Type definition for AWS::SES::VdmAttributes \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-vdmattributes.html)", "allOf": [ { "type": "object", @@ -36194,19 +36154,18 @@ "Type": { "type": "string", "enum": [ - "AWS::OSIS::Pipeline" + "AWS::SES::VdmAttributes" ], "markdownEnumDescriptions": [ - "An OpenSearch Ingestion Service Data Prepper pipeline running Data Prepper. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-osis-pipeline.html)" + "Resource Type definition for AWS::SES::VdmAttributes \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-vdmattributes.html)" ] }, "Properties": { - "$ref": "resources/aws-osis-pipeline.json" + "$ref": "resources/aws-ses-vdmattributes.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36215,9 +36174,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_Destination": { + "AWS_CloudFormation_LambdaHook": { "type": "object", - "markdownDescription": "Destination's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-destination.html)", + "markdownDescription": "This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html)", "allOf": [ { "type": "object", @@ -36225,14 +36184,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::Destination" + "AWS::CloudFormation::LambdaHook" ], "markdownEnumDescriptions": [ - "Destination's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-destination.html)" + "This is a CloudFormation resource for the first-party AWS::Hooks::LambdaHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-destination.json" + "$ref": "resources/aws-cloudformation-lambdahook.json" } }, "required": [ @@ -36246,9 +36205,9 @@ ], "additionalProperties": false }, - "AWS_GameLift_ContainerFleet": { + "AWS_AmplifyUIBuilder_Theme": { "type": "object", - "markdownDescription": "The AWS::GameLift::ContainerFleet resource creates an Amazon GameLift (GameLift) container fleet to host game servers. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containerfleet.html)", + "markdownDescription": "Definition of AWS::AmplifyUIBuilder::Theme Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-theme.html)", "allOf": [ { "type": "object", @@ -36256,19 +36215,18 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLift::ContainerFleet" + "AWS::AmplifyUIBuilder::Theme" ], "markdownEnumDescriptions": [ - "The AWS::GameLift::ContainerFleet resource creates an Amazon GameLift (GameLift) container fleet to host game servers. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-containerfleet.html)" + "Definition of AWS::AmplifyUIBuilder::Theme Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplifyuibuilder-theme.html)" ] }, "Properties": { - "$ref": "resources/aws-gamelift-containerfleet.json" + "$ref": "resources/aws-amplifyuibuilder-theme.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36277,9 +36235,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SubnetNetworkAclAssociation": { + "AWS_SageMaker_ProcessingJob": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::SubnetNetworkAclAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetnetworkaclassociation.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ProcessingJob \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-processingjob.html)", "allOf": [ { "type": "object", @@ -36287,14 +36245,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SubnetNetworkAclAssociation" + "AWS::SageMaker::ProcessingJob" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::SubnetNetworkAclAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetnetworkaclassociation.html)" + "Resource Type definition for AWS::SageMaker::ProcessingJob \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-processingjob.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-subnetnetworkaclassociation.json" + "$ref": "resources/aws-sagemaker-processingjob.json" } }, "required": [ @@ -36308,9 +36266,9 @@ ], "additionalProperties": false }, - "AWS_QBusiness_Plugin": { + "AWS_WAFRegional_RegexPatternSet": { "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::Plugin Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::RegexPatternSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html)", "allOf": [ { "type": "object", @@ -36318,14 +36276,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QBusiness::Plugin" + "AWS::WAFRegional::RegexPatternSet" ], "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::Plugin Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-plugin.html)" + "Resource Type definition for AWS::WAFRegional::RegexPatternSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-regexpatternset.html)" ] }, "Properties": { - "$ref": "resources/aws-qbusiness-plugin.json" + "$ref": "resources/aws-wafregional-regexpatternset.json" } }, "required": [ @@ -36339,9 +36297,9 @@ ], "additionalProperties": false }, - "AWS_Glue_Job": { + "AWS_WAFRegional_SqlInjectionMatchSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::Job \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html)", + "markdownDescription": "Resource Type definition for AWS::WAFRegional::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html)", "allOf": [ { "type": "object", @@ -36349,14 +36307,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::Job" + "AWS::WAFRegional::SqlInjectionMatchSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::Job \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html)" + "Resource Type definition for AWS::WAFRegional::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-job.json" + "$ref": "resources/aws-wafregional-sqlinjectionmatchset.json" } }, "required": [ @@ -36370,9 +36328,9 @@ ], "additionalProperties": false }, - "AWS_IoTSiteWise_Dataset": { + "AWS_WAF_SizeConstraintSet": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTSiteWise::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dataset.html)", + "markdownDescription": "Resource Type definition for AWS::WAF::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html)", "allOf": [ { "type": "object", @@ -36380,14 +36338,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTSiteWise::Dataset" + "AWS::WAF::SizeConstraintSet" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTSiteWise::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-dataset.html)" + "Resource Type definition for AWS::WAF::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html)" ] }, "Properties": { - "$ref": "resources/aws-iotsitewise-dataset.json" + "$ref": "resources/aws-waf-sizeconstraintset.json" } }, "required": [ @@ -36401,9 +36359,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationNFS": { + "AWS_Evidently_Feature": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationNFS \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html)", + "markdownDescription": "Resource Type definition for AWS::Evidently::Feature. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-feature.html)", "allOf": [ { "type": "object", @@ -36411,14 +36369,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationNFS" + "AWS::Evidently::Feature" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationNFS \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html)" + "Resource Type definition for AWS::Evidently::Feature. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-feature.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationnfs.json" + "$ref": "resources/aws-evidently-feature.json" } }, "required": [ @@ -36432,9 +36390,9 @@ ], "additionalProperties": false }, - "AWS_Rekognition_StreamProcessor": { + "AWS_Cognito_UserPoolUICustomizationAttachment": { "type": "object", - "markdownDescription": "The AWS::Rekognition::StreamProcessor type is used to create an Amazon Rekognition StreamProcessor that you can use to analyze streaming videos.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-streamprocessor.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolUICustomizationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html)", "allOf": [ { "type": "object", @@ -36442,14 +36400,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Rekognition::StreamProcessor" + "AWS::Cognito::UserPoolUICustomizationAttachment" ], "markdownEnumDescriptions": [ - "The AWS::Rekognition::StreamProcessor type is used to create an Amazon Rekognition StreamProcessor that you can use to analyze streaming videos.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-streamprocessor.html)" + "Resource Type definition for AWS::Cognito::UserPoolUICustomizationAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluicustomizationattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-rekognition-streamprocessor.json" + "$ref": "resources/aws-cognito-userpooluicustomizationattachment.json" } }, "required": [ @@ -36463,9 +36421,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPNGateway": { + "AWS_MemoryDB_ACL": { "type": "object", - "markdownDescription": "Specifies a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngateway.html)", + "markdownDescription": "Resource Type definition for AWS::MemoryDB::ACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-acl.html)", "allOf": [ { "type": "object", @@ -36473,14 +36431,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPNGateway" + "AWS::MemoryDB::ACL" ], "markdownEnumDescriptions": [ - "Specifies a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngateway.html)" + "Resource Type definition for AWS::MemoryDB::ACL \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-acl.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpngateway.json" + "$ref": "resources/aws-memorydb-acl.json" } }, "required": [ @@ -36494,9 +36452,9 @@ ], "additionalProperties": false }, - "AWS_EMR_StudioSessionMapping": { + "AWS_Route53RecoveryControl_SafetyRule": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html)", + "markdownDescription": "Resource schema for AWS Route53 Recovery Control basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-safetyrule.html)", "allOf": [ { "type": "object", @@ -36504,19 +36462,18 @@ "Type": { "type": "string", "enum": [ - "AWS::EMR::StudioSessionMapping" + "AWS::Route53RecoveryControl::SafetyRule" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studiosessionmapping.html)" + "Resource schema for AWS Route53 Recovery Control basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-safetyrule.html)" ] }, "Properties": { - "$ref": "resources/aws-emr-studiosessionmapping.json" + "$ref": "resources/aws-route53recoverycontrol-safetyrule.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36525,9 +36482,9 @@ ], "additionalProperties": false }, - "AWS_SecurityLake_SubscriberNotification": { + "AWS_EC2_VerifiedAccessInstance": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SecurityLake::SubscriberNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscribernotification.html)", + "markdownDescription": "The AWS::EC2::VerifiedAccessInstance resource creates an AWS EC2 Verified Access Instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessinstance.html)", "allOf": [ { "type": "object", @@ -36535,19 +36492,18 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityLake::SubscriberNotification" + "AWS::EC2::VerifiedAccessInstance" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SecurityLake::SubscriberNotification \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscribernotification.html)" + "The AWS::EC2::VerifiedAccessInstance resource creates an AWS EC2 Verified Access Instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-securitylake-subscribernotification.json" + "$ref": "resources/aws-ec2-verifiedaccessinstance.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36556,9 +36512,9 @@ ], "additionalProperties": false }, - "AWS_Connect_InstanceStorageConfig": { + "AWS_KinesisAnalyticsV2_Application": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::InstanceStorageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instancestorageconfig.html)", + "markdownDescription": "Creates an Amazon Kinesis Data Analytics application. For information about creating a Kinesis Data Analytics application, see [Creating an Application](https://docs.aws.amazon.com/kinesisanalytics/latest/java/getting-started.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html)", "allOf": [ { "type": "object", @@ -36566,14 +36522,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::InstanceStorageConfig" + "AWS::KinesisAnalyticsV2::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::InstanceStorageConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-instancestorageconfig.html)" + "Creates an Amazon Kinesis Data Analytics application. For information about creating a Kinesis Data Analytics application, see [Creating an Application](https://docs.aws.amazon.com/kinesisanalytics/latest/java/getting-started.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisanalyticsv2-application.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-instancestorageconfig.json" + "$ref": "resources/aws-kinesisanalyticsv2-application.json" } }, "required": [ @@ -36587,9 +36543,9 @@ ], "additionalProperties": false }, - "AWS_WAFv2_WebACLAssociation": { + "AWS_Amplify_Domain": { "type": "object", - "markdownDescription": "Associates WebACL to Application Load Balancer, CloudFront or API Gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html)", + "markdownDescription": "The AWS::Amplify::Domain resource allows you to connect a custom domain to your app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html)", "allOf": [ { "type": "object", @@ -36597,14 +36553,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFv2::WebACLAssociation" + "AWS::Amplify::Domain" ], "markdownEnumDescriptions": [ - "Associates WebACL to Application Load Balancer, CloudFront or API Gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webaclassociation.html)" + "The AWS::Amplify::Domain resource allows you to connect a custom domain to your app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-wafv2-webaclassociation.json" + "$ref": "resources/aws-amplify-domain.json" } }, "required": [ @@ -36618,9 +36574,9 @@ ], "additionalProperties": false }, - "AWS_DMS_Endpoint": { + "AWS_CloudFormation_Macro": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DMS::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html)", + "markdownDescription": "Resource Type definition for AWS::CloudFormation::Macro \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html)", "allOf": [ { "type": "object", @@ -36628,14 +36584,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::Endpoint" + "AWS::CloudFormation::Macro" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DMS::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-endpoint.html)" + "Resource Type definition for AWS::CloudFormation::Macro \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-macro.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-endpoint.json" + "$ref": "resources/aws-cloudformation-macro.json" } }, "required": [ @@ -36649,9 +36605,9 @@ ], "additionalProperties": false }, - "AWS_Location_Tracker": { + "AWS_EC2_VPC": { "type": "object", - "markdownDescription": "Definition of AWS::Location::Tracker Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html)", + "markdownDescription": "Specifies a virtual private cloud (VPC).\n To add an IPv6 CIDR block to the VPC, see [AWS::EC2::VPCCidrBlock](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html).\n For more information, see [Virtual private clouds (VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/configure-your-vpc.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html)", "allOf": [ { "type": "object", @@ -36659,19 +36615,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Location::Tracker" + "AWS::EC2::VPC" ], "markdownEnumDescriptions": [ - "Definition of AWS::Location::Tracker Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-tracker.html)" + "Specifies a virtual private cloud (VPC).\n To add an IPv6 CIDR block to the VPC, see [AWS::EC2::VPCCidrBlock](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html).\n For more information, see [Virtual private clouds (VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/configure-your-vpc.html) in the *Amazon VPC User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html)" ] }, "Properties": { - "$ref": "resources/aws-location-tracker.json" + "$ref": "resources/aws-ec2-vpc.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36680,9 +36635,9 @@ ], "additionalProperties": false }, - "AWS_LakeFormation_Permissions": { + "AWS_MediaLive_InputSecurityGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::LakeFormation::Permissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html)", + "markdownDescription": "Resource Type definition for AWS::MediaLive::InputSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html)", "allOf": [ { "type": "object", @@ -36690,19 +36645,18 @@ "Type": { "type": "string", "enum": [ - "AWS::LakeFormation::Permissions" + "AWS::MediaLive::InputSecurityGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::LakeFormation::Permissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-permissions.html)" + "Resource Type definition for AWS::MediaLive::InputSecurityGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-inputsecuritygroup.html)" ] }, "Properties": { - "$ref": "resources/aws-lakeformation-permissions.json" + "$ref": "resources/aws-medialive-inputsecuritygroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36711,9 +36665,9 @@ ], "additionalProperties": false }, - "AWS_S3_AccessPoint": { + "AWS_Athena_CapacityReservation": { "type": "object", - "markdownDescription": "The AWS::S3::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html)", + "markdownDescription": "Resource schema for AWS::Athena::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-capacityreservation.html)", "allOf": [ { "type": "object", @@ -36721,14 +36675,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::AccessPoint" + "AWS::Athena::CapacityReservation" ], "markdownEnumDescriptions": [ - "The AWS::S3::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html)" + "Resource schema for AWS::Athena::CapacityReservation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-capacityreservation.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-accesspoint.json" + "$ref": "resources/aws-athena-capacityreservation.json" } }, "required": [ @@ -36742,9 +36696,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_ScheduledAction": { + "AWS_IoT_PolicyPrincipalAttachment": { "type": "object", - "markdownDescription": "The `AWS::Redshift::ScheduledAction` resource creates an Amazon Redshift Scheduled Action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::PolicyPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html)", "allOf": [ { "type": "object", @@ -36752,14 +36706,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::ScheduledAction" + "AWS::IoT::PolicyPrincipalAttachment" ], "markdownEnumDescriptions": [ - "The `AWS::Redshift::ScheduledAction` resource creates an Amazon Redshift Scheduled Action. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-scheduledaction.html)" + "Resource Type definition for AWS::IoT::PolicyPrincipalAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-scheduledaction.json" + "$ref": "resources/aws-iot-policyprincipalattachment.json" } }, "required": [ @@ -36773,9 +36727,9 @@ ], "additionalProperties": false }, - "AWS_SSM_MaintenanceWindowTask": { + "AWS_VpcLattice_Rule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSM::MaintenanceWindowTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html)", + "markdownDescription": "Creates a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html)", "allOf": [ { "type": "object", @@ -36783,14 +36737,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::MaintenanceWindowTask" + "AWS::VpcLattice::Rule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSM::MaintenanceWindowTask \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-maintenancewindowtask.html)" + "Creates a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-maintenancewindowtask.json" + "$ref": "resources/aws-vpclattice-rule.json" } }, "required": [ @@ -36804,9 +36758,9 @@ ], "additionalProperties": false }, - "AWS_EC2_LocalGatewayRouteTable": { + "AWS_Glue_Schema": { "type": "object", - "markdownDescription": "Resource Type definition for Local Gateway Route Table which describes a route table for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetable.html)", + "markdownDescription": "This resource represents a schema of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html)", "allOf": [ { "type": "object", @@ -36814,14 +36768,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::LocalGatewayRouteTable" + "AWS::Glue::Schema" ], "markdownEnumDescriptions": [ - "Resource Type definition for Local Gateway Route Table which describes a route table for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetable.html)" + "This resource represents a schema of Glue Schema Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-localgatewayroutetable.json" + "$ref": "resources/aws-glue-schema.json" } }, "required": [ @@ -36835,9 +36789,9 @@ ], "additionalProperties": false }, - "AWS_Amplify_App": { + "AWS_Greengrass_GroupVersion": { "type": "object", - "markdownDescription": "The AWS::Amplify::App resource creates Apps in the Amplify Console. An App is a collection of branches. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::GroupVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html)", "allOf": [ { "type": "object", @@ -36845,14 +36799,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Amplify::App" + "AWS::Greengrass::GroupVersion" ], "markdownEnumDescriptions": [ - "The AWS::Amplify::App resource creates Apps in the Amplify Console. An App is a collection of branches. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html)" + "Resource Type definition for AWS::Greengrass::GroupVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html)" ] }, "Properties": { - "$ref": "resources/aws-amplify-app.json" + "$ref": "resources/aws-greengrass-groupversion.json" } }, "required": [ @@ -36866,9 +36820,9 @@ ], "additionalProperties": false }, - "AWS_Rekognition_Collection": { + "AWS_ElasticLoadBalancingV2_TargetGroup": { "type": "object", - "markdownDescription": "The AWS::Rekognition::Collection type creates an Amazon Rekognition Collection. A collection is a logical grouping of information about detected faces which can later be referenced for searches on the group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-collection.html)", + "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancingV2::TargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html)", "allOf": [ { "type": "object", @@ -36876,19 +36830,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Rekognition::Collection" + "AWS::ElasticLoadBalancingV2::TargetGroup" ], "markdownEnumDescriptions": [ - "The AWS::Rekognition::Collection type creates an Amazon Rekognition Collection. A collection is a logical grouping of information about detected faces which can later be referenced for searches on the group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-collection.html)" + "Resource Type definition for AWS::ElasticLoadBalancingV2::TargetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-rekognition-collection.json" + "$ref": "resources/aws-elasticloadbalancingv2-targetgroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36897,9 +36850,9 @@ ], "additionalProperties": false }, - "AWS_DataSync_LocationHDFS": { + "AWS_IVSChat_Room": { "type": "object", - "markdownDescription": "Resource schema for AWS::DataSync::LocationHDFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html)", + "markdownDescription": "Resource type definition for AWS::IVSChat::Room. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html)", "allOf": [ { "type": "object", @@ -36907,19 +36860,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DataSync::LocationHDFS" + "AWS::IVSChat::Room" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DataSync::LocationHDFS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html)" + "Resource type definition for AWS::IVSChat::Room. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-room.html)" ] }, "Properties": { - "$ref": "resources/aws-datasync-locationhdfs.json" + "$ref": "resources/aws-ivschat-room.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36928,9 +36880,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_ModuleDefaultVersion": { + "AWS_PCAConnectorAD_ServicePrincipalName": { "type": "object", - "markdownDescription": "A module that has been registered in the CloudFormation registry as the default version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html)", + "markdownDescription": "Definition of AWS::PCAConnectorAD::ServicePrincipalName Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-serviceprincipalname.html)", "allOf": [ { "type": "object", @@ -36938,14 +36890,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::ModuleDefaultVersion" + "AWS::PCAConnectorAD::ServicePrincipalName" ], "markdownEnumDescriptions": [ - "A module that has been registered in the CloudFormation registry as the default version \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduledefaultversion.html)" + "Definition of AWS::PCAConnectorAD::ServicePrincipalName Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-serviceprincipalname.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-moduledefaultversion.json" + "$ref": "resources/aws-pcaconnectorad-serviceprincipalname.json" } }, "required": [ @@ -36958,9 +36910,9 @@ ], "additionalProperties": false }, - "AWS_Batch_JobDefinition": { + "AWS_APS_Workspace": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Batch::JobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html)", + "markdownDescription": "Resource Type definition for AWS::APS::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-workspace.html)", "allOf": [ { "type": "object", @@ -36968,19 +36920,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Batch::JobDefinition" + "AWS::APS::Workspace" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Batch::JobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html)" + "Resource Type definition for AWS::APS::Workspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aps-workspace.html)" ] }, "Properties": { - "$ref": "resources/aws-batch-jobdefinition.json" + "$ref": "resources/aws-aps-workspace.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -36989,9 +36940,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_Deployment": { + "AWS_RDS_DBSubnetGroup": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::Deployment`` resource creates a deployment for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html)", + "markdownDescription": "The ``AWS::RDS::DBSubnetGroup`` resource creates a database subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same region. \n For more information, see [Working with DB subnet groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html#USER_VPC.Subnets) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnetgroup.html)", "allOf": [ { "type": "object", @@ -36999,14 +36950,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::Deployment" + "AWS::RDS::DBSubnetGroup" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::Deployment`` resource creates a deployment for an API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-deployment.html)" + "The ``AWS::RDS::DBSubnetGroup`` resource creates a database subnet group. Subnet groups must contain at least two subnets in two different Availability Zones in the same region. \n For more information, see [Working with DB subnet groups](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.html#USER_VPC.Subnets) in the *Amazon RDS User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnetgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-deployment.json" + "$ref": "resources/aws-rds-dbsubnetgroup.json" } }, "required": [ @@ -37020,9 +36971,9 @@ ], "additionalProperties": false }, - "AWS_DataZone_DomainUnit": { + "AWS_CleanRooms_ConfiguredTable": { "type": "object", - "markdownDescription": "A domain unit enables you to easily organize your assets and other domain entities under specific business units and teams. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domainunit.html)", + "markdownDescription": "Represents a table that can be associated with collaborations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtable.html)", "allOf": [ { "type": "object", @@ -37030,14 +36981,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataZone::DomainUnit" + "AWS::CleanRooms::ConfiguredTable" ], "markdownEnumDescriptions": [ - "A domain unit enables you to easily organize your assets and other domain entities under specific business units and teams. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datazone-domainunit.html)" + "Represents a table that can be associated with collaborations \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-configuredtable.html)" ] }, "Properties": { - "$ref": "resources/aws-datazone-domainunit.json" + "$ref": "resources/aws-cleanrooms-configuredtable.json" } }, "required": [ @@ -37051,9 +37002,9 @@ ], "additionalProperties": false }, - "AWS_Logs_LogAnomalyDetector": { + "AWS_ImageBuilder_DistributionConfiguration": { "type": "object", - "markdownDescription": "The AWS::Logs::LogAnomalyDetector resource specifies a CloudWatch Logs LogAnomalyDetector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loganomalydetector.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::DistributionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html)", "allOf": [ { "type": "object", @@ -37061,18 +37012,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::LogAnomalyDetector" + "AWS::ImageBuilder::DistributionConfiguration" ], "markdownEnumDescriptions": [ - "The AWS::Logs::LogAnomalyDetector resource specifies a CloudWatch Logs LogAnomalyDetector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loganomalydetector.html)" + "Resource schema for AWS::ImageBuilder::DistributionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-distributionconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-loganomalydetector.json" + "$ref": "resources/aws-imagebuilder-distributionconfiguration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -37081,9 +37033,9 @@ ], "additionalProperties": false }, - "AWS_QBusiness_DataSource": { + "AWS_Route53RecoveryReadiness_ResourceSet": { "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html)", + "markdownDescription": "Schema for the AWS Route53 Recovery Readiness ResourceSet Resource and API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-resourceset.html)", "allOf": [ { "type": "object", @@ -37091,14 +37043,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QBusiness::DataSource" + "AWS::Route53RecoveryReadiness::ResourceSet" ], "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-datasource.html)" + "Schema for the AWS Route53 Recovery Readiness ResourceSet Resource and API. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-resourceset.html)" ] }, "Properties": { - "$ref": "resources/aws-qbusiness-datasource.json" + "$ref": "resources/aws-route53recoveryreadiness-resourceset.json" } }, "required": [ @@ -37112,9 +37064,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_UserProfile": { + "AWS_Cassandra_Table": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html)", + "markdownDescription": "Resource schema for AWS::Cassandra::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html)", "allOf": [ { "type": "object", @@ -37122,14 +37074,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::UserProfile" + "AWS::Cassandra::Table" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::UserProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-userprofile.html)" + "Resource schema for AWS::Cassandra::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-userprofile.json" + "$ref": "resources/aws-cassandra-table.json" } }, "required": [ @@ -37143,9 +37095,9 @@ ], "additionalProperties": false }, - "AWS_CodeBuild_SourceCredential": { + "AWS_VpcLattice_ResourcePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeBuild::SourceCredential \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html)", + "markdownDescription": "Retrieves information about the resource policy. The resource policy is an IAM policy created by AWS RAM on behalf of the resource owner when they share a resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -37153,14 +37105,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeBuild::SourceCredential" + "AWS::VpcLattice::ResourcePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeBuild::SourceCredential \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-sourcecredential.html)" + "Retrieves information about the resource policy. The resource policy is an IAM policy created by AWS RAM on behalf of the resource owner when they share a resource. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-codebuild-sourcecredential.json" + "$ref": "resources/aws-vpclattice-resourcepolicy.json" } }, "required": [ @@ -37174,9 +37126,9 @@ ], "additionalProperties": false }, - "AWS_Glue_SecurityConfiguration": { + "AWS_DataSync_Agent": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::SecurityConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html)", + "markdownDescription": "Resource schema for AWS::DataSync::Agent. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html)", "allOf": [ { "type": "object", @@ -37184,19 +37136,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::SecurityConfiguration" + "AWS::DataSync::Agent" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::SecurityConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-securityconfiguration.html)" + "Resource schema for AWS::DataSync::Agent. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-securityconfiguration.json" + "$ref": "resources/aws-datasync-agent.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -37205,9 +37156,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SpotFleet": { + "AWS_EntityResolution_IdMappingWorkflow": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::SpotFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html)", + "markdownDescription": "IdMappingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idmappingworkflow.html)", "allOf": [ { "type": "object", @@ -37215,14 +37166,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SpotFleet" + "AWS::EntityResolution::IdMappingWorkflow" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::SpotFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html)" + "IdMappingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-idmappingworkflow.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-spotfleet.json" + "$ref": "resources/aws-entityresolution-idmappingworkflow.json" } }, "required": [ @@ -37236,9 +37187,9 @@ ], "additionalProperties": false }, - "AWS_CustomerProfiles_Domain": { + "AWS_ServiceCatalog_ServiceAction": { "type": "object", - "markdownDescription": "A domain defined for 3rd party data source in Profile Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html)", + "markdownDescription": "Resource Schema for AWS::ServiceCatalog::ServiceAction \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html)", "allOf": [ { "type": "object", @@ -37246,14 +37197,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CustomerProfiles::Domain" + "AWS::ServiceCatalog::ServiceAction" ], "markdownEnumDescriptions": [ - "A domain defined for 3rd party data source in Profile Service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-domain.html)" + "Resource Schema for AWS::ServiceCatalog::ServiceAction \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceaction.html)" ] }, "Properties": { - "$ref": "resources/aws-customerprofiles-domain.json" + "$ref": "resources/aws-servicecatalog-serviceaction.json" } }, "required": [ @@ -37267,9 +37218,9 @@ ], "additionalProperties": false }, - "AWS_Rbin_Rule": { + "AWS_NetworkManager_Site": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Rbin::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rbin-rule.html)", + "markdownDescription": "The AWS::NetworkManager::Site type describes a site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html)", "allOf": [ { "type": "object", @@ -37277,14 +37228,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Rbin::Rule" + "AWS::NetworkManager::Site" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Rbin::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rbin-rule.html)" + "The AWS::NetworkManager::Site type describes a site. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-site.html)" ] }, "Properties": { - "$ref": "resources/aws-rbin-rule.json" + "$ref": "resources/aws-networkmanager-site.json" } }, "required": [ @@ -37298,9 +37249,9 @@ ], "additionalProperties": false }, - "AWS_ImageBuilder_ImagePipeline": { + "AWS_EC2_CapacityReservationFleet": { "type": "object", - "markdownDescription": "Resource schema for AWS::ImageBuilder::ImagePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::CapacityReservationFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservationfleet.html)", "allOf": [ { "type": "object", @@ -37308,14 +37259,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ImageBuilder::ImagePipeline" + "AWS::EC2::CapacityReservationFleet" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::ImageBuilder::ImagePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-imagepipeline.html)" + "Resource Type definition for AWS::EC2::CapacityReservationFleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-capacityreservationfleet.html)" ] }, "Properties": { - "$ref": "resources/aws-imagebuilder-imagepipeline.json" + "$ref": "resources/aws-ec2-capacityreservationfleet.json" } }, "required": [ @@ -37328,9 +37279,9 @@ ], "additionalProperties": false }, - "AWS_AppSync_Api": { + "AWS_SageMaker_MonitoringSchedule": { "type": "object", - "markdownDescription": "Resource schema for AppSync Api \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::MonitoringSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html)", "allOf": [ { "type": "object", @@ -37338,14 +37289,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppSync::Api" + "AWS::SageMaker::MonitoringSchedule" ], "markdownEnumDescriptions": [ - "Resource schema for AppSync Api \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html)" + "Resource Type definition for AWS::SageMaker::MonitoringSchedule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-monitoringschedule.html)" ] }, "Properties": { - "$ref": "resources/aws-appsync-api.json" + "$ref": "resources/aws-sagemaker-monitoringschedule.json" } }, "required": [ @@ -37359,9 +37310,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_GuardHook": { + "AWS_EC2_SecurityGroupVpcAssociation": { "type": "object", - "markdownDescription": "This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html)", + "markdownDescription": "Resource type definition for the AWS::EC2::SecurityGroupVpcAssociation resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupvpcassociation.html)", "allOf": [ { "type": "object", @@ -37369,14 +37320,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::GuardHook" + "AWS::EC2::SecurityGroupVpcAssociation" ], "markdownEnumDescriptions": [ - "This is a CloudFormation resource for activating the first-party AWS::Hooks::GuardHook. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html)" + "Resource type definition for the AWS::EC2::SecurityGroupVpcAssociation resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-securitygroupvpcassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-guardhook.json" + "$ref": "resources/aws-ec2-securitygroupvpcassociation.json" } }, "required": [ @@ -37390,9 +37341,9 @@ ], "additionalProperties": false }, - "AWS_S3_MultiRegionAccessPointPolicy": { + "AWS_EC2_VPCBlockPublicAccessOptions": { "type": "object", - "markdownDescription": "The policy to be attached to a Multi Region Access Point \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCBlockPublicAccessOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessoptions.html)", "allOf": [ { "type": "object", @@ -37400,14 +37351,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3::MultiRegionAccessPointPolicy" + "AWS::EC2::VPCBlockPublicAccessOptions" ], "markdownEnumDescriptions": [ - "The policy to be attached to a Multi Region Access Point \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html)" + "Resource Type definition for AWS::EC2::VPCBlockPublicAccessOptions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcblockpublicaccessoptions.html)" ] }, "Properties": { - "$ref": "resources/aws-s3-multiregionaccesspointpolicy.json" + "$ref": "resources/aws-ec2-vpcblockpublicaccessoptions.json" } }, "required": [ @@ -37421,9 +37372,9 @@ ], "additionalProperties": false }, - "AWS_S3Outposts_Endpoint": { + "AWS_AppSync_DataSource": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::S3Outposts::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html)", + "markdownDescription": "Resource Type definition for AWS::AppSync::DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html)", "allOf": [ { "type": "object", @@ -37431,14 +37382,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Outposts::Endpoint" + "AWS::AppSync::DataSource" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::S3Outposts::Endpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3outposts-endpoint.html)" + "Resource Type definition for AWS::AppSync::DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html)" ] }, "Properties": { - "$ref": "resources/aws-s3outposts-endpoint.json" + "$ref": "resources/aws-appsync-datasource.json" } }, "required": [ @@ -37452,9 +37403,9 @@ ], "additionalProperties": false }, - "AWS_ApiGatewayV2_VpcLink": { + "AWS_Bedrock_FlowVersion": { "type": "object", - "markdownDescription": "The ``AWS::ApiGatewayV2::VpcLink`` resource creates a VPC link. Supported only for HTTP APIs. The VPC link status must transition from ``PENDING`` to ``AVAILABLE`` to successfully create a VPC link, which can take up to 10 minutes. To learn more, see [Working with VPC Links for HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-vpc-links.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html)", + "markdownDescription": "Definition of AWS::Bedrock::FlowVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowversion.html)", "allOf": [ { "type": "object", @@ -37462,14 +37413,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGatewayV2::VpcLink" + "AWS::Bedrock::FlowVersion" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGatewayV2::VpcLink`` resource creates a VPC link. Supported only for HTTP APIs. The VPC link status must transition from ``PENDING`` to ``AVAILABLE`` to successfully create a VPC link, which can take up to 10 minutes. To learn more, see [Working with VPC Links for HTTP APIs](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-vpc-links.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-vpclink.html)" + "Definition of AWS::Bedrock::FlowVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-flowversion.html)" ] }, "Properties": { - "$ref": "resources/aws-apigatewayv2-vpclink.json" + "$ref": "resources/aws-bedrock-flowversion.json" } }, "required": [ @@ -37483,9 +37434,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_ConnectPeer": { + "AWS_FSx_StorageVirtualMachine": { "type": "object", - "markdownDescription": "AWS::NetworkManager::ConnectPeer Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectpeer.html)", + "markdownDescription": "Resource Type definition for AWS::FSx::StorageVirtualMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-storagevirtualmachine.html)", "allOf": [ { "type": "object", @@ -37493,14 +37444,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::ConnectPeer" + "AWS::FSx::StorageVirtualMachine" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::ConnectPeer Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-connectpeer.html)" + "Resource Type definition for AWS::FSx::StorageVirtualMachine \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-storagevirtualmachine.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-connectpeer.json" + "$ref": "resources/aws-fsx-storagevirtualmachine.json" } }, "required": [ @@ -37514,9 +37465,9 @@ ], "additionalProperties": false }, - "AWS_Route53Profiles_Profile": { + "AWS_Omics_RunGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Route53Profiles::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profile.html)", + "markdownDescription": "Definition of AWS::Omics::RunGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-rungroup.html)", "allOf": [ { "type": "object", @@ -37524,19 +37475,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Profiles::Profile" + "AWS::Omics::RunGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Route53Profiles::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profile.html)" + "Definition of AWS::Omics::RunGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-rungroup.html)" ] }, "Properties": { - "$ref": "resources/aws-route53profiles-profile.json" + "$ref": "resources/aws-omics-rungroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -37545,9 +37495,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_Portal": { + "AWS_SecretsManager_Secret": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::Portal Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-portal.html)", + "markdownDescription": "Creates a new secret. A *secret* can be a password, a set of credentials such as a user name and password, an OAuth token, or other secret information that you store in an encrypted form in Secrets Manager.\n For RDS master user credentials, see [AWS::RDS::DBCluster MasterUserSecret](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-masterusersecret.html).\n For RS admin user credentials, see [AWS::Redshift::Cluster](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html).\n To retrieve a secret in a CFNshort template, use a *dynamic reference*. For more information, see [Retrieve a secret in an resource](https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html).\n For information about creating a secret in the console, see [Create a secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html). For information about creating a secret using the CLI or SDK, see [CreateSecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html).\n For information about retrieving a secret in code, see [Retrieve secrets from Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html)", "allOf": [ { "type": "object", @@ -37555,14 +37505,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::Portal" + "AWS::SecretsManager::Secret" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::Portal Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-portal.html)" + "Creates a new secret. A *secret* can be a password, a set of credentials such as a user name and password, an OAuth token, or other secret information that you store in an encrypted form in Secrets Manager.\n For RDS master user credentials, see [AWS::RDS::DBCluster MasterUserSecret](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbcluster-masterusersecret.html).\n For RS admin user credentials, see [AWS::Redshift::Cluster](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html).\n To retrieve a secret in a CFNshort template, use a *dynamic reference*. For more information, see [Retrieve a secret in an resource](https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html).\n For information about creating a secret in the console, see [Create a secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html). For information about creating a secret using the CLI or SDK, see [CreateSecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html).\n For information about retrieving a secret in code, see [Retrieve secrets from Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-portal.json" + "$ref": "resources/aws-secretsmanager-secret.json" } }, "required": [ @@ -37575,9 +37525,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_Method": { + "AWS_IoTWireless_WirelessGateway": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html)", + "markdownDescription": "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessgateway.html)", "allOf": [ { "type": "object", @@ -37585,14 +37535,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::Method" + "AWS::IoTWireless::WirelessGateway" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::Method`` resource creates API Gateway methods that define the parameters and body that clients must send in their requests. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html)" + "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessgateway.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-method.json" + "$ref": "resources/aws-iotwireless-wirelessgateway.json" } }, "required": [ @@ -37606,9 +37556,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_ModelPackage": { + "AWS_DirectoryService_SimpleAD": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelPackage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackage.html)", + "markdownDescription": "Resource Type definition for AWS::DirectoryService::SimpleAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html)", "allOf": [ { "type": "object", @@ -37616,18 +37566,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::ModelPackage" + "AWS::DirectoryService::SimpleAD" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::ModelPackage \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelpackage.html)" + "Resource Type definition for AWS::DirectoryService::SimpleAD \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-modelpackage.json" + "$ref": "resources/aws-directoryservice-simplead.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -37636,9 +37587,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayRouteTablePropagation": { + "AWS_OpsWorks_Stack": { "type": "object", - "markdownDescription": "AWS::EC2::TransitGatewayRouteTablePropagation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html)", + "markdownDescription": "Resource Type definition for AWS::OpsWorks::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html)", "allOf": [ { "type": "object", @@ -37646,14 +37597,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayRouteTablePropagation" + "AWS::OpsWorks::Stack" ], "markdownEnumDescriptions": [ - "AWS::EC2::TransitGatewayRouteTablePropagation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html)" + "Resource Type definition for AWS::OpsWorks::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewayroutetablepropagation.json" + "$ref": "resources/aws-opsworks-stack.json" } }, "required": [ @@ -37667,9 +37618,9 @@ ], "additionalProperties": false }, - "AWS_EC2_EIP": { + "AWS_Bedrock_Guardrail": { "type": "object", - "markdownDescription": "Specifies an Elastic IP (EIP) address and can, optionally, associate it with an Amazon EC2 instance.\n You can allocate an Elastic IP address from an address pool owned by AWS or from an address pool created from a public IPv4 address range that you have brought to AWS for use with your AWS resources using bring your own IP addresses (BYOIP). For more information, see [Bring Your Own IP Addresses (BYOIP)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html) in the *Amazon EC2 User Guide*.\n For more information, see [Elastic IP Addresses](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eip.html)", + "markdownDescription": "Definition of AWS::Bedrock::Guardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html)", "allOf": [ { "type": "object", @@ -37677,18 +37628,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::EIP" + "AWS::Bedrock::Guardrail" ], "markdownEnumDescriptions": [ - "Specifies an Elastic IP (EIP) address and can, optionally, associate it with an Amazon EC2 instance.\n You can allocate an Elastic IP address from an address pool owned by AWS or from an address pool created from a public IPv4 address range that you have brought to AWS for use with your AWS resources using bring your own IP addresses (BYOIP). For more information, see [Bring Your Own IP Addresses (BYOIP)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html) in the *Amazon EC2 User Guide*.\n For more information, see [Elastic IP Addresses](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html) in the *Amazon EC2 User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eip.html)" + "Definition of AWS::Bedrock::Guardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-eip.json" + "$ref": "resources/aws-bedrock-guardrail.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -37697,9 +37649,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_ResourceDefaultVersion": { + "AWS_RDS_DBInstance": { "type": "object", - "markdownDescription": "The default version of a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html)", + "markdownDescription": "The ``AWS::RDS::DBInstance`` resource creates an Amazon DB instance. The new DB instance can be an RDS DB instance, or it can be a DB instance in an Aurora DB cluster.\n For more information about creating an RDS DB instance, see [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html) in the *Amazon RDS User Guide*.\n For more information about creating a DB instance in an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n If you import an existing DB instance, and the template configuration doesn't match the actual configuration of the DB instance, AWS CloudFormation applies the changes in the template during the import operation.\n If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an update that requires replacement, you can apply a stack policy to prevent DB instances from being replaced. For more information, see [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html).\n *Updating DB instances* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB instance, then changes references from other dependent resources to point to the replacement DB instance, and finally deletes the old DB instance.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB instance. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB instance so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB instance. For more information, see [Creating a DB Snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).\n 1. If you want to restore your instance using a DB snapshot, modify the updated template with your DB instance changes and add the ``DBSnapshotIdentifier`` property with the ID of the DB snapshot that you want to use.\n After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you can delete the ``DBSnapshotIdentifier`` property. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.\n 1. Update the stack.\n \n For more information about updating other properties of this resource, see ``ModifyDBInstance``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB instances* \n For DB instances that are part of an Aurora DB cluster, you can set a deletion policy for your DB instance to control how AWS CloudFormation handles the DB instance when the stack is deleted. For Amazon RDS DB instances, you can choose to *retain* the DB instance, to *delete* the DB instance, or to *create a snapshot* of the DB instance. The default AWS CloudFormation behavior depends on the ``DBClusterIdentifier`` property:\n 1. For ``AWS::RDS::DBInstance`` resources that don't specify the ``DBClusterIdentifier`` property, AWS CloudFormation saves a snapshot of the DB instance.\n 1. For ``AWS::RDS::DBInstance`` resources that do specify the ``DBClusterIdentifier`` property, AWS CloudFormation deletes the DB instance.\n \n For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html)", "allOf": [ { "type": "object", @@ -37707,14 +37659,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::ResourceDefaultVersion" + "AWS::RDS::DBInstance" ], "markdownEnumDescriptions": [ - "The default version of a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html)" + "The ``AWS::RDS::DBInstance`` resource creates an Amazon DB instance. The new DB instance can be an RDS DB instance, or it can be a DB instance in an Aurora DB cluster.\n For more information about creating an RDS DB instance, see [Creating an Amazon RDS DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html) in the *Amazon RDS User Guide*.\n For more information about creating a DB instance in an Aurora DB cluster, see [Creating an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.CreateInstance.html) in the *Amazon Aurora User Guide*.\n If you import an existing DB instance, and the template configuration doesn't match the actual configuration of the DB instance, AWS CloudFormation applies the changes in the template during the import operation.\n If a DB instance is deleted or replaced during an update, AWS CloudFormation deletes all automated snapshots. However, it retains manual DB snapshots. During an update that requires replacement, you can apply a stack policy to prevent DB instances from being replaced. For more information, see [Prevent Updates to Stack Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/protect-stack-resources.html).\n *Updating DB instances* \n When properties labeled \"*Update requires:*[Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)\" are updated, AWS CloudFormation first creates a replacement DB instance, then changes references from other dependent resources to point to the replacement DB instance, and finally deletes the old DB instance.\n We highly recommend that you take a snapshot of the database before updating the stack. If you don't, you lose the data when AWS CloudFormation replaces your DB instance. To preserve your data, perform the following procedure:\n 1. Deactivate any applications that are using the DB instance so that there's no activity on the DB instance.\n 1. Create a snapshot of the DB instance. For more information, see [Creating a DB Snapshot](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html).\n 1. If you want to restore your instance using a DB snapshot, modify the updated template with your DB instance changes and add the ``DBSnapshotIdentifier`` property with the ID of the DB snapshot that you want to use.\n After you restore a DB instance with a ``DBSnapshotIdentifier`` property, you can delete the ``DBSnapshotIdentifier`` property. When you specify this property for an update, the DB instance is not restored from the DB snapshot again, and the data in the database is not changed. However, if you don't specify the ``DBSnapshotIdentifier`` property, an empty DB instance is created, and the original DB instance is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB instance is restored from the specified ``DBSnapshotIdentifier`` property, and the original DB instance is deleted.\n 1. Update the stack.\n \n For more information about updating other properties of this resource, see ``ModifyDBInstance``. For more information about updating stacks, see [CloudFormation Stacks Updates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html).\n *Deleting DB instances* \n For DB instances that are part of an Aurora DB cluster, you can set a deletion policy for your DB instance to control how AWS CloudFormation handles the DB instance when the stack is deleted. For Amazon RDS DB instances, you can choose to *retain* the DB instance, to *delete* the DB instance, or to *create a snapshot* of the DB instance. The default AWS CloudFormation behavior depends on the ``DBClusterIdentifier`` property:\n 1. For ``AWS::RDS::DBInstance`` resources that don't specify the ``DBClusterIdentifier`` property, AWS CloudFormation saves a snapshot of the DB instance.\n 1. For ``AWS::RDS::DBInstance`` resources that do specify the ``DBClusterIdentifier`` property, AWS CloudFormation deletes the DB instance.\n \n For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-resourcedefaultversion.json" + "$ref": "resources/aws-rds-dbinstance.json" } }, "required": [ @@ -37727,9 +37679,9 @@ ], "additionalProperties": false }, - "AWS_AppConfig_ExtensionAssociation": { + "AWS_Omics_ReferenceStore": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-extensionassociation.html)", + "markdownDescription": "Definition of AWS::Omics::ReferenceStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-referencestore.html)", "allOf": [ { "type": "object", @@ -37737,18 +37689,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AppConfig::ExtensionAssociation" + "AWS::Omics::ReferenceStore" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-extensionassociation.html)" + "Definition of AWS::Omics::ReferenceStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-referencestore.html)" ] }, "Properties": { - "$ref": "resources/aws-appconfig-extensionassociation.json" + "$ref": "resources/aws-omics-referencestore.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -37757,9 +37710,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_ClientCertificate": { + "AWS_ControlTower_LandingZone": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::ClientCertificate`` resource creates a client certificate that API Gateway uses to configure client-side SSL authentication for sending requests to the integration endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html)", + "markdownDescription": "Definition of AWS::ControlTower::LandingZone Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-landingzone.html)", "allOf": [ { "type": "object", @@ -37767,18 +37720,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::ClientCertificate" + "AWS::ControlTower::LandingZone" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::ClientCertificate`` resource creates a client certificate that API Gateway uses to configure client-side SSL authentication for sending requests to the integration endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html)" + "Definition of AWS::ControlTower::LandingZone Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-controltower-landingzone.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-clientcertificate.json" + "$ref": "resources/aws-controltower-landingzone.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -37787,9 +37741,9 @@ ], "additionalProperties": false }, - "AWS_EC2_LocalGatewayRouteTableVirtualInterfaceGroupAssociation": { + "AWS_SageMaker_ModelQualityJobDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for Local Gateway Route Table Virtual Interface Group Association which describes a local gateway route table virtual interface group association for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevirtualinterfacegroupassociation.html)", + "markdownDescription": "Resource Type definition for AWS::SageMaker::ModelQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html)", "allOf": [ { "type": "object", @@ -37797,14 +37751,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::LocalGatewayRouteTableVirtualInterfaceGroupAssociation" + "AWS::SageMaker::ModelQualityJobDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for Local Gateway Route Table Virtual Interface Group Association which describes a local gateway route table virtual interface group association for a local gateway. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroutetablevirtualinterfacegroupassociation.html)" + "Resource Type definition for AWS::SageMaker::ModelQualityJobDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-modelqualityjobdefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-localgatewayroutetablevirtualinterfacegroupassociation.json" + "$ref": "resources/aws-sagemaker-modelqualityjobdefinition.json" } }, "required": [ @@ -37818,9 +37772,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchServerless_LifecyclePolicy": { + "AWS_AppMesh_GatewayRoute": { "type": "object", - "markdownDescription": "Amazon OpenSearchServerless lifecycle policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-lifecyclepolicy.html)", + "markdownDescription": "Resource Type definition for AWS::AppMesh::GatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html)", "allOf": [ { "type": "object", @@ -37828,14 +37782,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchServerless::LifecyclePolicy" + "AWS::AppMesh::GatewayRoute" ], "markdownEnumDescriptions": [ - "Amazon OpenSearchServerless lifecycle policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-lifecyclepolicy.html)" + "Resource Type definition for AWS::AppMesh::GatewayRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-gatewayroute.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchserverless-lifecyclepolicy.json" + "$ref": "resources/aws-appmesh-gatewayroute.json" } }, "required": [ @@ -37849,9 +37803,9 @@ ], "additionalProperties": false }, - "AWS_QLDB_Ledger": { + "AWS_Connect_PhoneNumber": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::QLDB::Ledger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::PhoneNumber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-phonenumber.html)", "allOf": [ { "type": "object", @@ -37859,14 +37813,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QLDB::Ledger" + "AWS::Connect::PhoneNumber" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::QLDB::Ledger \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qldb-ledger.html)" + "Resource Type definition for AWS::Connect::PhoneNumber \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-phonenumber.html)" ] }, "Properties": { - "$ref": "resources/aws-qldb-ledger.json" + "$ref": "resources/aws-connect-phonenumber.json" } }, "required": [ @@ -37880,9 +37834,9 @@ ], "additionalProperties": false }, - "AWS_EC2_IPAMPoolCidr": { + "AWS_Events_EventBusPolicy": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EC2::IPAMPoolCidr Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampoolcidr.html)", + "markdownDescription": "Resource Type definition for AWS::Events::EventBusPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html)", "allOf": [ { "type": "object", @@ -37890,14 +37844,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::IPAMPoolCidr" + "AWS::Events::EventBusPolicy" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EC2::IPAMPoolCidr Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipampoolcidr.html)" + "Resource Type definition for AWS::Events::EventBusPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-eventbuspolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-ipampoolcidr.json" + "$ref": "resources/aws-events-eventbuspolicy.json" } }, "required": [ @@ -37911,9 +37865,9 @@ ], "additionalProperties": false }, - "AWS_BillingConductor_BillingGroup": { + "AWS_ApiGateway_ClientCertificate": { "type": "object", - "markdownDescription": "A billing group is a set of linked account which belong to the same end customer. It can be seen as a virtual consolidated billing family. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html)", + "markdownDescription": "The ``AWS::ApiGateway::ClientCertificate`` resource creates a client certificate that API Gateway uses to configure client-side SSL authentication for sending requests to the integration endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html)", "allOf": [ { "type": "object", @@ -37921,19 +37875,18 @@ "Type": { "type": "string", "enum": [ - "AWS::BillingConductor::BillingGroup" + "AWS::ApiGateway::ClientCertificate" ], "markdownEnumDescriptions": [ - "A billing group is a set of linked account which belong to the same end customer. It can be seen as a virtual consolidated billing family. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html)" + "The ``AWS::ApiGateway::ClientCertificate`` resource creates a client certificate that API Gateway uses to configure client-side SSL authentication for sending requests to the integration endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html)" ] }, "Properties": { - "$ref": "resources/aws-billingconductor-billinggroup.json" + "$ref": "resources/aws-apigateway-clientcertificate.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -37942,9 +37895,9 @@ ], "additionalProperties": false }, - "AWS_MemoryDB_User": { + "AWS_WorkSpacesWeb_UserAccessLoggingSettings": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MemoryDB::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-user.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::UserAccessLoggingSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-useraccessloggingsettings.html)", "allOf": [ { "type": "object", @@ -37952,14 +37905,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MemoryDB::User" + "AWS::WorkSpacesWeb::UserAccessLoggingSettings" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MemoryDB::User \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-user.html)" + "Definition of AWS::WorkSpacesWeb::UserAccessLoggingSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-useraccessloggingsettings.html)" ] }, "Properties": { - "$ref": "resources/aws-memorydb-user.json" + "$ref": "resources/aws-workspacesweb-useraccessloggingsettings.json" } }, "required": [ @@ -37973,9 +37926,9 @@ ], "additionalProperties": false }, - "AWS_RoboMaker_SimulationApplicationVersion": { + "AWS_SES_MailManagerAddonInstance": { "type": "object", - "markdownDescription": "AWS::RoboMaker::SimulationApplicationVersion resource creates an AWS RoboMaker SimulationApplicationVersion. This helps you control which code your simulation uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html)", + "markdownDescription": "Definition of AWS::SES::MailManagerAddonInstance Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddoninstance.html)", "allOf": [ { "type": "object", @@ -37983,14 +37936,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RoboMaker::SimulationApplicationVersion" + "AWS::SES::MailManagerAddonInstance" ], "markdownEnumDescriptions": [ - "AWS::RoboMaker::SimulationApplicationVersion resource creates an AWS RoboMaker SimulationApplicationVersion. This helps you control which code your simulation uses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-simulationapplicationversion.html)" + "Definition of AWS::SES::MailManagerAddonInstance Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageraddoninstance.html)" ] }, "Properties": { - "$ref": "resources/aws-robomaker-simulationapplicationversion.json" + "$ref": "resources/aws-ses-mailmanageraddoninstance.json" } }, "required": [ @@ -38004,9 +37957,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_WirelessDeviceImportTask": { + "AWS_AppStream_StackUserAssociation": { "type": "object", - "markdownDescription": "Wireless Device Import Tasks \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdeviceimporttask.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::StackUserAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html)", "allOf": [ { "type": "object", @@ -38014,14 +37967,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::WirelessDeviceImportTask" + "AWS::AppStream::StackUserAssociation" ], "markdownEnumDescriptions": [ - "Wireless Device Import Tasks \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdeviceimporttask.html)" + "Resource Type definition for AWS::AppStream::StackUserAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackuserassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-wirelessdeviceimporttask.json" + "$ref": "resources/aws-appstream-stackuserassociation.json" } }, "required": [ @@ -38035,9 +37988,9 @@ ], "additionalProperties": false }, - "AWS_IoTWireless_DeviceProfile": { + "AWS_Lambda_Permission": { "type": "object", - "markdownDescription": "Device Profile's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-deviceprofile.html)", + "markdownDescription": "The ``AWS::Lambda::Permission`` resource grants an AWS service or another account permission to use a function. You can apply the policy at the function level, or specify a qualifier to restrict access to a single version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name (ARN) of that version or alias to invoke the function.\n To grant permission to another account, specify the account ID as the ``Principal``. To grant permission to an organization defined in AOlong, specify the organization ID as the ``PrincipalOrgID``. For AWS services, the principal is a domain-style identifier defined by the service, like ``s3.amazonaws.com`` or ``sns.amazonaws.com``. For AWS services, you can also specify the ARN of the associated resource as the ``SourceArn``. If you grant permission to a service principal without specifying the source, other accounts could potentially configure resources in their account to invoke your Lambda function.\n If your function has a function URL, you can specify the ``FunctionUrlAuthType`` parameter. This adds a condition to your permission that only applies when your function URL's ``AuthType`` matches the specified ``FunctionUrlAuthType``. For more information about the ``AuthType`` parameter, see [Security and auth model for function URLs](https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html).\n This resource adds a statement to a resource-based permission policy for the function. For more information about function policies, see [Lambda Function Policies](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)", "allOf": [ { "type": "object", @@ -38045,18 +37998,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTWireless::DeviceProfile" + "AWS::Lambda::Permission" ], "markdownEnumDescriptions": [ - "Device Profile's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-deviceprofile.html)" + "The ``AWS::Lambda::Permission`` resource grants an AWS service or another account permission to use a function. You can apply the policy at the function level, or specify a qualifier to restrict access to a single version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name (ARN) of that version or alias to invoke the function.\n To grant permission to another account, specify the account ID as the ``Principal``. To grant permission to an organization defined in AOlong, specify the organization ID as the ``PrincipalOrgID``. For AWS services, the principal is a domain-style identifier defined by the service, like ``s3.amazonaws.com`` or ``sns.amazonaws.com``. For AWS services, you can also specify the ARN of the associated resource as the ``SourceArn``. If you grant permission to a service principal without specifying the source, other accounts could potentially configure resources in their account to invoke your Lambda function.\n If your function has a function URL, you can specify the ``FunctionUrlAuthType`` parameter. This adds a condition to your permission that only applies when your function URL's ``AuthType`` matches the specified ``FunctionUrlAuthType``. For more information about the ``AuthType`` parameter, see [Security and auth model for function URLs](https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html).\n This resource adds a statement to a resource-based permission policy for the function. For more information about function policies, see [Lambda Function Policies](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html)" ] }, "Properties": { - "$ref": "resources/aws-iotwireless-deviceprofile.json" + "$ref": "resources/aws-lambda-permission.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -38065,9 +38019,9 @@ ], "additionalProperties": false }, - "AWS_AppMesh_Mesh": { + "AWS_Chatbot_MicrosoftTeamsChannelConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppMesh::Mesh \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html)", + "markdownDescription": "Resource schema for AWS::Chatbot::MicrosoftTeamsChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html)", "allOf": [ { "type": "object", @@ -38075,18 +38029,19 @@ "Type": { "type": "string", "enum": [ - "AWS::AppMesh::Mesh" + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppMesh::Mesh \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appmesh-mesh.html)" + "Resource schema for AWS::Chatbot::MicrosoftTeamsChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-appmesh-mesh.json" + "$ref": "resources/aws-chatbot-microsoftteamschannelconfiguration.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -38095,9 +38050,9 @@ ], "additionalProperties": false }, - "AWS_IAM_Group": { + "AWS_CleanRooms_Membership": { "type": "object", - "markdownDescription": "Creates a new group.\n For information about the number of groups you can create, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)", + "markdownDescription": "Represents an AWS account that is a part of a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-membership.html)", "allOf": [ { "type": "object", @@ -38105,18 +38060,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::Group" + "AWS::CleanRooms::Membership" ], "markdownEnumDescriptions": [ - "Creates a new group.\n For information about the number of groups you can create, see [Limitations on Entities](https://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-group.html)" + "Represents an AWS account that is a part of a collaboration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-membership.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-group.json" + "$ref": "resources/aws-cleanrooms-membership.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -38125,9 +38081,9 @@ ], "additionalProperties": false }, - "AWS_IVS_RecordingConfiguration": { + "AWS_IoTThingsGraph_FlowTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::RecordingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-recordingconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::IoTThingsGraph::FlowTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html)", "allOf": [ { "type": "object", @@ -38135,14 +38091,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::RecordingConfiguration" + "AWS::IoTThingsGraph::FlowTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::RecordingConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-recordingconfiguration.html)" + "Resource Type definition for AWS::IoTThingsGraph::FlowTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotthingsgraph-flowtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-recordingconfiguration.json" + "$ref": "resources/aws-iotthingsgraph-flowtemplate.json" } }, "required": [ @@ -38156,9 +38112,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_GroupVersion": { + "AWS_SSMQuickSetup_ConfigurationManager": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::GroupVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html)", + "markdownDescription": "Definition of AWS::SSMQuickSetup::ConfigurationManager Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmquicksetup-configurationmanager.html)", "allOf": [ { "type": "object", @@ -38166,14 +38122,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::GroupVersion" + "AWS::SSMQuickSetup::ConfigurationManager" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::GroupVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-groupversion.html)" + "Definition of AWS::SSMQuickSetup::ConfigurationManager Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmquicksetup-configurationmanager.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-groupversion.json" + "$ref": "resources/aws-ssmquicksetup-configurationmanager.json" } }, "required": [ @@ -38187,9 +38143,9 @@ ], "additionalProperties": false }, - "AWS_GlobalAccelerator_Listener": { + "AWS_MediaPackage_Asset": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::Listener \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html)", + "markdownDescription": "Resource schema for AWS::MediaPackage::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html)", "allOf": [ { "type": "object", @@ -38197,14 +38153,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GlobalAccelerator::Listener" + "AWS::MediaPackage::Asset" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GlobalAccelerator::Listener \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-listener.html)" + "Resource schema for AWS::MediaPackage::Asset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackage-asset.html)" ] }, "Properties": { - "$ref": "resources/aws-globalaccelerator-listener.json" + "$ref": "resources/aws-mediapackage-asset.json" } }, "required": [ @@ -38218,9 +38174,9 @@ ], "additionalProperties": false }, - "AWS_Transfer_Workflow": { + "AWS_IAM_InstanceProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Transfer::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-workflow.html)", + "markdownDescription": "Creates a new instance profile. For information about instance profiles, see [Using instance profiles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html).\n For information about the number of instance profiles you can create, see [object quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)", "allOf": [ { "type": "object", @@ -38228,14 +38184,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Transfer::Workflow" + "AWS::IAM::InstanceProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Transfer::Workflow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-workflow.html)" + "Creates a new instance profile. For information about instance profiles, see [Using instance profiles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html).\n For information about the number of instance profiles you can create, see [object quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-transfer-workflow.json" + "$ref": "resources/aws-iam-instanceprofile.json" } }, "required": [ @@ -38249,9 +38205,9 @@ ], "additionalProperties": false }, - "AWS_FraudDetector_Variable": { + "AWS_Macie_CustomDataIdentifier": { "type": "object", - "markdownDescription": "A resource schema for a Variable in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-variable.html)", + "markdownDescription": "Macie CustomDataIdentifier resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html)", "allOf": [ { "type": "object", @@ -38259,14 +38215,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FraudDetector::Variable" + "AWS::Macie::CustomDataIdentifier" ], "markdownEnumDescriptions": [ - "A resource schema for a Variable in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-variable.html)" + "Macie CustomDataIdentifier resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html)" ] }, "Properties": { - "$ref": "resources/aws-frauddetector-variable.json" + "$ref": "resources/aws-macie-customdataidentifier.json" } }, "required": [ @@ -38280,9 +38236,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_Device": { + "AWS_CloudFormation_HookVersion": { "type": "object", - "markdownDescription": "The AWS::NetworkManager::Device type describes a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html)", + "markdownDescription": "Publishes new or first hook version to AWS CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html)", "allOf": [ { "type": "object", @@ -38290,14 +38246,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::Device" + "AWS::CloudFormation::HookVersion" ], "markdownEnumDescriptions": [ - "The AWS::NetworkManager::Device type describes a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-device.html)" + "Publishes new or first hook version to AWS CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-hookversion.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-device.json" + "$ref": "resources/aws-cloudformation-hookversion.json" } }, "required": [ @@ -38311,9 +38267,9 @@ ], "additionalProperties": false }, - "AWS_Glue_UsageProfile": { + "AWS_PCAConnectorAD_Template": { "type": "object", - "markdownDescription": "This creates a Resource of UsageProfile type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-usageprofile.html)", + "markdownDescription": "Represents a template that defines certificate configurations, both for issuance and client handling \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-template.html)", "allOf": [ { "type": "object", @@ -38321,14 +38277,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::UsageProfile" + "AWS::PCAConnectorAD::Template" ], "markdownEnumDescriptions": [ - "This creates a Resource of UsageProfile type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-usageprofile.html)" + "Represents a template that defines certificate configurations, both for issuance and client handling \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-template.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-usageprofile.json" + "$ref": "resources/aws-pcaconnectorad-template.json" } }, "required": [ @@ -38342,9 +38298,9 @@ ], "additionalProperties": false }, - "AWS_MediaTailor_ChannelPolicy": { + "AWS_CloudTrail_EventDataStore": { "type": "object", - "markdownDescription": "Definition of AWS::MediaTailor::ChannelPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channelpolicy.html)", + "markdownDescription": "A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 7 to 2557 or 3653 days (about seven or ten years) depending on the selected BillingMode. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-eventdatastore.html)", "allOf": [ { "type": "object", @@ -38352,19 +38308,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaTailor::ChannelPolicy" + "AWS::CloudTrail::EventDataStore" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaTailor::ChannelPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channelpolicy.html)" + "A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 7 to 2557 or 3653 days (about seven or ten years) depending on the selected BillingMode. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-eventdatastore.html)" ] }, "Properties": { - "$ref": "resources/aws-mediatailor-channelpolicy.json" + "$ref": "resources/aws-cloudtrail-eventdatastore.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -38373,9 +38328,9 @@ ], "additionalProperties": false }, - "AWS_FMS_Policy": { + "AWS_ElasticLoadBalancingV2_ListenerRule": { "type": "object", - "markdownDescription": "Creates an AWS Firewall Manager policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html)", + "markdownDescription": "Specifies a listener rule. The listener must be associated with an Application Load Balancer. Each rule consists of a priority, one or more actions, and one or more conditions.\n For more information, see [Quotas for your Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html) in the *User Guide for Application Load Balancers*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html)", "allOf": [ { "type": "object", @@ -38383,14 +38338,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FMS::Policy" + "AWS::ElasticLoadBalancingV2::ListenerRule" ], "markdownEnumDescriptions": [ - "Creates an AWS Firewall Manager policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html)" + "Specifies a listener rule. The listener must be associated with an Application Load Balancer. Each rule consists of a priority, one or more actions, and one or more conditions.\n For more information, see [Quotas for your Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html) in the *User Guide for Application Load Balancers*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html)" ] }, "Properties": { - "$ref": "resources/aws-fms-policy.json" + "$ref": "resources/aws-elasticloadbalancingv2-listenerrule.json" } }, "required": [ @@ -38404,9 +38359,9 @@ ], "additionalProperties": false }, - "AWS_EC2_SubnetRouteTableAssociation": { + "AWS_PinpointEmail_ConfigurationSetEventDestination": { "type": "object", - "markdownDescription": "Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. A route table can be associated with multiple subnets. To create a route table, see [AWS::EC2::RouteTable](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetroutetableassociation.html)", + "markdownDescription": "Resource Type definition for AWS::PinpointEmail::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html)", "allOf": [ { "type": "object", @@ -38414,14 +38369,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::SubnetRouteTableAssociation" + "AWS::PinpointEmail::ConfigurationSetEventDestination" ], "markdownEnumDescriptions": [ - "Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. A route table can be associated with multiple subnets. To create a route table, see [AWS::EC2::RouteTable](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routetable.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetroutetableassociation.html)" + "Resource Type definition for AWS::PinpointEmail::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationseteventdestination.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-subnetroutetableassociation.json" + "$ref": "resources/aws-pinpointemail-configurationseteventdestination.json" } }, "required": [ @@ -38435,9 +38390,9 @@ ], "additionalProperties": false }, - "AWS_DAX_SubnetGroup": { + "AWS_IoTWireless_DeviceProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DAX::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html)", + "markdownDescription": "Device Profile's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-deviceprofile.html)", "allOf": [ { "type": "object", @@ -38445,19 +38400,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DAX::SubnetGroup" + "AWS::IoTWireless::DeviceProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DAX::SubnetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dax-subnetgroup.html)" + "Device Profile's resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-deviceprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-dax-subnetgroup.json" + "$ref": "resources/aws-iotwireless-deviceprofile.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -38466,9 +38420,9 @@ ], "additionalProperties": false }, - "AWS_CodeStarConnections_Connection": { + "AWS_Transfer_Profile": { "type": "object", - "markdownDescription": "Schema for AWS::CodeStarConnections::Connection resource which can be used to connect external source providers with AWS CodePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html)", + "markdownDescription": "Resource Type definition for AWS::Transfer::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-profile.html)", "allOf": [ { "type": "object", @@ -38476,14 +38430,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeStarConnections::Connection" + "AWS::Transfer::Profile" ], "markdownEnumDescriptions": [ - "Schema for AWS::CodeStarConnections::Connection resource which can be used to connect external source providers with AWS CodePipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarconnections-connection.html)" + "Resource Type definition for AWS::Transfer::Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-profile.html)" ] }, "Properties": { - "$ref": "resources/aws-codestarconnections-connection.json" + "$ref": "resources/aws-transfer-profile.json" } }, "required": [ @@ -38497,9 +38451,9 @@ ], "additionalProperties": false }, - "AWS_ACMPCA_CertificateAuthorityActivation": { + "AWS_SecurityHub_Hub": { "type": "object", - "markdownDescription": "Used to install the certificate authority certificate and update the certificate authority status. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html)", + "markdownDescription": "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html)", "allOf": [ { "type": "object", @@ -38507,19 +38461,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ACMPCA::CertificateAuthorityActivation" + "AWS::SecurityHub::Hub" ], "markdownEnumDescriptions": [ - "Used to install the certificate authority certificate and update the certificate authority status. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-acmpca-certificateauthorityactivation.html)" + "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-hub.html)" ] }, "Properties": { - "$ref": "resources/aws-acmpca-certificateauthorityactivation.json" + "$ref": "resources/aws-securityhub-hub.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -38528,9 +38481,9 @@ ], "additionalProperties": false }, - "AWS_IVSChat_LoggingConfiguration": { + "AWS_Kendra_Index": { "type": "object", - "markdownDescription": "Resource type definition for AWS::IVSChat::LoggingConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html)", + "markdownDescription": "A Kendra index \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-index.html)", "allOf": [ { "type": "object", @@ -38538,14 +38491,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IVSChat::LoggingConfiguration" + "AWS::Kendra::Index" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::IVSChat::LoggingConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivschat-loggingconfiguration.html)" + "A Kendra index \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-index.html)" ] }, "Properties": { - "$ref": "resources/aws-ivschat-loggingconfiguration.json" + "$ref": "resources/aws-kendra-index.json" } }, "required": [ @@ -38559,9 +38512,9 @@ ], "additionalProperties": false }, - "AWS_Evidently_Launch": { + "AWS_WAF_SqlInjectionMatchSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Evidently::Launch. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-launch.html)", + "markdownDescription": "Resource Type definition for AWS::WAF::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html)", "allOf": [ { "type": "object", @@ -38569,14 +38522,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Evidently::Launch" + "AWS::WAF::SqlInjectionMatchSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Evidently::Launch. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-launch.html)" + "Resource Type definition for AWS::WAF::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html)" ] }, "Properties": { - "$ref": "resources/aws-evidently-launch.json" + "$ref": "resources/aws-waf-sqlinjectionmatchset.json" } }, "required": [ @@ -38590,9 +38543,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_CustomerGatewayAssociation": { + "AWS_FraudDetector_Variable": { "type": "object", - "markdownDescription": "The AWS::NetworkManager::CustomerGatewayAssociation type associates a customer gateway with a device and optionally, with a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html)", + "markdownDescription": "A resource schema for a Variable in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-variable.html)", "allOf": [ { "type": "object", @@ -38600,14 +38553,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::CustomerGatewayAssociation" + "AWS::FraudDetector::Variable" ], "markdownEnumDescriptions": [ - "The AWS::NetworkManager::CustomerGatewayAssociation type associates a customer gateway with a device and optionally, with a link. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-customergatewayassociation.html)" + "A resource schema for a Variable in Amazon Fraud Detector. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-variable.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-customergatewayassociation.json" + "$ref": "resources/aws-frauddetector-variable.json" } }, "required": [ @@ -38621,9 +38574,9 @@ ], "additionalProperties": false }, - "AWS_MediaTailor_VodSource": { + "AWS_Route53Profiles_ProfileResourceAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::MediaTailor::VodSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-vodsource.html)", + "markdownDescription": "Resource Type definition for AWS::Route53Profiles::ProfileResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileresourceassociation.html)", "allOf": [ { "type": "object", @@ -38631,14 +38584,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaTailor::VodSource" + "AWS::Route53Profiles::ProfileResourceAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::MediaTailor::VodSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-vodsource.html)" + "Resource Type definition for AWS::Route53Profiles::ProfileResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileresourceassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-mediatailor-vodsource.json" + "$ref": "resources/aws-route53profiles-profileresourceassociation.json" } }, "required": [ @@ -38652,9 +38605,9 @@ ], "additionalProperties": false }, - "AWS_ResourceExplorer2_View": { + "AWS_EC2_IPAM": { "type": "object", - "markdownDescription": "Definition of AWS::ResourceExplorer2::View Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-view.html)", + "markdownDescription": "Resource Schema of AWS::EC2::IPAM Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipam.html)", "allOf": [ { "type": "object", @@ -38662,19 +38615,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ResourceExplorer2::View" + "AWS::EC2::IPAM" ], "markdownEnumDescriptions": [ - "Definition of AWS::ResourceExplorer2::View Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-view.html)" + "Resource Schema of AWS::EC2::IPAM Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ipam.html)" ] }, "Properties": { - "$ref": "resources/aws-resourceexplorer2-view.json" + "$ref": "resources/aws-ec2-ipam.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -38683,9 +38635,9 @@ ], "additionalProperties": false }, - "AWS_Timestream_Database": { + "AWS_MediaLive_Input": { "type": "object", - "markdownDescription": "The AWS::Timestream::Database resource creates a Timestream database. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-database.html)", + "markdownDescription": "Resource Type definition for AWS::MediaLive::Input \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html)", "allOf": [ { "type": "object", @@ -38693,14 +38645,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Timestream::Database" + "AWS::MediaLive::Input" ], "markdownEnumDescriptions": [ - "The AWS::Timestream::Database resource creates a Timestream database. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-timestream-database.html)" + "Resource Type definition for AWS::MediaLive::Input \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-input.html)" ] }, "Properties": { - "$ref": "resources/aws-timestream-database.json" + "$ref": "resources/aws-medialive-input.json" } }, "required": [ @@ -38713,9 +38665,9 @@ ], "additionalProperties": false }, - "AWS_SNS_Topic": { + "AWS_StepFunctions_StateMachineVersion": { "type": "object", - "markdownDescription": "The ``AWS::SNS::Topic`` resource creates a topic to which notifications can be published.\n One account can create a maximum of 100,000 standard topics and 1,000 FIFO topics. For more information, see [endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/sns.html) in the *General Reference*.\n The structure of ``AUTHPARAMS`` depends on the .signature of the API request. For more information, see [Examples of the complete Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html)", + "markdownDescription": "Resource schema for StateMachineVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html)", "allOf": [ { "type": "object", @@ -38723,18 +38675,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SNS::Topic" + "AWS::StepFunctions::StateMachineVersion" ], "markdownEnumDescriptions": [ - "The ``AWS::SNS::Topic`` resource creates a topic to which notifications can be published.\n One account can create a maximum of 100,000 standard topics and 1,000 FIFO topics. For more information, see [endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/sns.html) in the *General Reference*.\n The structure of ``AUTHPARAMS`` depends on the .signature of the API request. For more information, see [Examples of the complete Signature Version 4 signing process](https://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html) in the *General Reference*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-topic.html)" + "Resource schema for StateMachineVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachineversion.html)" ] }, "Properties": { - "$ref": "resources/aws-sns-topic.json" + "$ref": "resources/aws-stepfunctions-statemachineversion.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -38743,9 +38696,9 @@ ], "additionalProperties": false }, - "AWS_IVS_StorageConfiguration": { + "AWS_WorkSpacesWeb_IdentityProvider": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::StorageConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-storageconfiguration.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::IdentityProvider Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-identityprovider.html)", "allOf": [ { "type": "object", @@ -38753,14 +38706,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::StorageConfiguration" + "AWS::WorkSpacesWeb::IdentityProvider" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::StorageConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-storageconfiguration.html)" + "Definition of AWS::WorkSpacesWeb::IdentityProvider Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-identityprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-storageconfiguration.json" + "$ref": "resources/aws-workspacesweb-identityprovider.json" } }, "required": [ @@ -38774,9 +38727,9 @@ ], "additionalProperties": false }, - "AWS_CloudTrail_Channel": { + "AWS_Route53_CidrCollection": { "type": "object", - "markdownDescription": "A channel receives events from a specific source (such as an on-premises storage solution or application, or a partner event data source), and delivers the events to one or more event data stores. You use channels to ingest events into CloudTrail from sources outside AWS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-channel.html)", + "markdownDescription": "Resource Type definition for AWS::Route53::CidrCollection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-cidrcollection.html)", "allOf": [ { "type": "object", @@ -38784,18 +38737,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudTrail::Channel" + "AWS::Route53::CidrCollection" ], "markdownEnumDescriptions": [ - "A channel receives events from a specific source (such as an on-premises storage solution or application, or a partner event data source), and delivers the events to one or more event data stores. You use channels to ingest events into CloudTrail from sources outside AWS. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-channel.html)" + "Resource Type definition for AWS::Route53::CidrCollection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-cidrcollection.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudtrail-channel.json" + "$ref": "resources/aws-route53-cidrcollection.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -38804,9 +38758,9 @@ ], "additionalProperties": false }, - "AWS_RUM_AppMonitor": { + "AWS_Connect_ContactFlow": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::RUM::AppMonitor \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rum-appmonitor.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::ContactFlow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflow.html)", "allOf": [ { "type": "object", @@ -38814,14 +38768,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RUM::AppMonitor" + "AWS::Connect::ContactFlow" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::RUM::AppMonitor \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rum-appmonitor.html)" + "Resource Type definition for AWS::Connect::ContactFlow \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflow.html)" ] }, "Properties": { - "$ref": "resources/aws-rum-appmonitor.json" + "$ref": "resources/aws-connect-contactflow.json" } }, "required": [ @@ -38835,9 +38789,9 @@ ], "additionalProperties": false }, - "AWS_QBusiness_WebExperience": { + "AWS_PCS_ComputeNodeGroup": { "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::WebExperience Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html)", + "markdownDescription": "AWS::PCS::ComputeNodeGroup resource creates an AWS PCS compute node group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html)", "allOf": [ { "type": "object", @@ -38845,14 +38799,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QBusiness::WebExperience" + "AWS::PCS::ComputeNodeGroup" ], "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::WebExperience Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-webexperience.html)" + "AWS::PCS::ComputeNodeGroup resource creates an AWS PCS compute node group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html)" ] }, "Properties": { - "$ref": "resources/aws-qbusiness-webexperience.json" + "$ref": "resources/aws-pcs-computenodegroup.json" } }, "required": [ @@ -38866,9 +38820,9 @@ ], "additionalProperties": false }, - "AWS_Wisdom_AIGuardrailVersion": { + "AWS_Deadline_QueueEnvironment": { "type": "object", - "markdownDescription": "Definition of AWS::Wisdom::AIGuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrailversion.html)", + "markdownDescription": "Definition of AWS::Deadline::QueueEnvironment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queueenvironment.html)", "allOf": [ { "type": "object", @@ -38876,14 +38830,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Wisdom::AIGuardrailVersion" + "AWS::Deadline::QueueEnvironment" ], "markdownEnumDescriptions": [ - "Definition of AWS::Wisdom::AIGuardrailVersion Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wisdom-aiguardrailversion.html)" + "Definition of AWS::Deadline::QueueEnvironment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queueenvironment.html)" ] }, "Properties": { - "$ref": "resources/aws-wisdom-aiguardrailversion.json" + "$ref": "resources/aws-deadline-queueenvironment.json" } }, "required": [ @@ -38897,9 +38851,9 @@ ], "additionalProperties": false }, - "AWS_IAM_UserPolicy": { + "AWS_Glue_DataQualityRuleset": { "type": "object", - "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM user.\n An IAM user can also have a managed policy attached to it. To attach a managed policy to a user, use [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a user, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::Glue::DataQualityRuleset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-dataqualityruleset.html)", "allOf": [ { "type": "object", @@ -38907,19 +38861,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::UserPolicy" + "AWS::Glue::DataQualityRuleset" ], "markdownEnumDescriptions": [ - "Adds or updates an inline policy document that is embedded in the specified IAM user.\n An IAM user can also have a managed policy attached to it. To attach a managed policy to a user, use [AWS::IAM::User](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a user, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-userpolicy.html)" + "Resource Type definition for AWS::Glue::DataQualityRuleset \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-dataqualityruleset.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-userpolicy.json" + "$ref": "resources/aws-glue-dataqualityruleset.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -38928,9 +38881,9 @@ ], "additionalProperties": false }, - "AWS_SSO_ApplicationAssignment": { + "AWS_Cognito_IdentityPool": { "type": "object", - "markdownDescription": "Resource Type definition for SSO application access grant to a user or group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::IdentityPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html)", "allOf": [ { "type": "object", @@ -38938,14 +38891,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSO::ApplicationAssignment" + "AWS::Cognito::IdentityPool" ], "markdownEnumDescriptions": [ - "Resource Type definition for SSO application access grant to a user or group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-applicationassignment.html)" + "Resource Type definition for AWS::Cognito::IdentityPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html)" ] }, "Properties": { - "$ref": "resources/aws-sso-applicationassignment.json" + "$ref": "resources/aws-cognito-identitypool.json" } }, "required": [ @@ -38959,9 +38912,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_Integration": { + "AWS_AppStream_StackFleetAssociation": { "type": "object", - "markdownDescription": "Integration from a source AWS service to a Redshift cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html)", + "markdownDescription": "Resource Type definition for AWS::AppStream::StackFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html)", "allOf": [ { "type": "object", @@ -38969,14 +38922,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::Integration" + "AWS::AppStream::StackFleetAssociation" ], "markdownEnumDescriptions": [ - "Integration from a source AWS service to a Redshift cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-integration.html)" + "Resource Type definition for AWS::AppStream::StackFleetAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appstream-stackfleetassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-integration.json" + "$ref": "resources/aws-appstream-stackfleetassociation.json" } }, "required": [ @@ -38990,9 +38943,9 @@ ], "additionalProperties": false }, - "AWS_Cassandra_Table": { + "AWS_NetworkManager_TransitGatewayPeering": { "type": "object", - "markdownDescription": "Resource schema for AWS::Cassandra::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html)", + "markdownDescription": "AWS::NetworkManager::TransitGatewayPeering Resoruce Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html)", "allOf": [ { "type": "object", @@ -39000,14 +38953,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cassandra::Table" + "AWS::NetworkManager::TransitGatewayPeering" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Cassandra::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html)" + "AWS::NetworkManager::TransitGatewayPeering Resoruce Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html)" ] }, "Properties": { - "$ref": "resources/aws-cassandra-table.json" + "$ref": "resources/aws-networkmanager-transitgatewaypeering.json" } }, "required": [ @@ -39021,9 +38974,9 @@ ], "additionalProperties": false }, - "AWS_Lex_BotAlias": { + "AWS_GuardDuty_IPSet": { "type": "object", - "markdownDescription": "A Bot Alias enables you to change the version of a bot without updating applications that use the bot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botalias.html)", + "markdownDescription": "Resource Type definition for AWS::GuardDuty::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html)", "allOf": [ { "type": "object", @@ -39031,14 +38984,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lex::BotAlias" + "AWS::GuardDuty::IPSet" ], "markdownEnumDescriptions": [ - "A Bot Alias enables you to change the version of a bot without updating applications that use the bot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botalias.html)" + "Resource Type definition for AWS::GuardDuty::IPSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-ipset.html)" ] }, "Properties": { - "$ref": "resources/aws-lex-botalias.json" + "$ref": "resources/aws-guardduty-ipset.json" } }, "required": [ @@ -39052,9 +39005,9 @@ ], "additionalProperties": false }, - "AWS_AmazonMQ_ConfigurationAssociation": { + "AWS_SSM_Association": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AmazonMQ::ConfigurationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html)", + "markdownDescription": "The AWS::SSM::Association resource associates an SSM document in AWS Systems Manager with EC2 instances that contain a configuration agent to process the document. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html)", "allOf": [ { "type": "object", @@ -39062,14 +39015,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AmazonMQ::ConfigurationAssociation" + "AWS::SSM::Association" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AmazonMQ::ConfigurationAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configurationassociation.html)" + "The AWS::SSM::Association resource associates an SSM document in AWS Systems Manager with EC2 instances that contain a configuration agent to process the document. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html)" ] }, "Properties": { - "$ref": "resources/aws-amazonmq-configurationassociation.json" + "$ref": "resources/aws-ssm-association.json" } }, "required": [ @@ -39083,9 +39036,9 @@ ], "additionalProperties": false }, - "AWS_DynamoDB_Table": { + "AWS_Pinpoint_APNSChannel": { "type": "object", - "markdownDescription": "The ``AWS::DynamoDB::Table`` resource creates a DDB table. For more information, see [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html) in the *API Reference*.\n You should be aware of the following behaviors when working with DDB tables:\n + CFNlong typically creates DDB tables in parallel. However, if your template includes multiple DDB tables with indexes, you must declare dependencies so that the tables are created sequentially. DDBlong limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute).\n \n Our guidance is to use the latest schema documented for your CFNlong templates. This schema supports the provisioning of all table settings below. When using this schema in your CFNlong templates, please ensure that your Identity and Access Management (IAM) policies are updated with appropriate permissions to allow for the authorization of these setting changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html)", "allOf": [ { "type": "object", @@ -39093,14 +39046,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DynamoDB::Table" + "AWS::Pinpoint::APNSChannel" ], "markdownEnumDescriptions": [ - "The ``AWS::DynamoDB::Table`` resource creates a DDB table. For more information, see [CreateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html) in the *API Reference*.\n You should be aware of the following behaviors when working with DDB tables:\n + CFNlong typically creates DDB tables in parallel. However, if your template includes multiple DDB tables with indexes, you must declare dependencies so that the tables are created sequentially. DDBlong limits the number of tables with secondary indexes that are in the creating state. If you create multiple tables with indexes at the same time, DDB returns an error and the stack operation fails. For an example, see [DynamoDB Table with a DependsOn Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#aws-resource-dynamodb-table--examples--DynamoDB_Table_with_a_DependsOn_Attribute).\n \n Our guidance is to use the latest schema documented for your CFNlong templates. This schema supports the provisioning of all table settings below. When using this schema in your CFNlong templates, please ensure that your Identity and Access Management (IAM) policies are updated with appropriate permissions to allow for the authorization of these setting changes. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html)" + "Resource Type definition for AWS::Pinpoint::APNSChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnschannel.html)" ] }, "Properties": { - "$ref": "resources/aws-dynamodb-table.json" + "$ref": "resources/aws-pinpoint-apnschannel.json" } }, "required": [ @@ -39114,9 +39067,9 @@ ], "additionalProperties": false }, - "AWS_MediaPackageV2_OriginEndpoint": { + "AWS_MediaLive_CloudWatchAlarmTemplate": { "type": "object", - "markdownDescription": "

Represents an origin endpoint that is associated with a channel, offering a dynamically repackaged version of its content through various streaming media protocols. The content can be efficiently disseminated to end-users via a Content Delivery Network (CDN), like Amazon CloudFront.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html)", + "markdownDescription": "Definition of AWS::MediaLive::CloudWatchAlarmTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplate.html)", "allOf": [ { "type": "object", @@ -39124,14 +39077,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaPackageV2::OriginEndpoint" + "AWS::MediaLive::CloudWatchAlarmTemplate" ], "markdownEnumDescriptions": [ - "

Represents an origin endpoint that is associated with a channel, offering a dynamically repackaged version of its content through various streaming media protocols. The content can be efficiently disseminated to end-users via a Content Delivery Network (CDN), like Amazon CloudFront.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpoint.html)" + "Definition of AWS::MediaLive::CloudWatchAlarmTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-cloudwatchalarmtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-mediapackagev2-originendpoint.json" + "$ref": "resources/aws-medialive-cloudwatchalarmtemplate.json" } }, "required": [ @@ -39145,9 +39098,9 @@ ], "additionalProperties": false }, - "AWS_Kendra_Index": { + "AWS_XRay_ResourcePolicy": { "type": "object", - "markdownDescription": "A Kendra index \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-index.html)", + "markdownDescription": "This schema provides construct and validation rules for AWS-XRay Resource Policy resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-resourcepolicy.html)", "allOf": [ { "type": "object", @@ -39155,14 +39108,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Kendra::Index" + "AWS::XRay::ResourcePolicy" ], "markdownEnumDescriptions": [ - "A Kendra index \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-index.html)" + "This schema provides construct and validation rules for AWS-XRay Resource Policy resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-resourcepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-kendra-index.json" + "$ref": "resources/aws-xray-resourcepolicy.json" } }, "required": [ @@ -39176,9 +39129,9 @@ ], "additionalProperties": false }, - "AWS_Logs_Delivery": { + "AWS_NetworkManager_SiteToSiteVpnAttachment": { "type": "object", - "markdownDescription": "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-delivery.html)", + "markdownDescription": "AWS::NetworkManager::SiteToSiteVpnAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-sitetositevpnattachment.html)", "allOf": [ { "type": "object", @@ -39186,14 +39139,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::Delivery" + "AWS::NetworkManager::SiteToSiteVpnAttachment" ], "markdownEnumDescriptions": [ - "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-delivery.html)" + "AWS::NetworkManager::SiteToSiteVpnAttachment Resource Type definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-sitetositevpnattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-delivery.json" + "$ref": "resources/aws-networkmanager-sitetositevpnattachment.json" } }, "required": [ @@ -39207,9 +39160,9 @@ ], "additionalProperties": false }, - "AWS_IAM_GroupPolicy": { + "AWS_Panorama_ApplicationInstance": { "type": "object", - "markdownDescription": "Adds or updates an inline policy document that is embedded in the specified IAM group.\n A group can also have managed policies attached to it. To attach a managed policy to a group, use [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a group, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html)", + "markdownDescription": "Creates an application instance and deploys it to a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-applicationinstance.html)", "allOf": [ { "type": "object", @@ -39217,14 +39170,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::GroupPolicy" + "AWS::Panorama::ApplicationInstance" ], "markdownEnumDescriptions": [ - "Adds or updates an inline policy document that is embedded in the specified IAM group.\n A group can also have managed policies attached to it. To attach a managed policy to a group, use [AWS::IAM::Group](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html). To create a new managed policy, use [AWS::IAM::ManagedPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html). For information about policies, see [Managed policies and inline policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html) in the *IAM User Guide*.\n For information about the maximum number of inline policies that you can embed in a group, see [IAM and quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *IAM User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-grouppolicy.html)" + "Creates an application instance and deploys it to a device. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-panorama-applicationinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-grouppolicy.json" + "$ref": "resources/aws-panorama-applicationinstance.json" } }, "required": [ @@ -39238,9 +39191,9 @@ ], "additionalProperties": false }, - "AWS_SecurityHub_FindingAggregator": { + "AWS_CloudFront_MonitoringSubscription": { "type": "object", - "markdownDescription": "The ``AWS::SecurityHub::FindingAggregator`` resource enables cross-Region aggregation. When cross-Region aggregation is enabled, you can aggregate findings, finding updates, insights, control compliance statuses, and security scores from one or more linked Regions to a single aggregation Region. You can then view and manage all of this data from the aggregation Region. For more details about cross-Region aggregation, see [Cross-Region aggregation](https://docs.aws.amazon.com/securityhub/latest/userguide/finding-aggregation.html) in the *User Guide*\n This resource must be created in the Region that you want to designate as your aggregation Region.\n Cross-Region aggregation is also a prerequisite for using [central configuration](https://docs.aws.amazon.com/securityhub/latest/userguide/central-configuration-intro.html) in ASH. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-findingaggregator.html)", + "markdownDescription": "A monitoring subscription. This structure contains information about whether additional CloudWatch metrics are enabled for a given CloudFront distribution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-monitoringsubscription.html)", "allOf": [ { "type": "object", @@ -39248,14 +39201,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SecurityHub::FindingAggregator" + "AWS::CloudFront::MonitoringSubscription" ], "markdownEnumDescriptions": [ - "The ``AWS::SecurityHub::FindingAggregator`` resource enables cross-Region aggregation. When cross-Region aggregation is enabled, you can aggregate findings, finding updates, insights, control compliance statuses, and security scores from one or more linked Regions to a single aggregation Region. You can then view and manage all of this data from the aggregation Region. For more details about cross-Region aggregation, see [Cross-Region aggregation](https://docs.aws.amazon.com/securityhub/latest/userguide/finding-aggregation.html) in the *User Guide*\n This resource must be created in the Region that you want to designate as your aggregation Region.\n Cross-Region aggregation is also a prerequisite for using [central configuration](https://docs.aws.amazon.com/securityhub/latest/userguide/central-configuration-intro.html) in ASH. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-findingaggregator.html)" + "A monitoring subscription. This structure contains information about whether additional CloudWatch metrics are enabled for a given CloudFront distribution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-monitoringsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-securityhub-findingaggregator.json" + "$ref": "resources/aws-cloudfront-monitoringsubscription.json" } }, "required": [ @@ -39269,9 +39222,9 @@ ], "additionalProperties": false }, - "AWS_BCMDataExports_Export": { + "AWS_PCAConnectorSCEP_Challenge": { "type": "object", - "markdownDescription": "Definition of AWS::BCMDataExports::Export Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bcmdataexports-export.html)", + "markdownDescription": "Represents a SCEP Challenge that is used for certificate enrollment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-challenge.html)", "allOf": [ { "type": "object", @@ -39279,14 +39232,14 @@ "Type": { "type": "string", "enum": [ - "AWS::BCMDataExports::Export" + "AWS::PCAConnectorSCEP::Challenge" ], "markdownEnumDescriptions": [ - "Definition of AWS::BCMDataExports::Export Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bcmdataexports-export.html)" + "Represents a SCEP Challenge that is used for certificate enrollment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorscep-challenge.html)" ] }, "Properties": { - "$ref": "resources/aws-bcmdataexports-export.json" + "$ref": "resources/aws-pcaconnectorscep-challenge.json" } }, "required": [ @@ -39300,9 +39253,9 @@ ], "additionalProperties": false }, - "AWS_ECR_RegistryPolicy": { + "AWS_EC2_TransitGatewayRouteTablePropagation": { "type": "object", - "markdownDescription": "The ``AWS::ECR::RegistryPolicy`` resource creates or updates the permissions policy for a private registry.\n A private registry policy is used to specify permissions for another AWS-account and is used when configuring cross-account replication. For more information, see [Registry permissions](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry-permissions.html) in the *Amazon Elastic Container Registry User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html)", + "markdownDescription": "AWS::EC2::TransitGatewayRouteTablePropagation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html)", "allOf": [ { "type": "object", @@ -39310,14 +39263,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECR::RegistryPolicy" + "AWS::EC2::TransitGatewayRouteTablePropagation" ], "markdownEnumDescriptions": [ - "The ``AWS::ECR::RegistryPolicy`` resource creates or updates the permissions policy for a private registry.\n A private registry policy is used to specify permissions for another AWS-account and is used when configuring cross-account replication. For more information, see [Registry permissions](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry-permissions.html) in the *Amazon Elastic Container Registry User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-registrypolicy.html)" + "AWS::EC2::TransitGatewayRouteTablePropagation Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayroutetablepropagation.html)" ] }, "Properties": { - "$ref": "resources/aws-ecr-registrypolicy.json" + "$ref": "resources/aws-ec2-transitgatewayroutetablepropagation.json" } }, "required": [ @@ -39331,9 +39284,9 @@ ], "additionalProperties": false }, - "AWS_Config_ConfigurationAggregator": { + "AWS_Greengrass_ConnectorDefinition": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Config::ConfigurationAggregator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html)", + "markdownDescription": "Resource Type definition for AWS::Greengrass::ConnectorDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html)", "allOf": [ { "type": "object", @@ -39341,18 +39294,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::ConfigurationAggregator" + "AWS::Greengrass::ConnectorDefinition" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Config::ConfigurationAggregator \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationaggregator.html)" + "Resource Type definition for AWS::Greengrass::ConnectorDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-connectordefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-config-configurationaggregator.json" + "$ref": "resources/aws-greengrass-connectordefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -39361,9 +39315,9 @@ ], "additionalProperties": false }, - "AWS_DMS_ReplicationInstance": { + "AWS_S3Express_AccessPoint": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DMS::ReplicationInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html)", + "markdownDescription": "The AWS::S3Express::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html)", "allOf": [ { "type": "object", @@ -39371,14 +39325,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::ReplicationInstance" + "AWS::S3Express::AccessPoint" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DMS::ReplicationInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html)" + "The AWS::S3Express::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-replicationinstance.json" + "$ref": "resources/aws-s3express-accesspoint.json" } }, "required": [ @@ -39392,9 +39346,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_VpcLink": { + "AWS_Route53_DNSSEC": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::VpcLink`` resource creates an API Gateway VPC link for a REST API to access resources in an Amazon Virtual Private Cloud (VPC). For more information, see [vpclink:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateVpcLink.html) in the ``Amazon API Gateway REST API Reference``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html)", + "markdownDescription": "Resource used to control (enable/disable) DNSSEC in a specific hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-dnssec.html)", "allOf": [ { "type": "object", @@ -39402,14 +39356,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::VpcLink" + "AWS::Route53::DNSSEC" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::VpcLink`` resource creates an API Gateway VPC link for a REST API to access resources in an Amazon Virtual Private Cloud (VPC). For more information, see [vpclink:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateVpcLink.html) in the ``Amazon API Gateway REST API Reference``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html)" + "Resource used to control (enable/disable) DNSSEC in a specific hosted zone. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-dnssec.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-vpclink.json" + "$ref": "resources/aws-route53-dnssec.json" } }, "required": [ @@ -39423,9 +39377,9 @@ ], "additionalProperties": false }, - "AWS_CE_AnomalySubscription": { + "AWS_ApiGateway_BasePathMappingV2": { "type": "object", - "markdownDescription": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalysubscription.html)", + "markdownDescription": "Resource Type definition for AWS::ApiGateway::BasePathMappingV2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmappingv2.html)", "allOf": [ { "type": "object", @@ -39433,14 +39387,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CE::AnomalySubscription" + "AWS::ApiGateway::BasePathMappingV2" ], "markdownEnumDescriptions": [ - "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalysubscription.html)" + "Resource Type definition for AWS::ApiGateway::BasePathMappingV2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmappingv2.html)" ] }, "Properties": { - "$ref": "resources/aws-ce-anomalysubscription.json" + "$ref": "resources/aws-apigateway-basepathmappingv2.json" } }, "required": [ @@ -39454,9 +39408,9 @@ ], "additionalProperties": false }, - "AWS_GroundStation_Config": { + "AWS_AppRunner_ObservabilityConfiguration": { "type": "object", - "markdownDescription": "AWS Ground Station config resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html)", + "markdownDescription": "The AWS::AppRunner::ObservabilityConfiguration resource is an AWS App Runner resource type that specifies an App Runner observability configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-observabilityconfiguration.html)", "allOf": [ { "type": "object", @@ -39464,19 +39418,18 @@ "Type": { "type": "string", "enum": [ - "AWS::GroundStation::Config" + "AWS::AppRunner::ObservabilityConfiguration" ], "markdownEnumDescriptions": [ - "AWS Ground Station config resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html)" + "The AWS::AppRunner::ObservabilityConfiguration resource is an AWS App Runner resource type that specifies an App Runner observability configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-observabilityconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-groundstation-config.json" + "$ref": "resources/aws-apprunner-observabilityconfiguration.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -39485,9 +39438,9 @@ ], "additionalProperties": false }, - "AWS_MediaConnect_FlowSource": { + "AWS_EC2_ClientVpnRoute": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaConnect::FlowSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html)", "allOf": [ { "type": "object", @@ -39495,14 +39448,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaConnect::FlowSource" + "AWS::EC2::ClientVpnRoute" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaConnect::FlowSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-flowsource.html)" + "Resource Type definition for AWS::EC2::ClientVpnRoute \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnroute.html)" ] }, "Properties": { - "$ref": "resources/aws-mediaconnect-flowsource.json" + "$ref": "resources/aws-ec2-clientvpnroute.json" } }, "required": [ @@ -39516,9 +39469,9 @@ ], "additionalProperties": false }, - "AWS_Redshift_ClusterSecurityGroupIngress": { + "AWS_DataPipeline_Pipeline": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Redshift::ClusterSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html)", "allOf": [ { "type": "object", @@ -39526,14 +39479,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Redshift::ClusterSecurityGroupIngress" + "AWS::DataPipeline::Pipeline" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Redshift::ClusterSecurityGroupIngress \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html)" ] }, "Properties": { - "$ref": "resources/aws-redshift-clustersecuritygroupingress.json" + "$ref": "resources/aws-datapipeline-pipeline.json" } }, "required": [ @@ -39547,9 +39500,9 @@ ], "additionalProperties": false }, - "AWS_Connect_TaskTemplate": { + "AWS_CertificateManager_Account": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::TaskTemplate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-tasktemplate.html)", + "markdownDescription": "Resource schema for AWS::CertificateManager::Account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-account.html)", "allOf": [ { "type": "object", @@ -39557,14 +39510,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::TaskTemplate" + "AWS::CertificateManager::Account" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::TaskTemplate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-tasktemplate.html)" + "Resource schema for AWS::CertificateManager::Account. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-account.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-tasktemplate.json" + "$ref": "resources/aws-certificatemanager-account.json" } }, "required": [ @@ -39578,9 +39531,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_MonitoringSubscription": { + "AWS_SecurityHub_AutomationRuleV2": { "type": "object", - "markdownDescription": "A monitoring subscription. This structure contains information about whether additional CloudWatch metrics are enabled for a given CloudFront distribution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-monitoringsubscription.html)", + "markdownDescription": "Resource schema for AWS::SecurityHub::AutomationRuleV2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-automationrulev2.html)", "allOf": [ { "type": "object", @@ -39588,14 +39541,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::MonitoringSubscription" + "AWS::SecurityHub::AutomationRuleV2" ], "markdownEnumDescriptions": [ - "A monitoring subscription. This structure contains information about whether additional CloudWatch metrics are enabled for a given CloudFront distribution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-monitoringsubscription.html)" + "Resource schema for AWS::SecurityHub::AutomationRuleV2 \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-automationrulev2.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-monitoringsubscription.json" + "$ref": "resources/aws-securityhub-automationrulev2.json" } }, "required": [ @@ -39609,9 +39562,9 @@ ], "additionalProperties": false }, - "AWS_AmazonMQ_Configuration": { + "AWS_ServiceCatalog_AcceptedPortfolioShare": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AmazonMQ::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::AcceptedPortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html)", "allOf": [ { "type": "object", @@ -39619,14 +39572,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AmazonMQ::Configuration" + "AWS::ServiceCatalog::AcceptedPortfolioShare" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AmazonMQ::Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amazonmq-configuration.html)" + "Resource Type definition for AWS::ServiceCatalog::AcceptedPortfolioShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-acceptedportfolioshare.html)" ] }, "Properties": { - "$ref": "resources/aws-amazonmq-configuration.json" + "$ref": "resources/aws-servicecatalog-acceptedportfolioshare.json" } }, "required": [ @@ -39640,9 +39593,9 @@ ], "additionalProperties": false }, - "AWS_AppFlow_ConnectorProfile": { + "AWS_Lex_BotAlias": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::AppFlow::ConnectorProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html)", + "markdownDescription": "A Bot Alias enables you to change the version of a bot without updating applications that use the bot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botalias.html)", "allOf": [ { "type": "object", @@ -39650,14 +39603,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppFlow::ConnectorProfile" + "AWS::Lex::BotAlias" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::AppFlow::ConnectorProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connectorprofile.html)" + "A Bot Alias enables you to change the version of a bot without updating applications that use the bot \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lex-botalias.html)" ] }, "Properties": { - "$ref": "resources/aws-appflow-connectorprofile.json" + "$ref": "resources/aws-lex-botalias.json" } }, "required": [ @@ -39671,9 +39624,9 @@ ], "additionalProperties": false }, - "AWS_Backup_BackupSelection": { + "AWS_PinpointEmail_ConfigurationSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Backup::BackupSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html)", + "markdownDescription": "Resource Type definition for AWS::PinpointEmail::ConfigurationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html)", "allOf": [ { "type": "object", @@ -39681,14 +39634,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::BackupSelection" + "AWS::PinpointEmail::ConfigurationSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Backup::BackupSelection \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupselection.html)" + "Resource Type definition for AWS::PinpointEmail::ConfigurationSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-configurationset.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-backupselection.json" + "$ref": "resources/aws-pinpointemail-configurationset.json" } }, "required": [ @@ -39702,9 +39655,9 @@ ], "additionalProperties": false }, - "AWS_PaymentCryptography_Alias": { + "AWS_EntityResolution_MatchingWorkflow": { "type": "object", - "markdownDescription": "Definition of AWS::PaymentCryptography::Alias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-alias.html)", + "markdownDescription": "MatchingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-matchingworkflow.html)", "allOf": [ { "type": "object", @@ -39712,14 +39665,14 @@ "Type": { "type": "string", "enum": [ - "AWS::PaymentCryptography::Alias" + "AWS::EntityResolution::MatchingWorkflow" ], "markdownEnumDescriptions": [ - "Definition of AWS::PaymentCryptography::Alias Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-alias.html)" + "MatchingWorkflow defined in AWS Entity Resolution service \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-entityresolution-matchingworkflow.html)" ] }, "Properties": { - "$ref": "resources/aws-paymentcryptography-alias.json" + "$ref": "resources/aws-entityresolution-matchingworkflow.json" } }, "required": [ @@ -39733,9 +39686,9 @@ ], "additionalProperties": false }, - "AWS_Config_OrganizationConfigRule": { + "AWS_Amplify_App": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Config::OrganizationConfigRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html)", + "markdownDescription": "The AWS::Amplify::App resource creates Apps in the Amplify Console. An App is a collection of branches. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html)", "allOf": [ { "type": "object", @@ -39743,14 +39696,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Config::OrganizationConfigRule" + "AWS::Amplify::App" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Config::OrganizationConfigRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html)" + "The AWS::Amplify::App resource creates Apps in the Amplify Console. An App is a collection of branches. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-app.html)" ] }, "Properties": { - "$ref": "resources/aws-config-organizationconfigrule.json" + "$ref": "resources/aws-amplify-app.json" } }, "required": [ @@ -39764,9 +39717,9 @@ ], "additionalProperties": false }, - "AWS_Shield_Protection": { + "AWS_DocDB_EventSubscription": { "type": "object", - "markdownDescription": "Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, AWS Global Accelerator standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by association with protected Amazon EC2 Elastic IP addresses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protection.html)", + "markdownDescription": "Resource Type definition for AWS::DocDB::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-eventsubscription.html)", "allOf": [ { "type": "object", @@ -39774,14 +39727,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Shield::Protection" + "AWS::DocDB::EventSubscription" ], "markdownEnumDescriptions": [ - "Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, AWS Global Accelerator standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by association with protected Amazon EC2 Elastic IP addresses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protection.html)" + "Resource Type definition for AWS::DocDB::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-eventsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-shield-protection.json" + "$ref": "resources/aws-docdb-eventsubscription.json" } }, "required": [ @@ -39795,9 +39748,9 @@ ], "additionalProperties": false }, - "AWS_IoT_MitigationAction": { + "AWS_MediaConnect_Gateway": { "type": "object", - "markdownDescription": "Mitigation actions can be used to take actions to mitigate issues that were found in an Audit finding or Detect violation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html)", + "markdownDescription": "Resource schema for AWS::MediaConnect::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-gateway.html)", "allOf": [ { "type": "object", @@ -39805,14 +39758,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::MitigationAction" + "AWS::MediaConnect::Gateway" ], "markdownEnumDescriptions": [ - "Mitigation actions can be used to take actions to mitigate issues that were found in an Audit finding or Detect violation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html)" + "Resource schema for AWS::MediaConnect::Gateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediaconnect-gateway.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-mitigationaction.json" + "$ref": "resources/aws-mediaconnect-gateway.json" } }, "required": [ @@ -39826,9 +39779,9 @@ ], "additionalProperties": false }, - "AWS_QBusiness_Permission": { + "AWS_Notifications_ChannelAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::QBusiness::Permission Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-permission.html)", + "markdownDescription": "Resource Type definition for AWS::Notifications::ChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-channelassociation.html)", "allOf": [ { "type": "object", @@ -39836,14 +39789,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QBusiness::Permission" + "AWS::Notifications::ChannelAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::QBusiness::Permission Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-permission.html)" + "Resource Type definition for AWS::Notifications::ChannelAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-channelassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-qbusiness-permission.json" + "$ref": "resources/aws-notifications-channelassociation.json" } }, "required": [ @@ -39857,9 +39810,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_Stack": { + "AWS_Pinpoint_InAppTemplate": { "type": "object", - "markdownDescription": "The AWS::CloudFormation::Stack resource nests a stack as a resource in a top-level template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html)", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::InAppTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-inapptemplate.html)", "allOf": [ { "type": "object", @@ -39867,14 +39820,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::Stack" + "AWS::Pinpoint::InAppTemplate" ], "markdownEnumDescriptions": [ - "The AWS::CloudFormation::Stack resource nests a stack as a resource in a top-level template. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html)" + "Resource Type definition for AWS::Pinpoint::InAppTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-inapptemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-stack.json" + "$ref": "resources/aws-pinpoint-inapptemplate.json" } }, "required": [ @@ -39888,9 +39841,9 @@ ], "additionalProperties": false }, - "AWS_Personalize_Solution": { + "AWS_WAFv2_RegexPatternSet": { "type": "object", - "markdownDescription": "Resource schema for AWS::Personalize::Solution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-solution.html)", + "markdownDescription": "Contains a list of Regular expressions based on the provided inputs. RegexPatternSet can be used with other WAF entities with RegexPatternSetReferenceStatement to perform other actions . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html)", "allOf": [ { "type": "object", @@ -39898,14 +39851,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Personalize::Solution" + "AWS::WAFv2::RegexPatternSet" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Personalize::Solution. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-personalize-solution.html)" + "Contains a list of Regular expressions based on the provided inputs. RegexPatternSet can be used with other WAF entities with RegexPatternSetReferenceStatement to perform other actions . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-regexpatternset.html)" ] }, "Properties": { - "$ref": "resources/aws-personalize-solution.json" + "$ref": "resources/aws-wafv2-regexpatternset.json" } }, "required": [ @@ -39919,9 +39872,9 @@ ], "additionalProperties": false }, - "AWS_Macie_CustomDataIdentifier": { + "AWS_FIS_TargetAccountConfiguration": { "type": "object", - "markdownDescription": "Macie CustomDataIdentifier resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html)", + "markdownDescription": "Resource schema for AWS::FIS::TargetAccountConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-targetaccountconfiguration.html)", "allOf": [ { "type": "object", @@ -39929,14 +39882,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Macie::CustomDataIdentifier" + "AWS::FIS::TargetAccountConfiguration" ], "markdownEnumDescriptions": [ - "Macie CustomDataIdentifier resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-customdataidentifier.html)" + "Resource schema for AWS::FIS::TargetAccountConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fis-targetaccountconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-macie-customdataidentifier.json" + "$ref": "resources/aws-fis-targetaccountconfiguration.json" } }, "required": [ @@ -39950,9 +39903,9 @@ ], "additionalProperties": false }, - "AWS_RDS_OptionGroup": { + "AWS_PaymentCryptography_Key": { "type": "object", - "markdownDescription": "The ``AWS::RDS::OptionGroup`` resource creates or updates an option group, to enable and configure features that are specific to a particular DB engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html)", + "markdownDescription": "Definition of AWS::PaymentCryptography::Key Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-key.html)", "allOf": [ { "type": "object", @@ -39960,14 +39913,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::OptionGroup" + "AWS::PaymentCryptography::Key" ], "markdownEnumDescriptions": [ - "The ``AWS::RDS::OptionGroup`` resource creates or updates an option group, to enable and configure features that are specific to a particular DB engine. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html)" + "Definition of AWS::PaymentCryptography::Key Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-paymentcryptography-key.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-optiongroup.json" + "$ref": "resources/aws-paymentcryptography-key.json" } }, "required": [ @@ -39981,9 +39934,9 @@ ], "additionalProperties": false }, - "AWS_DocDB_EventSubscription": { + "AWS_EC2_EIPAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::DocDB::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-eventsubscription.html)", + "markdownDescription": "Associates an Elastic IP address with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your account. For more information about working with Elastic IP addresses, see [Elastic IP address concepts and rules](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#vpc-eip-overview).\n You must specify ``AllocationId`` and either ``InstanceId``, ``NetworkInterfaceId``, or ``PrivateIpAddress``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eipassociation.html)", "allOf": [ { "type": "object", @@ -39991,19 +39944,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DocDB::EventSubscription" + "AWS::EC2::EIPAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::DocDB::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdb-eventsubscription.html)" + "Associates an Elastic IP address with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your account. For more information about working with Elastic IP addresses, see [Elastic IP address concepts and rules](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#vpc-eip-overview).\n You must specify ``AllocationId`` and either ``InstanceId``, ``NetworkInterfaceId``, or ``PrivateIpAddress``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eipassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-docdb-eventsubscription.json" + "$ref": "resources/aws-ec2-eipassociation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -40012,9 +39964,9 @@ ], "additionalProperties": false }, - "AWS_CloudFront_PublicKey": { + "AWS_RDS_Integration": { "type": "object", - "markdownDescription": "A public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html)", + "markdownDescription": "A zero-ETL integration with Amazon Redshift. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-integration.html)", "allOf": [ { "type": "object", @@ -40022,14 +39974,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFront::PublicKey" + "AWS::RDS::Integration" ], "markdownEnumDescriptions": [ - "A public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-publickey.html)" + "A zero-ETL integration with Amazon Redshift. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-integration.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudfront-publickey.json" + "$ref": "resources/aws-rds-integration.json" } }, "required": [ @@ -40043,9 +39995,9 @@ ], "additionalProperties": false }, - "AWS_Macie_FindingsFilter": { + "AWS_ServiceDiscovery_Instance": { "type": "object", - "markdownDescription": "Macie FindingsFilter resource schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html)", "allOf": [ { "type": "object", @@ -40053,14 +40005,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Macie::FindingsFilter" + "AWS::ServiceDiscovery::Instance" ], "markdownEnumDescriptions": [ - "Macie FindingsFilter resource schema. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-macie-findingsfilter.html)" + "Resource Type definition for AWS::ServiceDiscovery::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-instance.html)" ] }, "Properties": { - "$ref": "resources/aws-macie-findingsfilter.json" + "$ref": "resources/aws-servicediscovery-instance.json" } }, "required": [ @@ -40074,9 +40026,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_SubscriptionDefinitionVersion": { + "AWS_IoTFleetWise_Fleet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::SubscriptionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html)", + "markdownDescription": "Definition of AWS::IoTFleetWise::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html)", "allOf": [ { "type": "object", @@ -40084,14 +40036,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::SubscriptionDefinitionVersion" + "AWS::IoTFleetWise::Fleet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::SubscriptionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinitionversion.html)" + "Definition of AWS::IoTFleetWise::Fleet Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-fleet.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-subscriptiondefinitionversion.json" + "$ref": "resources/aws-iotfleetwise-fleet.json" } }, "required": [ @@ -40105,9 +40057,9 @@ ], "additionalProperties": false }, - "AWS_SSM_ResourceDataSync": { + "AWS_DevOpsGuru_NotificationChannel": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SSM::ResourceDataSync \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html)", + "markdownDescription": "This resource schema represents the NotificationChannel resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-notificationchannel.html)", "allOf": [ { "type": "object", @@ -40115,14 +40067,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SSM::ResourceDataSync" + "AWS::DevOpsGuru::NotificationChannel" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SSM::ResourceDataSync \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-resourcedatasync.html)" + "This resource schema represents the NotificationChannel resource in the Amazon DevOps Guru. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devopsguru-notificationchannel.html)" ] }, "Properties": { - "$ref": "resources/aws-ssm-resourcedatasync.json" + "$ref": "resources/aws-devopsguru-notificationchannel.json" } }, "required": [ @@ -40136,9 +40088,9 @@ ], "additionalProperties": false }, - "AWS_ResourceExplorer2_DefaultViewAssociation": { + "AWS_EMR_InstanceFleetConfig": { "type": "object", - "markdownDescription": "Definition of AWS::ResourceExplorer2::DefaultViewAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-defaultviewassociation.html)", + "markdownDescription": "Resource Type definition for AWS::EMR::InstanceFleetConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancefleetconfig.html)", "allOf": [ { "type": "object", @@ -40146,14 +40098,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ResourceExplorer2::DefaultViewAssociation" + "AWS::EMR::InstanceFleetConfig" ], "markdownEnumDescriptions": [ - "Definition of AWS::ResourceExplorer2::DefaultViewAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-resourceexplorer2-defaultviewassociation.html)" + "Resource Type definition for AWS::EMR::InstanceFleetConfig \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancefleetconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-resourceexplorer2-defaultviewassociation.json" + "$ref": "resources/aws-emr-instancefleetconfig.json" } }, "required": [ @@ -40167,9 +40119,9 @@ ], "additionalProperties": false }, - "AWS_WAFv2_LoggingConfiguration": { + "AWS_VpcLattice_ServiceNetworkVpcAssociation": { "type": "object", - "markdownDescription": "A WAFv2 Logging Configuration Resource Provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html)", + "markdownDescription": "Associates a VPC with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html)", "allOf": [ { "type": "object", @@ -40177,19 +40129,18 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFv2::LoggingConfiguration" + "AWS::VpcLattice::ServiceNetworkVpcAssociation" ], "markdownEnumDescriptions": [ - "A WAFv2 Logging Configuration Resource Provider \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html)" + "Associates a VPC with a service network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkvpcassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-wafv2-loggingconfiguration.json" + "$ref": "resources/aws-vpclattice-servicenetworkvpcassociation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -40198,9 +40149,9 @@ ], "additionalProperties": false }, - "AWS_Route53_RecordSetGroup": { + "AWS_Neptune_DBInstance": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Route53::RecordSetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html)", + "markdownDescription": "The AWS::Neptune::DBInstance resource creates an Amazon Neptune DB instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html)", "allOf": [ { "type": "object", @@ -40208,18 +40159,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53::RecordSetGroup" + "AWS::Neptune::DBInstance" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Route53::RecordSetGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html)" + "The AWS::Neptune::DBInstance resource creates an Amazon Neptune DB instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-route53-recordsetgroup.json" + "$ref": "resources/aws-neptune-dbinstance.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -40228,9 +40180,9 @@ ], "additionalProperties": false }, - "AWS_WAF_Rule": { + "AWS_Lightsail_Certificate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAF::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-certificate.html)", "allOf": [ { "type": "object", @@ -40238,14 +40190,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAF::Rule" + "AWS::Lightsail::Certificate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAF::Rule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html)" + "Resource Type definition for AWS::Lightsail::Certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-certificate.html)" ] }, "Properties": { - "$ref": "resources/aws-waf-rule.json" + "$ref": "resources/aws-lightsail-certificate.json" } }, "required": [ @@ -40259,9 +40211,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_ResourceConfiguration": { + "AWS_Connect_SecurityProfile": { "type": "object", - "markdownDescription": "VpcLattice ResourceConfiguration CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourceconfiguration.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::SecurityProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securityprofile.html)", "allOf": [ { "type": "object", @@ -40269,14 +40221,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::ResourceConfiguration" + "AWS::Connect::SecurityProfile" ], "markdownEnumDescriptions": [ - "VpcLattice ResourceConfiguration CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-resourceconfiguration.html)" + "Resource Type definition for AWS::Connect::SecurityProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securityprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-resourceconfiguration.json" + "$ref": "resources/aws-connect-securityprofile.json" } }, "required": [ @@ -40290,9 +40242,9 @@ ], "additionalProperties": false }, - "AWS_PinpointEmail_DedicatedIpPool": { + "AWS_QBusiness_Retriever": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::PinpointEmail::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html)", + "markdownDescription": "Definition of AWS::QBusiness::Retriever Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html)", "allOf": [ { "type": "object", @@ -40300,18 +40252,19 @@ "Type": { "type": "string", "enum": [ - "AWS::PinpointEmail::DedicatedIpPool" + "AWS::QBusiness::Retriever" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::PinpointEmail::DedicatedIpPool \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpointemail-dedicatedippool.html)" + "Definition of AWS::QBusiness::Retriever Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-qbusiness-retriever.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpointemail-dedicatedippool.json" + "$ref": "resources/aws-qbusiness-retriever.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -40320,9 +40273,9 @@ ], "additionalProperties": false }, - "AWS_LicenseManager_Grant": { + "AWS_Detective_Graph": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html)", + "markdownDescription": "Resource schema for AWS::Detective::Graph \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-graph.html)", "allOf": [ { "type": "object", @@ -40330,14 +40283,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LicenseManager::Grant" + "AWS::Detective::Graph" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-licensemanager-grant.html)" + "Resource schema for AWS::Detective::Graph \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-graph.html)" ] }, "Properties": { - "$ref": "resources/aws-licensemanager-grant.json" + "$ref": "resources/aws-detective-graph.json" } }, "required": [ @@ -40350,9 +40303,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_TransitGatewayPeering": { + "AWS_S3Tables_Table": { "type": "object", - "markdownDescription": "AWS::NetworkManager::TransitGatewayPeering Resoruce Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html)", + "markdownDescription": "Resource Type definition for AWS::S3Tables::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-table.html)", "allOf": [ { "type": "object", @@ -40360,14 +40313,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::TransitGatewayPeering" + "AWS::S3Tables::Table" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::TransitGatewayPeering Resoruce Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-transitgatewaypeering.html)" + "Resource Type definition for AWS::S3Tables::Table \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-table.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-transitgatewaypeering.json" + "$ref": "resources/aws-s3tables-table.json" } }, "required": [ @@ -40381,9 +40334,9 @@ ], "additionalProperties": false }, - "AWS_KinesisVideo_SignalingChannel": { + "AWS_Rekognition_Collection": { "type": "object", - "markdownDescription": "Resource Type Definition for AWS::KinesisVideo::SignalingChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html)", + "markdownDescription": "The AWS::Rekognition::Collection type creates an Amazon Rekognition Collection. A collection is a logical grouping of information about detected faces which can later be referenced for searches on the group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-collection.html)", "allOf": [ { "type": "object", @@ -40391,18 +40344,19 @@ "Type": { "type": "string", "enum": [ - "AWS::KinesisVideo::SignalingChannel" + "AWS::Rekognition::Collection" ], "markdownEnumDescriptions": [ - "Resource Type Definition for AWS::KinesisVideo::SignalingChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisvideo-signalingchannel.html)" + "The AWS::Rekognition::Collection type creates an Amazon Rekognition Collection. A collection is a logical grouping of information about detected faces which can later be referenced for searches on the group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rekognition-collection.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesisvideo-signalingchannel.json" + "$ref": "resources/aws-rekognition-collection.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -40411,9 +40365,9 @@ ], "additionalProperties": false }, - "AWS_LookoutMetrics_AnomalyDetector": { + "AWS_AppConfig_Environment": { "type": "object", - "markdownDescription": "An Amazon Lookout for Metrics Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-anomalydetector.html)", + "markdownDescription": "Resource Type definition for AWS::AppConfig::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-environment.html)", "allOf": [ { "type": "object", @@ -40421,14 +40375,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LookoutMetrics::AnomalyDetector" + "AWS::AppConfig::Environment" ], "markdownEnumDescriptions": [ - "An Amazon Lookout for Metrics Detector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-anomalydetector.html)" + "Resource Type definition for AWS::AppConfig::Environment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-environment.html)" ] }, "Properties": { - "$ref": "resources/aws-lookoutmetrics-anomalydetector.json" + "$ref": "resources/aws-appconfig-environment.json" } }, "required": [ @@ -40442,9 +40396,9 @@ ], "additionalProperties": false }, - "AWS_WorkSpacesWeb_UserAccessLoggingSettings": { + "AWS_Route53Resolver_ResolverEndpoint": { "type": "object", - "markdownDescription": "Definition of AWS::WorkSpacesWeb::UserAccessLoggingSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-useraccessloggingsettings.html)", + "markdownDescription": "Resource type definition for AWS::Route53Resolver::ResolverEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html)", "allOf": [ { "type": "object", @@ -40452,14 +40406,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WorkSpacesWeb::UserAccessLoggingSettings" + "AWS::Route53Resolver::ResolverEndpoint" ], "markdownEnumDescriptions": [ - "Definition of AWS::WorkSpacesWeb::UserAccessLoggingSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-useraccessloggingsettings.html)" + "Resource type definition for AWS::Route53Resolver::ResolverEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-workspacesweb-useraccessloggingsettings.json" + "$ref": "resources/aws-route53resolver-resolverendpoint.json" } }, "required": [ @@ -40473,9 +40427,9 @@ ], "additionalProperties": false }, - "AWS_Lambda_Url": { + "AWS_Notifications_NotificationHub": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lambda::Url \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html)", + "markdownDescription": "Resource Type definition for AWS::Notifications::NotificationHub \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationhub.html)", "allOf": [ { "type": "object", @@ -40483,14 +40437,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lambda::Url" + "AWS::Notifications::NotificationHub" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lambda::Url \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-url.html)" + "Resource Type definition for AWS::Notifications::NotificationHub \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-notifications-notificationhub.html)" ] }, "Properties": { - "$ref": "resources/aws-lambda-url.json" + "$ref": "resources/aws-notifications-notificationhub.json" } }, "required": [ @@ -40504,9 +40458,9 @@ ], "additionalProperties": false }, - "AWS_VerifiedPermissions_IdentitySource": { + "AWS_AppFlow_Connector": { "type": "object", - "markdownDescription": "Definition of AWS::VerifiedPermissions::IdentitySource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-identitysource.html)", + "markdownDescription": "Resource schema for AWS::AppFlow::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connector.html)", "allOf": [ { "type": "object", @@ -40514,14 +40468,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VerifiedPermissions::IdentitySource" + "AWS::AppFlow::Connector" ], "markdownEnumDescriptions": [ - "Definition of AWS::VerifiedPermissions::IdentitySource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-verifiedpermissions-identitysource.html)" + "Resource schema for AWS::AppFlow::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-connector.html)" ] }, "Properties": { - "$ref": "resources/aws-verifiedpermissions-identitysource.json" + "$ref": "resources/aws-appflow-connector.json" } }, "required": [ @@ -40535,9 +40489,9 @@ ], "additionalProperties": false }, - "AWS_EC2_ClientVpnEndpoint": { + "AWS_Location_APIKey": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::ClientVpnEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html)", + "markdownDescription": "Definition of AWS::Location::APIKey Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html)", "allOf": [ { "type": "object", @@ -40545,14 +40499,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::ClientVpnEndpoint" + "AWS::Location::APIKey" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::ClientVpnEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html)" + "Definition of AWS::Location::APIKey Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-apikey.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-clientvpnendpoint.json" + "$ref": "resources/aws-location-apikey.json" } }, "required": [ @@ -40566,9 +40520,9 @@ ], "additionalProperties": false }, - "AWS_IoTTwinMaker_Scene": { + "AWS_FMS_Policy": { "type": "object", - "markdownDescription": "Resource schema for AWS::IoTTwinMaker::Scene \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-scene.html)", + "markdownDescription": "Creates an AWS Firewall Manager policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html)", "allOf": [ { "type": "object", @@ -40576,14 +40530,14 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTTwinMaker::Scene" + "AWS::FMS::Policy" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::IoTTwinMaker::Scene \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iottwinmaker-scene.html)" + "Creates an AWS Firewall Manager policy. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-policy.html)" ] }, "Properties": { - "$ref": "resources/aws-iottwinmaker-scene.json" + "$ref": "resources/aws-fms-policy.json" } }, "required": [ @@ -40597,9 +40551,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_ByteMatchSet": { + "AWS_SecurityHub_AutomationRule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html)", + "markdownDescription": "The ``AWS::SecurityHub::AutomationRule`` resource specifies an automation rule based on input parameters. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-automationrule.html)", "allOf": [ { "type": "object", @@ -40607,14 +40561,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::ByteMatchSet" + "AWS::SecurityHub::AutomationRule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::ByteMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html)" + "The ``AWS::SecurityHub::AutomationRule`` resource specifies an automation rule based on input parameters. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-automationrule.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-bytematchset.json" + "$ref": "resources/aws-securityhub-automationrule.json" } }, "required": [ @@ -40628,9 +40582,9 @@ ], "additionalProperties": false }, - "AWS_Cognito_UserPoolUser": { + "AWS_CloudFront_CachePolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Cognito::UserPoolUser \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html)", + "markdownDescription": "A cache policy.\n When it's attached to a cache behavior, the cache policy determines the following:\n + The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.\n + The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.\n \n The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find a valid object in its cache that matches the request's cache key. If you want to send values to the origin but *not* include them in the cache key, use ``OriginRequestPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html)", "allOf": [ { "type": "object", @@ -40638,14 +40592,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Cognito::UserPoolUser" + "AWS::CloudFront::CachePolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Cognito::UserPoolUser \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html)" + "A cache policy.\n When it's attached to a cache behavior, the cache policy determines the following:\n + The values that CloudFront includes in the cache key. These values can include HTTP headers, cookies, and URL query strings. CloudFront uses the cache key to find an object in its cache that it can return to the viewer.\n + The default, minimum, and maximum time to live (TTL) values that you want objects to stay in the CloudFront cache.\n \n The headers, cookies, and query strings that are included in the cache key are also included in requests that CloudFront sends to the origin. CloudFront sends a request when it can't find a valid object in its cache that matches the request's cache key. If you want to send values to the origin but *not* include them in the cache key, use ``OriginRequestPolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-cachepolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-cognito-userpooluser.json" + "$ref": "resources/aws-cloudfront-cachepolicy.json" } }, "required": [ @@ -40659,9 +40613,9 @@ ], "additionalProperties": false }, - "AWS_DMS_InstanceProfile": { + "AWS_IoTEvents_Input": { "type": "object", - "markdownDescription": "Resource schema for AWS::DMS::InstanceProfile. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-instanceprofile.html)", + "markdownDescription": "The AWS::IoTEvents::Input resource creates an input. To monitor your devices and processes, they must have a way to get telemetry data into ITE. This is done by sending messages as *inputs* to ITE. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html)", "allOf": [ { "type": "object", @@ -40669,18 +40623,19 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::InstanceProfile" + "AWS::IoTEvents::Input" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DMS::InstanceProfile. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-instanceprofile.html)" + "The AWS::IoTEvents::Input resource creates an input. To monitor your devices and processes, they must have a way to get telemetry data into ITE. This is done by sending messages as *inputs* to ITE. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-input.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-instanceprofile.json" + "$ref": "resources/aws-iotevents-input.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -40689,9 +40644,9 @@ ], "additionalProperties": false }, - "AWS_NetworkFirewall_VpcEndpointAssociation": { + "AWS_ApiGatewayV2_Integration": { "type": "object", - "markdownDescription": "Resource type definition for AWS::NetworkFirewall::VpcEndpointAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html)", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html)", "allOf": [ { "type": "object", @@ -40699,14 +40654,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkFirewall::VpcEndpointAssociation" + "AWS::ApiGatewayV2::Integration" ], "markdownEnumDescriptions": [ - "Resource type definition for AWS::NetworkFirewall::VpcEndpointAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html)" + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-integration.html)" ] }, "Properties": { - "$ref": "resources/aws-networkfirewall-vpcendpointassociation.json" + "$ref": "resources/aws-apigatewayv2-integration.json" } }, "required": [ @@ -40720,9 +40675,9 @@ ], "additionalProperties": false }, - "AWS_IAM_InstanceProfile": { + "AWS_EC2_TrafficMirrorTarget": { "type": "object", - "markdownDescription": "Creates a new instance profile. For information about instance profiles, see [Using instance profiles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html).\n For information about the number of instance profiles you can create, see [object quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)", + "markdownDescription": "The description of the Traffic Mirror target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html)", "allOf": [ { "type": "object", @@ -40730,19 +40685,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::InstanceProfile" + "AWS::EC2::TrafficMirrorTarget" ], "markdownEnumDescriptions": [ - "Creates a new instance profile. For information about instance profiles, see [Using instance profiles](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html).\n For information about the number of instance profiles you can create, see [object quotas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html)" + "The description of the Traffic Mirror target. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-trafficmirrortarget.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-instanceprofile.json" + "$ref": "resources/aws-ec2-trafficmirrortarget.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -40751,9 +40705,9 @@ ], "additionalProperties": false }, - "AWS_SES_ConfigurationSet": { + "AWS_ManagedBlockchain_Member": { "type": "object", - "markdownDescription": "Resource schema for AWS::SES::ConfigurationSet. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html)", + "markdownDescription": "Resource Type definition for AWS::ManagedBlockchain::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html)", "allOf": [ { "type": "object", @@ -40761,18 +40715,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::ConfigurationSet" + "AWS::ManagedBlockchain::Member" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::SES::ConfigurationSet. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationset.html)" + "Resource Type definition for AWS::ManagedBlockchain::Member \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-managedblockchain-member.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-configurationset.json" + "$ref": "resources/aws-managedblockchain-member.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -40781,9 +40736,9 @@ ], "additionalProperties": false }, - "AWS_IAM_AccessKey": { + "AWS_Transfer_Server": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IAM::AccessKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)", + "markdownDescription": "Definition of AWS::Transfer::Server Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html)", "allOf": [ { "type": "object", @@ -40791,19 +40746,18 @@ "Type": { "type": "string", "enum": [ - "AWS::IAM::AccessKey" + "AWS::Transfer::Server" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IAM::AccessKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-accesskey.html)" + "Definition of AWS::Transfer::Server Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-transfer-server.html)" ] }, "Properties": { - "$ref": "resources/aws-iam-accesskey.json" + "$ref": "resources/aws-transfer-server.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -40812,9 +40766,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayMulticastGroupMember": { + "AWS_ElasticLoadBalancing_LoadBalancer": { "type": "object", - "markdownDescription": "The AWS::EC2::TransitGatewayMulticastGroupMember registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html)", + "markdownDescription": "Resource Type definition for AWS::ElasticLoadBalancing::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancing-loadbalancer.html)", "allOf": [ { "type": "object", @@ -40822,14 +40776,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayMulticastGroupMember" + "AWS::ElasticLoadBalancing::LoadBalancer" ], "markdownEnumDescriptions": [ - "The AWS::EC2::TransitGatewayMulticastGroupMember registers and deregisters members and sources (network interfaces) with the transit gateway multicast group \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html)" + "Resource Type definition for AWS::ElasticLoadBalancing::LoadBalancer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancing-loadbalancer.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewaymulticastgroupmember.json" + "$ref": "resources/aws-elasticloadbalancing-loadbalancer.json" } }, "required": [ @@ -40843,9 +40797,9 @@ ], "additionalProperties": false }, - "AWS_Greengrass_SubscriptionDefinition": { + "AWS_ServiceCatalog_PortfolioPrincipalAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Greengrass::SubscriptionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::PortfolioPrincipalAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html)", "allOf": [ { "type": "object", @@ -40853,14 +40807,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Greengrass::SubscriptionDefinition" + "AWS::ServiceCatalog::PortfolioPrincipalAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Greengrass::SubscriptionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html)" + "Resource Type definition for AWS::ServiceCatalog::PortfolioPrincipalAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-portfolioprincipalassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-greengrass-subscriptiondefinition.json" + "$ref": "resources/aws-servicecatalog-portfolioprincipalassociation.json" } }, "required": [ @@ -40874,9 +40828,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalogAppRegistry_ResourceAssociation": { + "AWS_Cognito_IdentityPoolRoleAttachment": { "type": "object", - "markdownDescription": "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html)", + "markdownDescription": "Resource Type definition for AWS::Cognito::IdentityPoolRoleAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html)", "allOf": [ { "type": "object", @@ -40884,14 +40838,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalogAppRegistry::ResourceAssociation" + "AWS::Cognito::IdentityPoolRoleAttachment" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::ServiceCatalogAppRegistry::ResourceAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalogappregistry-resourceassociation.html)" + "Resource Type definition for AWS::Cognito::IdentityPoolRoleAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalogappregistry-resourceassociation.json" + "$ref": "resources/aws-cognito-identitypoolroleattachment.json" } }, "required": [ @@ -40905,9 +40859,9 @@ ], "additionalProperties": false }, - "AWS_ECS_ClusterCapacityProviderAssociations": { + "AWS_LookoutMetrics_Alert": { "type": "object", - "markdownDescription": "Associate a set of ECS Capacity Providers with a specified ECS Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-clustercapacityproviderassociations.html)", + "markdownDescription": "Resource Type definition for AWS::LookoutMetrics::Alert \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-alert.html)", "allOf": [ { "type": "object", @@ -40915,14 +40869,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ECS::ClusterCapacityProviderAssociations" + "AWS::LookoutMetrics::Alert" ], "markdownEnumDescriptions": [ - "Associate a set of ECS Capacity Providers with a specified ECS Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-clustercapacityproviderassociations.html)" + "Resource Type definition for AWS::LookoutMetrics::Alert \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-alert.html)" ] }, "Properties": { - "$ref": "resources/aws-ecs-clustercapacityproviderassociations.json" + "$ref": "resources/aws-lookoutmetrics-alert.json" } }, "required": [ @@ -40936,9 +40890,9 @@ ], "additionalProperties": false }, - "AWS_EC2_EIPAssociation": { + "AWS_EC2_InstanceConnectEndpoint": { "type": "object", - "markdownDescription": "Associates an Elastic IP address with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your account. For more information about working with Elastic IP addresses, see [Elastic IP address concepts and rules](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#vpc-eip-overview).\n You must specify ``AllocationId`` and either ``InstanceId``, ``NetworkInterfaceId``, or ``PrivateIpAddress``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eipassociation.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::InstanceConnectEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html)", "allOf": [ { "type": "object", @@ -40946,18 +40900,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::EIPAssociation" + "AWS::EC2::InstanceConnectEndpoint" ], "markdownEnumDescriptions": [ - "Associates an Elastic IP address with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your account. For more information about working with Elastic IP addresses, see [Elastic IP address concepts and rules](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#vpc-eip-overview).\n You must specify ``AllocationId`` and either ``InstanceId``, ``NetworkInterfaceId``, or ``PrivateIpAddress``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eipassociation.html)" + "Resource Type definition for AWS::EC2::InstanceConnectEndpoint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-eipassociation.json" + "$ref": "resources/aws-ec2-instanceconnectendpoint.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -40966,9 +40921,9 @@ ], "additionalProperties": false }, - "AWS_Proton_EnvironmentAccountConnection": { + "AWS_CloudFront_OriginRequestPolicy": { "type": "object", - "markdownDescription": "Resource Schema describing various properties for AWS Proton Environment Account Connections resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmentaccountconnection.html)", + "markdownDescription": "An origin request policy.\n When it's attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:\n + The request body and the URL path (without the domain name) from the viewer request.\n + The headers that CloudFront automatically includes in every origin request, including ``Host``, ``User-Agent``, and ``X-Amz-Cf-Id``.\n + All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.\n \n CloudFront sends a request when it can't find an object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use ``CachePolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html)", "allOf": [ { "type": "object", @@ -40976,18 +40931,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Proton::EnvironmentAccountConnection" + "AWS::CloudFront::OriginRequestPolicy" ], "markdownEnumDescriptions": [ - "Resource Schema describing various properties for AWS Proton Environment Account Connections resources. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-environmentaccountconnection.html)" + "An origin request policy.\n When it's attached to a cache behavior, the origin request policy determines the values that CloudFront includes in requests that it sends to the origin. Each request that CloudFront sends to the origin includes the following:\n + The request body and the URL path (without the domain name) from the viewer request.\n + The headers that CloudFront automatically includes in every origin request, including ``Host``, ``User-Agent``, and ``X-Amz-Cf-Id``.\n + All HTTP headers, cookies, and URL query strings that are specified in the cache policy or the origin request policy. These can include items from the viewer request and, in the case of headers, additional ones that are added by CloudFront.\n \n CloudFront sends a request when it can't find an object in its cache that matches the request. If you want to send values to the origin and also include them in the cache key, use ``CachePolicy``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-originrequestpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-proton-environmentaccountconnection.json" + "$ref": "resources/aws-cloudfront-originrequestpolicy.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -40996,9 +40952,9 @@ ], "additionalProperties": false }, - "AWS_EC2_PlacementGroup": { + "AWS_CloudFormation_ResourceDefaultVersion": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::PlacementGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html)", + "markdownDescription": "The default version of a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html)", "allOf": [ { "type": "object", @@ -41006,14 +40962,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::PlacementGroup" + "AWS::CloudFormation::ResourceDefaultVersion" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::PlacementGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html)" + "The default version of a resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourcedefaultversion.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-placementgroup.json" + "$ref": "resources/aws-cloudformation-resourcedefaultversion.json" } }, "required": [ @@ -41026,9 +40982,9 @@ ], "additionalProperties": false }, - "AWS_Route53RecoveryControl_RoutingControl": { + "AWS_ServiceCatalog_ResourceUpdateConstraint": { "type": "object", - "markdownDescription": "AWS Route53 Recovery Control Routing Control resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-routingcontrol.html)", + "markdownDescription": "Resource Type definition for AWS::ServiceCatalog::ResourceUpdateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html)", "allOf": [ { "type": "object", @@ -41036,14 +40992,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53RecoveryControl::RoutingControl" + "AWS::ServiceCatalog::ResourceUpdateConstraint" ], "markdownEnumDescriptions": [ - "AWS Route53 Recovery Control Routing Control resource schema . \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-routingcontrol.html)" + "Resource Type definition for AWS::ServiceCatalog::ResourceUpdateConstraint \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-resourceupdateconstraint.html)" ] }, "Properties": { - "$ref": "resources/aws-route53recoverycontrol-routingcontrol.json" + "$ref": "resources/aws-servicecatalog-resourceupdateconstraint.json" } }, "required": [ @@ -41057,9 +41013,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VerifiedAccessGroup": { + "AWS_Config_OrganizationConfigRule": { "type": "object", - "markdownDescription": "The AWS::EC2::VerifiedAccessGroup resource creates an AWS EC2 Verified Access Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessgroup.html)", + "markdownDescription": "Resource Type definition for AWS::Config::OrganizationConfigRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html)", "allOf": [ { "type": "object", @@ -41067,14 +41023,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VerifiedAccessGroup" + "AWS::Config::OrganizationConfigRule" ], "markdownEnumDescriptions": [ - "The AWS::EC2::VerifiedAccessGroup resource creates an AWS EC2 Verified Access Group. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessgroup.html)" + "Resource Type definition for AWS::Config::OrganizationConfigRule \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-organizationconfigrule.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-verifiedaccessgroup.json" + "$ref": "resources/aws-config-organizationconfigrule.json" } }, "required": [ @@ -41088,9 +41044,9 @@ ], "additionalProperties": false }, - "AWS_IoT_BillingGroup": { + "AWS_FMS_ResourceSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoT::BillingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html)", + "markdownDescription": "Creates an AWS Firewall Manager resource set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-resourceset.html)", "allOf": [ { "type": "object", @@ -41098,18 +41054,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoT::BillingGroup" + "AWS::FMS::ResourceSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoT::BillingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-billinggroup.html)" + "Creates an AWS Firewall Manager resource set. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fms-resourceset.html)" ] }, "Properties": { - "$ref": "resources/aws-iot-billinggroup.json" + "$ref": "resources/aws-fms-resourceset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -41118,9 +41075,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorks_Stack": { + "AWS_KafkaConnect_Connector": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorks::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html)", + "markdownDescription": "Resource Type definition for AWS::KafkaConnect::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-connector.html)", "allOf": [ { "type": "object", @@ -41128,14 +41085,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorks::Stack" + "AWS::KafkaConnect::Connector" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorks::Stack \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html)" + "Resource Type definition for AWS::KafkaConnect::Connector \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-connector.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworks-stack.json" + "$ref": "resources/aws-kafkaconnect-connector.json" } }, "required": [ @@ -41149,9 +41106,9 @@ ], "additionalProperties": false }, - "AWS_S3Tables_TableBucket": { + "AWS_IoT_MitigationAction": { "type": "object", - "markdownDescription": "Creates an Amazon S3 Tables table bucket in the same AWS Region where you create the AWS CloudFormation stack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucket.html)", + "markdownDescription": "Mitigation actions can be used to take actions to mitigate issues that were found in an Audit finding or Detect violation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html)", "allOf": [ { "type": "object", @@ -41159,14 +41116,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Tables::TableBucket" + "AWS::IoT::MitigationAction" ], "markdownEnumDescriptions": [ - "Creates an Amazon S3 Tables table bucket in the same AWS Region where you create the AWS CloudFormation stack. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3tables-tablebucket.html)" + "Mitigation actions can be used to take actions to mitigate issues that were found in an Audit finding or Detect violation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html)" ] }, "Properties": { - "$ref": "resources/aws-s3tables-tablebucket.json" + "$ref": "resources/aws-iot-mitigationaction.json" } }, "required": [ @@ -41180,9 +41137,9 @@ ], "additionalProperties": false }, - "AWS_Connect_ContactFlowVersion": { + "AWS_EC2_TransitGatewayConnectPeer": { "type": "object", - "markdownDescription": "Resource Type Definition for ContactFlowVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowversion.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::TransitGatewayConnectPeer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayconnectpeer.html)", "allOf": [ { "type": "object", @@ -41190,14 +41147,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::ContactFlowVersion" + "AWS::EC2::TransitGatewayConnectPeer" ], "markdownEnumDescriptions": [ - "Resource Type Definition for ContactFlowVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-contactflowversion.html)" + "Resource Type definition for AWS::EC2::TransitGatewayConnectPeer \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewayconnectpeer.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-contactflowversion.json" + "$ref": "resources/aws-ec2-transitgatewayconnectpeer.json" } }, "required": [ @@ -41211,9 +41168,9 @@ ], "additionalProperties": false }, - "AWS_GlobalAccelerator_CrossAccountAttachment": { + "AWS_Events_Archive": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::GlobalAccelerator::CrossAccountAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-crossaccountattachment.html)", + "markdownDescription": "Resource Type definition for AWS::Events::Archive \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html)", "allOf": [ { "type": "object", @@ -41221,14 +41178,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GlobalAccelerator::CrossAccountAttachment" + "AWS::Events::Archive" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::GlobalAccelerator::CrossAccountAttachment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-globalaccelerator-crossaccountattachment.html)" + "Resource Type definition for AWS::Events::Archive \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-archive.html)" ] }, "Properties": { - "$ref": "resources/aws-globalaccelerator-crossaccountattachment.json" + "$ref": "resources/aws-events-archive.json" } }, "required": [ @@ -41242,9 +41199,9 @@ ], "additionalProperties": false }, - "AWS_IVS_PublicKey": { + "AWS_DMS_EventSubscription": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::PublicKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-publickey.html)", + "markdownDescription": "Resource Type definition for AWS::DMS::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html)", "allOf": [ { "type": "object", @@ -41252,18 +41209,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::PublicKey" + "AWS::DMS::EventSubscription" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::PublicKey \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-publickey.html)" + "Resource Type definition for AWS::DMS::EventSubscription \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-eventsubscription.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-publickey.json" + "$ref": "resources/aws-dms-eventsubscription.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -41272,9 +41230,9 @@ ], "additionalProperties": false }, - "AWS_Glue_CustomEntityType": { + "AWS_LookoutVision_Project": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Glue::CustomEntityType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-customentitytype.html)", + "markdownDescription": "The AWS::LookoutVision::Project type creates an Amazon Lookout for Vision project. A project is a grouping of the resources needed to create and manage a Lookout for Vision model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutvision-project.html)", "allOf": [ { "type": "object", @@ -41282,18 +41240,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Glue::CustomEntityType" + "AWS::LookoutVision::Project" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Glue::CustomEntityType \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-customentitytype.html)" + "The AWS::LookoutVision::Project type creates an Amazon Lookout for Vision project. A project is a grouping of the resources needed to create and manage a Lookout for Vision model. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutvision-project.html)" ] }, "Properties": { - "$ref": "resources/aws-glue-customentitytype.json" + "$ref": "resources/aws-lookoutvision-project.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -41302,9 +41261,9 @@ ], "additionalProperties": false }, - "AWS_Synthetics_Canary": { + "AWS_DataBrew_Job": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Synthetics::Canary \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html)", + "markdownDescription": "Resource schema for AWS::DataBrew::Job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html)", "allOf": [ { "type": "object", @@ -41312,14 +41271,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Synthetics::Canary" + "AWS::DataBrew::Job" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Synthetics::Canary \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-synthetics-canary.html)" + "Resource schema for AWS::DataBrew::Job. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-job.html)" ] }, "Properties": { - "$ref": "resources/aws-synthetics-canary.json" + "$ref": "resources/aws-databrew-job.json" } }, "required": [ @@ -41333,9 +41292,9 @@ ], "additionalProperties": false }, - "AWS_CodePipeline_Webhook": { + "AWS_SES_Template": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodePipeline::Webhook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html)", + "markdownDescription": "Resource Type definition for AWS::SES::Template \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html)", "allOf": [ { "type": "object", @@ -41343,19 +41302,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CodePipeline::Webhook" + "AWS::SES::Template" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodePipeline::Webhook \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-webhook.html)" + "Resource Type definition for AWS::SES::Template \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-template.html)" ] }, "Properties": { - "$ref": "resources/aws-codepipeline-webhook.json" + "$ref": "resources/aws-ses-template.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -41364,9 +41322,9 @@ ], "additionalProperties": false }, - "AWS_MediaTailor_PlaybackConfiguration": { + "AWS_DMS_InstanceProfile": { "type": "object", - "markdownDescription": "Resource schema for AWS::MediaTailor::PlaybackConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-playbackconfiguration.html)", + "markdownDescription": "Resource schema for AWS::DMS::InstanceProfile. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-instanceprofile.html)", "allOf": [ { "type": "object", @@ -41374,19 +41332,18 @@ "Type": { "type": "string", "enum": [ - "AWS::MediaTailor::PlaybackConfiguration" + "AWS::DMS::InstanceProfile" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::MediaTailor::PlaybackConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-playbackconfiguration.html)" + "Resource schema for AWS::DMS::InstanceProfile. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-instanceprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-mediatailor-playbackconfiguration.json" + "$ref": "resources/aws-dms-instanceprofile.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -41395,9 +41352,9 @@ ], "additionalProperties": false }, - "AWS_QuickSight_DataSource": { + "AWS_WorkSpacesWeb_IpAccessSettings": { "type": "object", - "markdownDescription": "Definition of the AWS::QuickSight::DataSource Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-datasource.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::IpAccessSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-ipaccesssettings.html)", "allOf": [ { "type": "object", @@ -41405,14 +41362,14 @@ "Type": { "type": "string", "enum": [ - "AWS::QuickSight::DataSource" + "AWS::WorkSpacesWeb::IpAccessSettings" ], "markdownEnumDescriptions": [ - "Definition of the AWS::QuickSight::DataSource Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-datasource.html)" + "Definition of AWS::WorkSpacesWeb::IpAccessSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-ipaccesssettings.html)" ] }, "Properties": { - "$ref": "resources/aws-quicksight-datasource.json" + "$ref": "resources/aws-workspacesweb-ipaccesssettings.json" } }, "required": [ @@ -41426,9 +41383,9 @@ ], "additionalProperties": false }, - "AWS_RDS_DBProxy": { + "AWS_Shield_Protection": { "type": "object", - "markdownDescription": "Resource schema for AWS::RDS::DBProxy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html)", + "markdownDescription": "Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, AWS Global Accelerator standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by association with protected Amazon EC2 Elastic IP addresses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protection.html)", "allOf": [ { "type": "object", @@ -41436,14 +41393,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::DBProxy" + "AWS::Shield::Protection" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::RDS::DBProxy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html)" + "Enables AWS Shield Advanced for a specific AWS resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, AWS Global Accelerator standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by association with protected Amazon EC2 Elastic IP addresses. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-protection.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-dbproxy.json" + "$ref": "resources/aws-shield-protection.json" } }, "required": [ @@ -41457,9 +41414,9 @@ ], "additionalProperties": false }, - "AWS_ECR_Repository": { + "AWS_QuickSight_Dashboard": { "type": "object", - "markdownDescription": "The ``AWS::ECR::Repository`` resource specifies an Amazon Elastic Container Registry (Amazon ECR) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR private repositories](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html) in the *Amazon ECR User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html)", + "markdownDescription": "Definition of the AWS::QuickSight::Dashboard Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html)", "allOf": [ { "type": "object", @@ -41467,18 +41424,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ECR::Repository" + "AWS::QuickSight::Dashboard" ], "markdownEnumDescriptions": [ - "The ``AWS::ECR::Repository`` resource specifies an Amazon Elastic Container Registry (Amazon ECR) repository, where users can push and pull Docker images, Open Container Initiative (OCI) images, and OCI compatible artifacts. For more information, see [Amazon ECR private repositories](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html) in the *Amazon ECR User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html)" + "Definition of the AWS::QuickSight::Dashboard Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-quicksight-dashboard.html)" ] }, "Properties": { - "$ref": "resources/aws-ecr-repository.json" + "$ref": "resources/aws-quicksight-dashboard.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -41487,9 +41445,9 @@ ], "additionalProperties": false }, - "AWS_OpenSearchServerless_AccessPolicy": { + "AWS_IoTEvents_DetectorModel": { "type": "object", - "markdownDescription": "Amazon OpenSearchServerless access policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-accesspolicy.html)", + "markdownDescription": "The AWS::IoTEvents::DetectorModel resource creates a detector model. You create a *detector model* (a model of your equipment or process) using *states*. For each state, you define conditional (Boolean) logic that evaluates the incoming inputs to detect significant events. When an event is detected, it can change the state or trigger custom-built or predefined actions using other AWS services. You can define additional events that trigger actions when entering or exiting a state and, optionally, when a condition is met. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*.\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) all detector instances created by the model are reset to their initial states. (The detector's ``state``, and the values of any variables and timers are reset.)\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) the version number of the detector model is incremented. (A detector model with version number 1 before the update has version number 2 after the update succeeds.)\n If you attempt to update a detector model using CFN and the update does not succeed, the system may, in some cases, restore the original detector model. When this occurs, the detector model's version is incremented twice (for example, from version 1 to version 3) and the detector instances are reset.\n Also, be aware that if you attempt to update several detector models at once using CFN, some updates may succeed and others fail. In this case, the effects on each detector model's detector instances and version number depend on whether the update succeeded or failed, with the results as stated. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html)", "allOf": [ { "type": "object", @@ -41497,14 +41455,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpenSearchServerless::AccessPolicy" + "AWS::IoTEvents::DetectorModel" ], "markdownEnumDescriptions": [ - "Amazon OpenSearchServerless access policy resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opensearchserverless-accesspolicy.html)" + "The AWS::IoTEvents::DetectorModel resource creates a detector model. You create a *detector model* (a model of your equipment or process) using *states*. For each state, you define conditional (Boolean) logic that evaluates the incoming inputs to detect significant events. When an event is detected, it can change the state or trigger custom-built or predefined actions using other AWS services. You can define additional events that trigger actions when entering or exiting a state and, optionally, when a condition is met. For more information, see [How to Use](https://docs.aws.amazon.com/iotevents/latest/developerguide/how-to-use-iotevents.html) in the *Developer Guide*.\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) all detector instances created by the model are reset to their initial states. (The detector's ``state``, and the values of any variables and timers are reset.)\n When you successfully update a detector model (using the ITE console, ITE API or CLI commands, or CFN) the version number of the detector model is incremented. (A detector model with version number 1 before the update has version number 2 after the update succeeds.)\n If you attempt to update a detector model using CFN and the update does not succeed, the system may, in some cases, restore the original detector model. When this occurs, the detector model's version is incremented twice (for example, from version 1 to version 3) and the detector instances are reset.\n Also, be aware that if you attempt to update several detector models at once using CFN, some updates may succeed and others fail. In this case, the effects on each detector model's detector instances and version number depend on whether the update succeeded or failed, with the results as stated. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotevents-detectormodel.html)" ] }, "Properties": { - "$ref": "resources/aws-opensearchserverless-accesspolicy.json" + "$ref": "resources/aws-iotevents-detectormodel.json" } }, "required": [ @@ -41518,9 +41476,9 @@ ], "additionalProperties": false }, - "AWS_Bedrock_Guardrail": { + "AWS_Bedrock_DataSource": { "type": "object", - "markdownDescription": "Definition of AWS::Bedrock::Guardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html)", + "markdownDescription": "Definition of AWS::Bedrock::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html)", "allOf": [ { "type": "object", @@ -41528,14 +41486,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Bedrock::Guardrail" + "AWS::Bedrock::DataSource" ], "markdownEnumDescriptions": [ - "Definition of AWS::Bedrock::Guardrail Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html)" + "Definition of AWS::Bedrock::DataSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html)" ] }, "Properties": { - "$ref": "resources/aws-bedrock-guardrail.json" + "$ref": "resources/aws-bedrock-datasource.json" } }, "required": [ @@ -41549,9 +41507,9 @@ ], "additionalProperties": false }, - "AWS_AppIntegrations_Application": { + "AWS_Connect_Queue": { "type": "object", - "markdownDescription": "Resource Type definition for AWS:AppIntegrations::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-application.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-queue.html)", "allOf": [ { "type": "object", @@ -41559,14 +41517,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppIntegrations::Application" + "AWS::Connect::Queue" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS:AppIntegrations::Application \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appintegrations-application.html)" + "Resource Type definition for AWS::Connect::Queue \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-queue.html)" ] }, "Properties": { - "$ref": "resources/aws-appintegrations-application.json" + "$ref": "resources/aws-connect-queue.json" } }, "required": [ @@ -41580,9 +41538,9 @@ ], "additionalProperties": false }, - "AWS_SES_ConfigurationSetEventDestination": { + "AWS_MediaLive_SdiSource": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SES::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html)", + "markdownDescription": "Definition of AWS::MediaLive::SdiSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-sdisource.html)", "allOf": [ { "type": "object", @@ -41590,14 +41548,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::ConfigurationSetEventDestination" + "AWS::MediaLive::SdiSource" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SES::ConfigurationSetEventDestination \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-configurationseteventdestination.html)" + "Definition of AWS::MediaLive::SdiSource Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-sdisource.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-configurationseteventdestination.json" + "$ref": "resources/aws-medialive-sdisource.json" } }, "required": [ @@ -41611,9 +41569,9 @@ ], "additionalProperties": false }, - "AWS_Pinpoint_APNSSandboxChannel": { + "AWS_VpcLattice_Listener": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Pinpoint::APNSSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html)", + "markdownDescription": "Creates a listener for a service. Before you start using your Amazon VPC Lattice service, you must add one or more listeners. A listener is a process that checks for connection requests to your services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html)", "allOf": [ { "type": "object", @@ -41621,14 +41579,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Pinpoint::APNSSandboxChannel" + "AWS::VpcLattice::Listener" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Pinpoint::APNSSandboxChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-apnssandboxchannel.html)" + "Creates a listener for a service. Before you start using your Amazon VPC Lattice service, you must add one or more listeners. A listener is a process that checks for connection requests to your services. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-listener.html)" ] }, "Properties": { - "$ref": "resources/aws-pinpoint-apnssandboxchannel.json" + "$ref": "resources/aws-vpclattice-listener.json" } }, "required": [ @@ -41642,9 +41600,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_SqlInjectionMatchSet": { + "AWS_VoiceID_Domain": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html)", + "markdownDescription": "The AWS::VoiceID::Domain resource specifies an Amazon VoiceID Domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-voiceid-domain.html)", "allOf": [ { "type": "object", @@ -41652,14 +41610,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::SqlInjectionMatchSet" + "AWS::VoiceID::Domain" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::SqlInjectionMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html)" + "The AWS::VoiceID::Domain resource specifies an Amazon VoiceID Domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-voiceid-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-sqlinjectionmatchset.json" + "$ref": "resources/aws-voiceid-domain.json" } }, "required": [ @@ -41673,9 +41631,9 @@ ], "additionalProperties": false }, - "AWS_RolesAnywhere_CRL": { + "AWS_LakeFormation_TagAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::RolesAnywhere::CRL Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-crl.html)", + "markdownDescription": "A resource schema representing a Lake Formation Tag Association. While tag associations are not explicit Lake Formation resources, this CloudFormation resource can be used to associate tags with Lake Formation entities. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tagassociation.html)", "allOf": [ { "type": "object", @@ -41683,14 +41641,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RolesAnywhere::CRL" + "AWS::LakeFormation::TagAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::RolesAnywhere::CRL Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-crl.html)" + "A resource schema representing a Lake Formation Tag Association. While tag associations are not explicit Lake Formation resources, this CloudFormation resource can be used to associate tags with Lake Formation entities. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-tagassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-rolesanywhere-crl.json" + "$ref": "resources/aws-lakeformation-tagassociation.json" } }, "required": [ @@ -41704,9 +41662,9 @@ ], "additionalProperties": false }, - "AWS_Neptune_DBParameterGroup": { + "AWS_EC2_VerifiedAccessEndpoint": { "type": "object", - "markdownDescription": "AWS::Neptune::DBParameterGroup creates a new DB parameter group. This type can be declared in a template and referenced in the DBParameterGroupName parameter of AWS::Neptune::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html)", + "markdownDescription": "The AWS::EC2::VerifiedAccessEndpoint resource creates an AWS EC2 Verified Access Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html)", "allOf": [ { "type": "object", @@ -41714,14 +41672,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Neptune::DBParameterGroup" + "AWS::EC2::VerifiedAccessEndpoint" ], "markdownEnumDescriptions": [ - "AWS::Neptune::DBParameterGroup creates a new DB parameter group. This type can be declared in a template and referenced in the DBParameterGroupName parameter of AWS::Neptune::DBInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-neptune-dbparametergroup.html)" + "The AWS::EC2::VerifiedAccessEndpoint resource creates an AWS EC2 Verified Access Endpoint. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-verifiedaccessendpoint.html)" ] }, "Properties": { - "$ref": "resources/aws-neptune-dbparametergroup.json" + "$ref": "resources/aws-ec2-verifiedaccessendpoint.json" } }, "required": [ @@ -41735,9 +41693,9 @@ ], "additionalProperties": false }, - "AWS_Proton_ServiceTemplate": { + "AWS_Batch_SchedulingPolicy": { "type": "object", - "markdownDescription": "Definition of AWS::Proton::ServiceTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-servicetemplate.html)", + "markdownDescription": "Resource Type definition for AWS::Batch::SchedulingPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-schedulingpolicy.html)", "allOf": [ { "type": "object", @@ -41745,14 +41703,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Proton::ServiceTemplate" + "AWS::Batch::SchedulingPolicy" ], "markdownEnumDescriptions": [ - "Definition of AWS::Proton::ServiceTemplate Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-proton-servicetemplate.html)" + "Resource Type definition for AWS::Batch::SchedulingPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-schedulingpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-proton-servicetemplate.json" + "$ref": "resources/aws-batch-schedulingpolicy.json" } }, "required": [ @@ -41765,9 +41723,9 @@ ], "additionalProperties": false }, - "AWS_DMS_DataMigration": { + "AWS_ImageBuilder_ContainerRecipe": { "type": "object", - "markdownDescription": "Resource schema for AWS::DMS::DataMigration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-datamigration.html)", + "markdownDescription": "Resource schema for AWS::ImageBuilder::ContainerRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html)", "allOf": [ { "type": "object", @@ -41775,19 +41733,18 @@ "Type": { "type": "string", "enum": [ - "AWS::DMS::DataMigration" + "AWS::ImageBuilder::ContainerRecipe" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::DMS::DataMigration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-datamigration.html)" + "Resource schema for AWS::ImageBuilder::ContainerRecipe \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-imagebuilder-containerrecipe.html)" ] }, "Properties": { - "$ref": "resources/aws-dms-datamigration.json" + "$ref": "resources/aws-imagebuilder-containerrecipe.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -41796,9 +41753,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerTrafficPolicy": { + "AWS_Connect_UserHierarchyStructure": { "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerTrafficPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagertrafficpolicy.html)", + "markdownDescription": "Resource Type definition for AWS::Connect::UserHierarchyStructure \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchystructure.html)", "allOf": [ { "type": "object", @@ -41806,14 +41763,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::MailManagerTrafficPolicy" + "AWS::Connect::UserHierarchyStructure" ], "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerTrafficPolicy Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanagertrafficpolicy.html)" + "Resource Type definition for AWS::Connect::UserHierarchyStructure \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-userhierarchystructure.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-mailmanagertrafficpolicy.json" + "$ref": "resources/aws-connect-userhierarchystructure.json" } }, "required": [ @@ -41827,9 +41784,9 @@ ], "additionalProperties": false }, - "AWS_ApplicationSignals_Discovery": { + "AWS_CodeArtifact_Domain": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ApplicationSignals::Discovery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-discovery.html)", + "markdownDescription": "The resource schema to create a CodeArtifact domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html)", "allOf": [ { "type": "object", @@ -41837,18 +41794,19 @@ "Type": { "type": "string", "enum": [ - "AWS::ApplicationSignals::Discovery" + "AWS::CodeArtifact::Domain" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ApplicationSignals::Discovery \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-discovery.html)" + "The resource schema to create a CodeArtifact domain. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codeartifact-domain.html)" ] }, "Properties": { - "$ref": "resources/aws-applicationsignals-discovery.json" + "$ref": "resources/aws-codeartifact-domain.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -41857,9 +41815,9 @@ ], "additionalProperties": false }, - "AWS_Evidently_Project": { + "AWS_IoT_JobTemplate": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Evidently::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-project.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::JobTemplate. Job templates enable you to preconfigure jobs so that you can deploy them to multiple sets of target devices. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html)", "allOf": [ { "type": "object", @@ -41867,14 +41825,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Evidently::Project" + "AWS::IoT::JobTemplate" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Evidently::Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evidently-project.html)" + "Resource Type definition for AWS::IoT::JobTemplate. Job templates enable you to preconfigure jobs so that you can deploy them to multiple sets of target devices. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-jobtemplate.html)" ] }, "Properties": { - "$ref": "resources/aws-evidently-project.json" + "$ref": "resources/aws-iot-jobtemplate.json" } }, "required": [ @@ -41888,9 +41846,9 @@ ], "additionalProperties": false }, - "AWS_NetworkManager_DirectConnectGatewayAttachment": { + "AWS_CloudFront_RealtimeLogConfig": { "type": "object", - "markdownDescription": "AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-directconnectgatewayattachment.html)", + "markdownDescription": "A real-time log configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html)", "allOf": [ { "type": "object", @@ -41898,14 +41856,14 @@ "Type": { "type": "string", "enum": [ - "AWS::NetworkManager::DirectConnectGatewayAttachment" + "AWS::CloudFront::RealtimeLogConfig" ], "markdownEnumDescriptions": [ - "AWS::NetworkManager::DirectConnectGatewayAttachment Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-directconnectgatewayattachment.html)" + "A real-time log configuration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-realtimelogconfig.html)" ] }, "Properties": { - "$ref": "resources/aws-networkmanager-directconnectgatewayattachment.json" + "$ref": "resources/aws-cloudfront-realtimelogconfig.json" } }, "required": [ @@ -41919,9 +41877,9 @@ ], "additionalProperties": false }, - "AWS_AppTest_TestCase": { + "AWS_EC2_NetworkInsightsAnalysis": { "type": "object", - "markdownDescription": "Represents a Test Case that can be captured and executed \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apptest-testcase.html)", + "markdownDescription": "Resource schema for AWS::EC2::NetworkInsightsAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html)", "allOf": [ { "type": "object", @@ -41929,14 +41887,14 @@ "Type": { "type": "string", "enum": [ - "AWS::AppTest::TestCase" + "AWS::EC2::NetworkInsightsAnalysis" ], "markdownEnumDescriptions": [ - "Represents a Test Case that can be captured and executed \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apptest-testcase.html)" + "Resource schema for AWS::EC2::NetworkInsightsAnalysis \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html)" ] }, "Properties": { - "$ref": "resources/aws-apptest-testcase.json" + "$ref": "resources/aws-ec2-networkinsightsanalysis.json" } }, "required": [ @@ -41950,9 +41908,9 @@ ], "additionalProperties": false }, - "AWS_Omics_AnnotationStore": { + "AWS_EC2_RouteServerAssociation": { "type": "object", - "markdownDescription": "Definition of AWS::Omics::AnnotationStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-annotationstore.html)", + "markdownDescription": "VPC Route Server Association \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html)", "allOf": [ { "type": "object", @@ -41960,14 +41918,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Omics::AnnotationStore" + "AWS::EC2::RouteServerAssociation" ], "markdownEnumDescriptions": [ - "Definition of AWS::Omics::AnnotationStore Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-annotationstore.html)" + "VPC Route Server Association \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-omics-annotationstore.json" + "$ref": "resources/aws-ec2-routeserverassociation.json" } }, "required": [ @@ -41981,9 +41939,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Pipeline": { + "AWS_ConnectCampaigns_Campaign": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html)", + "markdownDescription": "Definition of AWS::ConnectCampaigns::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaigns-campaign.html)", "allOf": [ { "type": "object", @@ -41991,14 +41949,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Pipeline" + "AWS::ConnectCampaigns::Campaign" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Pipeline \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-pipeline.html)" + "Definition of AWS::ConnectCampaigns::Campaign Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connectcampaigns-campaign.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-pipeline.json" + "$ref": "resources/aws-connectcampaigns-campaign.json" } }, "required": [ @@ -42012,9 +41970,9 @@ ], "additionalProperties": false }, - "AWS_IoTAnalytics_Datastore": { + "AWS_AppConfig_Deployment": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IoTAnalytics::Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html)", + "markdownDescription": "Resource Type definition for AWS::AppConfig::Deployment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deployment.html)", "allOf": [ { "type": "object", @@ -42022,18 +41980,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IoTAnalytics::Datastore" + "AWS::AppConfig::Deployment" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IoTAnalytics::Datastore \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotanalytics-datastore.html)" + "Resource Type definition for AWS::AppConfig::Deployment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appconfig-deployment.html)" ] }, "Properties": { - "$ref": "resources/aws-iotanalytics-datastore.json" + "$ref": "resources/aws-appconfig-deployment.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -42042,9 +42001,9 @@ ], "additionalProperties": false }, - "AWS_Deadline_QueueLimitAssociation": { + "AWS_AppRunner_VpcIngressConnection": { "type": "object", - "markdownDescription": "Definition of AWS::Deadline::QueueLimitAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuelimitassociation.html)", + "markdownDescription": "The AWS::AppRunner::VpcIngressConnection resource is an App Runner resource that specifies an App Runner VpcIngressConnection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcingressconnection.html)", "allOf": [ { "type": "object", @@ -42052,14 +42011,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Deadline::QueueLimitAssociation" + "AWS::AppRunner::VpcIngressConnection" ], "markdownEnumDescriptions": [ - "Definition of AWS::Deadline::QueueLimitAssociation Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-queuelimitassociation.html)" + "The AWS::AppRunner::VpcIngressConnection resource is an App Runner resource that specifies an App Runner VpcIngressConnection. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apprunner-vpcingressconnection.html)" ] }, "Properties": { - "$ref": "resources/aws-deadline-queuelimitassociation.json" + "$ref": "resources/aws-apprunner-vpcingressconnection.json" } }, "required": [ @@ -42073,9 +42032,9 @@ ], "additionalProperties": false }, - "AWS_Backup_BackupPlan": { + "AWS_IoTWireless_MulticastGroup": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Backup::BackupPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html)", + "markdownDescription": "Create and manage Multicast groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-multicastgroup.html)", "allOf": [ { "type": "object", @@ -42083,14 +42042,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Backup::BackupPlan" + "AWS::IoTWireless::MulticastGroup" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Backup::BackupPlan \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backup-backupplan.html)" + "Create and manage Multicast groups. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-multicastgroup.html)" ] }, "Properties": { - "$ref": "resources/aws-backup-backupplan.json" + "$ref": "resources/aws-iotwireless-multicastgroup.json" } }, "required": [ @@ -42104,9 +42063,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_TypeActivation": { + "AWS_RAM_ResourceShare": { "type": "object", - "markdownDescription": "Enable a resource that has been published in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html)", + "markdownDescription": "Resource type definition for AWS::RAM::ResourceShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html)", "allOf": [ { "type": "object", @@ -42114,18 +42073,19 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::TypeActivation" + "AWS::RAM::ResourceShare" ], "markdownEnumDescriptions": [ - "Enable a resource that has been published in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html)" + "Resource type definition for AWS::RAM::ResourceShare \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-typeactivation.json" + "$ref": "resources/aws-ram-resourceshare.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -42134,9 +42094,9 @@ ], "additionalProperties": false }, - "AWS_Kinesis_ResourcePolicy": { + "AWS_IoTFleetWise_ModelManifest": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Kinesis::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-resourcepolicy.html)", + "markdownDescription": "Definition of AWS::IoTFleetWise::ModelManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html)", "allOf": [ { "type": "object", @@ -42144,14 +42104,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Kinesis::ResourcePolicy" + "AWS::IoTFleetWise::ModelManifest" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Kinesis::ResourcePolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-resourcepolicy.html)" + "Definition of AWS::IoTFleetWise::ModelManifest Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-modelmanifest.html)" ] }, "Properties": { - "$ref": "resources/aws-kinesis-resourcepolicy.json" + "$ref": "resources/aws-iotfleetwise-modelmanifest.json" } }, "required": [ @@ -42165,9 +42125,9 @@ ], "additionalProperties": false }, - "AWS_CloudFormation_ResourceVersion": { + "AWS_IoT_CertificateProvider": { "type": "object", - "markdownDescription": "A resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html)", + "markdownDescription": "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificateprovider.html)", "allOf": [ { "type": "object", @@ -42175,14 +42135,14 @@ "Type": { "type": "string", "enum": [ - "AWS::CloudFormation::ResourceVersion" + "AWS::IoT::CertificateProvider" ], "markdownEnumDescriptions": [ - "A resource that has been registered in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-resourceversion.html)" + "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificateprovider.html)" ] }, "Properties": { - "$ref": "resources/aws-cloudformation-resourceversion.json" + "$ref": "resources/aws-iot-certificateprovider.json" } }, "required": [ @@ -42196,9 +42156,9 @@ ], "additionalProperties": false }, - "AWS_SageMaker_Workteam": { + "AWS_SupportApp_AccountAlias": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::SageMaker::Workteam \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html)", + "markdownDescription": "An AWS Support App resource that creates, updates, reads, and deletes a customer's account alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-accountalias.html)", "allOf": [ { "type": "object", @@ -42206,18 +42166,19 @@ "Type": { "type": "string", "enum": [ - "AWS::SageMaker::Workteam" + "AWS::SupportApp::AccountAlias" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::SageMaker::Workteam \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-workteam.html)" + "An AWS Support App resource that creates, updates, reads, and deletes a customer's account alias. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-supportapp-accountalias.html)" ] }, "Properties": { - "$ref": "resources/aws-sagemaker-workteam.json" + "$ref": "resources/aws-supportapp-accountalias.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -42226,9 +42187,9 @@ ], "additionalProperties": false }, - "AWS_VpcLattice_Rule": { + "AWS_PCAConnectorAD_DirectoryRegistration": { "type": "object", - "markdownDescription": "Creates a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html)", + "markdownDescription": "Definition of AWS::PCAConnectorAD::DirectoryRegistration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-directoryregistration.html)", "allOf": [ { "type": "object", @@ -42236,14 +42197,14 @@ "Type": { "type": "string", "enum": [ - "AWS::VpcLattice::Rule" + "AWS::PCAConnectorAD::DirectoryRegistration" ], "markdownEnumDescriptions": [ - "Creates a listener rule. Each listener has a default rule for checking connection requests, but you can define additional rules. Each rule consists of a priority, one or more actions, and one or more conditions. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-rule.html)" + "Definition of AWS::PCAConnectorAD::DirectoryRegistration Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcaconnectorad-directoryregistration.html)" ] }, "Properties": { - "$ref": "resources/aws-vpclattice-rule.json" + "$ref": "resources/aws-pcaconnectorad-directoryregistration.json" } }, "required": [ @@ -42257,9 +42218,9 @@ ], "additionalProperties": false }, - "AWS_DataPipeline_Pipeline": { + "AWS_MediaLive_EventBridgeRuleTemplateGroup": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html)", + "markdownDescription": "Definition of AWS::MediaLive::EventBridgeRuleTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplategroup.html)", "allOf": [ { "type": "object", @@ -42267,14 +42228,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DataPipeline::Pipeline" + "AWS::MediaLive::EventBridgeRuleTemplateGroup" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html)" + "Definition of AWS::MediaLive::EventBridgeRuleTemplateGroup Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-medialive-eventbridgeruletemplategroup.html)" ] }, "Properties": { - "$ref": "resources/aws-datapipeline-pipeline.json" + "$ref": "resources/aws-medialive-eventbridgeruletemplategroup.json" } }, "required": [ @@ -42288,9 +42249,9 @@ ], "additionalProperties": false }, - "AWS_RDS_GlobalCluster": { + "AWS_EC2_TransitGateway": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::RDS::GlobalCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::TransitGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html)", "allOf": [ { "type": "object", @@ -42298,14 +42259,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RDS::GlobalCluster" + "AWS::EC2::TransitGateway" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::RDS::GlobalCluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-globalcluster.html)" + "Resource Type definition for AWS::EC2::TransitGateway \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html)" ] }, "Properties": { - "$ref": "resources/aws-rds-globalcluster.json" + "$ref": "resources/aws-ec2-transitgateway.json" } }, "required": [ @@ -42318,9 +42279,9 @@ ], "additionalProperties": false }, - "AWS_LookoutMetrics_Alert": { + "AWS_Athena_DataCatalog": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::LookoutMetrics::Alert \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-alert.html)", + "markdownDescription": "Resource schema for AWS::Athena::DataCatalog \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html)", "allOf": [ { "type": "object", @@ -42328,14 +42289,14 @@ "Type": { "type": "string", "enum": [ - "AWS::LookoutMetrics::Alert" + "AWS::Athena::DataCatalog" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::LookoutMetrics::Alert \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lookoutmetrics-alert.html)" + "Resource schema for AWS::Athena::DataCatalog \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-datacatalog.html)" ] }, "Properties": { - "$ref": "resources/aws-lookoutmetrics-alert.json" + "$ref": "resources/aws-athena-datacatalog.json" } }, "required": [ @@ -42349,9 +42310,9 @@ ], "additionalProperties": false }, - "AWS_Budgets_BudgetsAction": { + "AWS_MSK_ClusterPolicy": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html)", + "markdownDescription": "Resource Type definition for AWS::MSK::ClusterPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-clusterpolicy.html)", "allOf": [ { "type": "object", @@ -42359,14 +42320,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Budgets::BudgetsAction" + "AWS::MSK::ClusterPolicy" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html)" + "Resource Type definition for AWS::MSK::ClusterPolicy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-clusterpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-budgets-budgetsaction.json" + "$ref": "resources/aws-msk-clusterpolicy.json" } }, "required": [ @@ -42380,9 +42341,9 @@ ], "additionalProperties": false }, - "AWS_EC2_LocalGatewayRoute": { + "AWS_Detective_MemberInvitation": { "type": "object", - "markdownDescription": "Resource Type definition for Local Gateway Route which describes a route for a local gateway route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html)", + "markdownDescription": "Resource schema for AWS::Detective::MemberInvitation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html)", "allOf": [ { "type": "object", @@ -42390,18 +42351,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::LocalGatewayRoute" + "AWS::Detective::MemberInvitation" ], "markdownEnumDescriptions": [ - "Resource Type definition for Local Gateway Route which describes a route for a local gateway route table. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayroute.html)" + "Resource schema for AWS::Detective::MemberInvitation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-detective-memberinvitation.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-localgatewayroute.json" + "$ref": "resources/aws-detective-memberinvitation.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -42410,9 +42372,9 @@ ], "additionalProperties": false }, - "AWS_SES_MailManagerIngressPoint": { + "AWS_DataBrew_Dataset": { "type": "object", - "markdownDescription": "Definition of AWS::SES::MailManagerIngressPoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageringresspoint.html)", + "markdownDescription": "Resource schema for AWS::DataBrew::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html)", "allOf": [ { "type": "object", @@ -42420,14 +42382,14 @@ "Type": { "type": "string", "enum": [ - "AWS::SES::MailManagerIngressPoint" + "AWS::DataBrew::Dataset" ], "markdownEnumDescriptions": [ - "Definition of AWS::SES::MailManagerIngressPoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ses-mailmanageringresspoint.html)" + "Resource schema for AWS::DataBrew::Dataset. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-databrew-dataset.html)" ] }, "Properties": { - "$ref": "resources/aws-ses-mailmanageringresspoint.json" + "$ref": "resources/aws-databrew-dataset.json" } }, "required": [ @@ -42441,9 +42403,9 @@ ], "additionalProperties": false }, - "AWS_MSK_Cluster": { + "AWS_Bedrock_ApplicationInferenceProfile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::MSK::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html)", + "markdownDescription": "Definition of AWS::Bedrock::ApplicationInferenceProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-applicationinferenceprofile.html)", "allOf": [ { "type": "object", @@ -42451,14 +42413,14 @@ "Type": { "type": "string", "enum": [ - "AWS::MSK::Cluster" + "AWS::Bedrock::ApplicationInferenceProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::MSK::Cluster \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-msk-cluster.html)" + "Definition of AWS::Bedrock::ApplicationInferenceProfile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-applicationinferenceprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-msk-cluster.json" + "$ref": "resources/aws-bedrock-applicationinferenceprofile.json" } }, "required": [ @@ -42472,9 +42434,9 @@ ], "additionalProperties": false }, - "AWS_Route53Profiles_ProfileAssociation": { + "AWS_Amplify_Branch": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Route53Profiles::ProfileAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileassociation.html)", + "markdownDescription": "The AWS::Amplify::Branch resource creates a new branch within an app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html)", "allOf": [ { "type": "object", @@ -42482,14 +42444,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Profiles::ProfileAssociation" + "AWS::Amplify::Branch" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Route53Profiles::ProfileAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53profiles-profileassociation.html)" + "The AWS::Amplify::Branch resource creates a new branch within an app. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-amplify-branch.html)" ] }, "Properties": { - "$ref": "resources/aws-route53profiles-profileassociation.json" + "$ref": "resources/aws-amplify-branch.json" } }, "required": [ @@ -42503,9 +42465,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCEndpointService": { + "AWS_WAF_XssMatchSet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::EC2::VPCEndpointService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html)", + "markdownDescription": "Resource Type definition for AWS::WAF::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html)", "allOf": [ { "type": "object", @@ -42513,18 +42475,19 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCEndpointService" + "AWS::WAF::XssMatchSet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::EC2::VPCEndpointService \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html)" + "Resource Type definition for AWS::WAF::XssMatchSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcendpointservice.json" + "$ref": "resources/aws-waf-xssmatchset.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -42533,9 +42496,9 @@ ], "additionalProperties": false }, - "AWS_ApplicationAutoScaling_ScalableTarget": { + "AWS_CloudFormation_TypeActivation": { "type": "object", - "markdownDescription": "The ``AWS::ApplicationAutoScaling::ScalableTarget`` resource specifies a resource that Application Auto Scaling can scale, such as an AWS::DynamoDB::Table or AWS::ECS::Service resource.\n For more information, see [Getting started](https://docs.aws.amazon.com/autoscaling/application/userguide/getting-started.html) in the *Application Auto Scaling User Guide*.\n If the resource that you want Application Auto Scaling to scale is not yet created in your account, add a dependency on the resource when registering it as a scalable target using the [DependsOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) attribute. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html)", + "markdownDescription": "Enable a resource that has been published in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html)", "allOf": [ { "type": "object", @@ -42543,19 +42506,18 @@ "Type": { "type": "string", "enum": [ - "AWS::ApplicationAutoScaling::ScalableTarget" + "AWS::CloudFormation::TypeActivation" ], "markdownEnumDescriptions": [ - "The ``AWS::ApplicationAutoScaling::ScalableTarget`` resource specifies a resource that Application Auto Scaling can scale, such as an AWS::DynamoDB::Table or AWS::ECS::Service resource.\n For more information, see [Getting started](https://docs.aws.amazon.com/autoscaling/application/userguide/getting-started.html) in the *Application Auto Scaling User Guide*.\n If the resource that you want Application Auto Scaling to scale is not yet created in your account, add a dependency on the resource when registering it as a scalable target using the [DependsOn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html) attribute. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html)" + "Enable a resource that has been published in the CloudFormation Registry. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html)" ] }, "Properties": { - "$ref": "resources/aws-applicationautoscaling-scalabletarget.json" + "$ref": "resources/aws-cloudformation-typeactivation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -42564,9 +42526,9 @@ ], "additionalProperties": false }, - "AWS_CodeStar_GitHubRepository": { + "AWS_XRay_SamplingRule": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::CodeStar::GitHubRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html)", + "markdownDescription": "This schema provides construct and validation rules for AWS-XRay SamplingRule resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-samplingrule.html)", "allOf": [ { "type": "object", @@ -42574,19 +42536,18 @@ "Type": { "type": "string", "enum": [ - "AWS::CodeStar::GitHubRepository" + "AWS::XRay::SamplingRule" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::CodeStar::GitHubRepository \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestar-githubrepository.html)" + "This schema provides construct and validation rules for AWS-XRay SamplingRule resource parameters. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-xray-samplingrule.html)" ] }, "Properties": { - "$ref": "resources/aws-codestar-githubrepository.json" + "$ref": "resources/aws-xray-samplingrule.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -42595,9 +42556,9 @@ ], "additionalProperties": false }, - "AWS_Invoicing_InvoiceUnit": { + "AWS_RDS_DBProxy": { "type": "object", - "markdownDescription": "An invoice unit is a set of mutually exclusive accounts that correspond to your business entity. Invoice units allow you to separate AWS account costs and configures your invoice for each business entity. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html)", + "markdownDescription": "Resource schema for AWS::RDS::DBProxy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html)", "allOf": [ { "type": "object", @@ -42605,14 +42566,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Invoicing::InvoiceUnit" + "AWS::RDS::DBProxy" ], "markdownEnumDescriptions": [ - "An invoice unit is a set of mutually exclusive accounts that correspond to your business entity. Invoice units allow you to separate AWS account costs and configures your invoice for each business entity. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-invoicing-invoiceunit.html)" + "Resource schema for AWS::RDS::DBProxy \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbproxy.html)" ] }, "Properties": { - "$ref": "resources/aws-invoicing-invoiceunit.json" + "$ref": "resources/aws-rds-dbproxy.json" } }, "required": [ @@ -42626,9 +42587,9 @@ ], "additionalProperties": false }, - "AWS_Connect_EvaluationForm": { + "AWS_VpcLattice_ServiceNetworkResourceAssociation": { "type": "object", - "markdownDescription": "Creates an evaluation form for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-evaluationform.html)", + "markdownDescription": "VpcLattice ServiceNetworkResourceAssociation CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkresourceassociation.html)", "allOf": [ { "type": "object", @@ -42636,19 +42597,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::EvaluationForm" + "AWS::VpcLattice::ServiceNetworkResourceAssociation" ], "markdownEnumDescriptions": [ - "Creates an evaluation form for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-evaluationform.html)" + "VpcLattice ServiceNetworkResourceAssociation CFN resource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-vpclattice-servicenetworkresourceassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-evaluationform.json" + "$ref": "resources/aws-vpclattice-servicenetworkresourceassociation.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -42657,9 +42617,9 @@ ], "additionalProperties": false }, - "AWS_ApiGateway_DocumentationPart": { + "AWS_SecurityHub_OrganizationConfiguration": { "type": "object", - "markdownDescription": "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html)", + "markdownDescription": "The AWS::SecurityHub::OrganizationConfiguration resource represents the configuration of your organization in Security Hub. Only the Security Hub administrator account can create Organization Configuration resource in each region and can opt-in to Central Configuration only in the aggregation region of FindingAggregator. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html)", "allOf": [ { "type": "object", @@ -42667,14 +42627,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ApiGateway::DocumentationPart" + "AWS::SecurityHub::OrganizationConfiguration" ], "markdownEnumDescriptions": [ - "The ``AWS::ApiGateway::DocumentationPart`` resource creates a documentation part for an API. For more information, see [Representation of API Documentation in API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-documenting-api-content-representation.html) in the *API Gateway Developer Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-documentationpart.html)" + "The AWS::SecurityHub::OrganizationConfiguration resource represents the configuration of your organization in Security Hub. Only the Security Hub administrator account can create Organization Configuration resource in each region and can opt-in to Central Configuration only in the aggregation region of FindingAggregator. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securityhub-organizationconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-apigateway-documentationpart.json" + "$ref": "resources/aws-securityhub-organizationconfiguration.json" } }, "required": [ @@ -42688,9 +42648,9 @@ ], "additionalProperties": false }, - "AWS_Cassandra_Keyspace": { + "AWS_IoTWireless_WirelessDeviceImportTask": { "type": "object", - "markdownDescription": "Resource schema for AWS::Cassandra::Keyspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html)", + "markdownDescription": "Wireless Device Import Tasks \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdeviceimporttask.html)", "allOf": [ { "type": "object", @@ -42698,18 +42658,19 @@ "Type": { "type": "string", "enum": [ - "AWS::Cassandra::Keyspace" + "AWS::IoTWireless::WirelessDeviceImportTask" ], "markdownEnumDescriptions": [ - "Resource schema for AWS::Cassandra::Keyspace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-keyspace.html)" + "Wireless Device Import Tasks \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdeviceimporttask.html)" ] }, "Properties": { - "$ref": "resources/aws-cassandra-keyspace.json" + "$ref": "resources/aws-iotwireless-wirelessdeviceimporttask.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -42718,9 +42679,9 @@ ], "additionalProperties": false }, - "AWS_ServiceCatalog_ServiceActionAssociation": { + "AWS_EC2_VPNGateway": { "type": "object", - "markdownDescription": "Resource Schema for AWS::ServiceCatalog::ServiceActionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html)", + "markdownDescription": "Specifies a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngateway.html)", "allOf": [ { "type": "object", @@ -42728,14 +42689,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceCatalog::ServiceActionAssociation" + "AWS::EC2::VPNGateway" ], "markdownEnumDescriptions": [ - "Resource Schema for AWS::ServiceCatalog::ServiceActionAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html)" + "Specifies a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself.\n For more information, see [](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) in the *User Guide*. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpngateway.html)" ] }, "Properties": { - "$ref": "resources/aws-servicecatalog-serviceactionassociation.json" + "$ref": "resources/aws-ec2-vpngateway.json" } }, "required": [ @@ -42749,9 +42710,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Certificate": { + "AWS_S3_Bucket": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-certificate.html)", + "markdownDescription": "The ``AWS::S3::Bucket`` resource creates an Amazon S3 bucket in the same AWS Region where you create the AWS CloudFormation stack.\n To control how AWS CloudFormation handles the bucket when the stack is deleted, you can set a deletion policy for your bucket. You can choose to *retain* the bucket or to *delete* the bucket. For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n You can only delete empty buckets. Deletion fails for buckets that have contents. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html)", "allOf": [ { "type": "object", @@ -42759,19 +42720,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Certificate" + "AWS::S3::Bucket" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Certificate. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-certificate.html)" + "The ``AWS::S3::Bucket`` resource creates an Amazon S3 bucket in the same AWS Region where you create the AWS CloudFormation stack.\n To control how AWS CloudFormation handles the bucket when the stack is deleted, you can set a deletion policy for your bucket. You can choose to *retain* the bucket or to *delete* the bucket. For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html).\n You can only delete empty buckets. Deletion fails for buckets that have contents. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-certificate.json" + "$ref": "resources/aws-s3-bucket.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -42780,9 +42740,9 @@ ], "additionalProperties": false }, - "AWS_Route53Resolver_ResolverRuleAssociation": { + "AWS_EMR_Step": { "type": "object", - "markdownDescription": "In the response to an [AssociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_AssociateResolverRule.html), [DisassociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_DisassociateResolverRule.html), or [ListResolverRuleAssociations](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_ListResolverRuleAssociations.html) request, provides information about an association between a resolver rule and a VPC. The association determines which DNS queries that originate in the VPC are forwarded to your network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html)", + "markdownDescription": "Schema for AWS::EMR::Step \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html)", "allOf": [ { "type": "object", @@ -42790,14 +42750,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Route53Resolver::ResolverRuleAssociation" + "AWS::EMR::Step" ], "markdownEnumDescriptions": [ - "In the response to an [AssociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_AssociateResolverRule.html), [DisassociateResolverRule](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_DisassociateResolverRule.html), or [ListResolverRuleAssociations](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_ListResolverRuleAssociations.html) request, provides information about an association between a resolver rule and a VPC. The association determines which DNS queries that originate in the VPC are forwarded to your network. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverruleassociation.html)" + "Schema for AWS::EMR::Step \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-step.html)" ] }, "Properties": { - "$ref": "resources/aws-route53resolver-resolverruleassociation.json" + "$ref": "resources/aws-emr-step.json" } }, "required": [ @@ -42811,9 +42771,9 @@ ], "additionalProperties": false }, - "AWS_FraudDetector_Outcome": { + "AWS_Chatbot_SlackChannelConfiguration": { "type": "object", - "markdownDescription": "An outcome for rule evaluation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-outcome.html)", + "markdownDescription": "Resource schema for AWS::Chatbot::SlackChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html)", "allOf": [ { "type": "object", @@ -42821,14 +42781,14 @@ "Type": { "type": "string", "enum": [ - "AWS::FraudDetector::Outcome" + "AWS::Chatbot::SlackChannelConfiguration" ], "markdownEnumDescriptions": [ - "An outcome for rule evaluation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-frauddetector-outcome.html)" + "Resource schema for AWS::Chatbot::SlackChannelConfiguration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-frauddetector-outcome.json" + "$ref": "resources/aws-chatbot-slackchannelconfiguration.json" } }, "required": [ @@ -42842,9 +42802,9 @@ ], "additionalProperties": false }, - "AWS_EC2_TransitGatewayMulticastDomain": { + "AWS_ApiGateway_Deployment": { "type": "object", - "markdownDescription": "The AWS::EC2::TransitGatewayMulticastDomain type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html)", + "markdownDescription": "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html)", "allOf": [ { "type": "object", @@ -42852,14 +42812,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::TransitGatewayMulticastDomain" + "AWS::ApiGateway::Deployment" ], "markdownEnumDescriptions": [ - "The AWS::EC2::TransitGatewayMulticastDomain type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html)" + "The ``AWS::ApiGateway::Deployment`` resource deploys an API Gateway ``RestApi`` resource to a stage so that clients can call the API over the internet. The stage acts as an environment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-transitgatewaymulticastdomain.json" + "$ref": "resources/aws-apigateway-deployment.json" } }, "required": [ @@ -42873,9 +42833,9 @@ ], "additionalProperties": false }, - "AWS_IVS_Channel": { + "AWS_GroundStation_Config": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::IVS::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-channel.html)", + "markdownDescription": "AWS Ground Station config resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html)", "allOf": [ { "type": "object", @@ -42883,18 +42843,19 @@ "Type": { "type": "string", "enum": [ - "AWS::IVS::Channel" + "AWS::GroundStation::Config" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::IVS::Channel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-channel.html)" + "AWS Ground Station config resource type for CloudFormation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-groundstation-config.html)" ] }, "Properties": { - "$ref": "resources/aws-ivs-channel.json" + "$ref": "resources/aws-groundstation-config.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -42903,9 +42864,9 @@ ], "additionalProperties": false }, - "AWS_EC2_VPCEndpoint": { + "AWS_Lightsail_Instance": { "type": "object", - "markdownDescription": "Specifies a VPC endpoint. A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS, an MKT Partner, or another AWS accounts in your organization. For more information, see the [User Guide](https://docs.aws.amazon.com/vpc/latest/privatelink/).\n An endpoint of type ``Interface`` establishes connections between the subnets in your VPC and an AWS-service, your own service, or a service hosted by another AWS-account. With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.\n An endpoint of type ``gateway`` serves as a target for a route in your route table for traffic destined for S3 or DDB. You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to S3, see [Why can't I connect to an S3 bucket using a gateway VPC endpoint?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint) \n An endpoint of type ``GatewayLoadBalancer`` provides private connectivity between your VPC and virtual appliances from a service provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html)", + "markdownDescription": "Resource Type definition for AWS::Lightsail::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html)", "allOf": [ { "type": "object", @@ -42913,14 +42874,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EC2::VPCEndpoint" + "AWS::Lightsail::Instance" ], "markdownEnumDescriptions": [ - "Specifies a VPC endpoint. A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS, an MKT Partner, or another AWS accounts in your organization. For more information, see the [User Guide](https://docs.aws.amazon.com/vpc/latest/privatelink/).\n An endpoint of type ``Interface`` establishes connections between the subnets in your VPC and an AWS-service, your own service, or a service hosted by another AWS-account. With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.\n An endpoint of type ``gateway`` serves as a target for a route in your route table for traffic destined for S3 or DDB. You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to S3, see [Why can't I connect to an S3 bucket using a gateway VPC endpoint?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint) \n An endpoint of type ``GatewayLoadBalancer`` provides private connectivity between your VPC and virtual appliances from a service provider. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html)" + "Resource Type definition for AWS::Lightsail::Instance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-instance.html)" ] }, "Properties": { - "$ref": "resources/aws-ec2-vpcendpoint.json" + "$ref": "resources/aws-lightsail-instance.json" } }, "required": [ @@ -42934,9 +42895,9 @@ ], "additionalProperties": false }, - "AWS_Logs_Destination": { + "AWS_IoT_ThingGroup": { "type": "object", - "markdownDescription": "The AWS::Logs::Destination resource specifies a CloudWatch Logs destination. A destination encapsulates a physical resource (such as an Amazon Kinesis data stream) and enables you to subscribe that resource to a stream of log events. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::ThingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html)", "allOf": [ { "type": "object", @@ -42944,19 +42905,18 @@ "Type": { "type": "string", "enum": [ - "AWS::Logs::Destination" + "AWS::IoT::ThingGroup" ], "markdownEnumDescriptions": [ - "The AWS::Logs::Destination resource specifies a CloudWatch Logs destination. A destination encapsulates a physical resource (such as an Amazon Kinesis data stream) and enables you to subscribe that resource to a stream of log events. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html)" + "Resource Type definition for AWS::IoT::ThingGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thinggroup.html)" ] }, "Properties": { - "$ref": "resources/aws-logs-destination.json" + "$ref": "resources/aws-iot-thinggroup.json" } }, "required": [ - "Type", - "Properties" + "Type" ] }, { @@ -42965,9 +42925,9 @@ ], "additionalProperties": false }, - "AWS_Signer_ProfilePermission": { + "AWS_DMS_ReplicationInstance": { "type": "object", - "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html)", + "markdownDescription": "Resource Type definition for AWS::DMS::ReplicationInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html)", "allOf": [ { "type": "object", @@ -42975,14 +42935,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Signer::ProfilePermission" + "AWS::DMS::ReplicationInstance" ], "markdownEnumDescriptions": [ - "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-signer-profilepermission.html)" + "Resource Type definition for AWS::DMS::ReplicationInstance \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dms-replicationinstance.html)" ] }, "Properties": { - "$ref": "resources/aws-signer-profilepermission.json" + "$ref": "resources/aws-dms-replicationinstance.json" } }, "required": [ @@ -42996,9 +42956,9 @@ ], "additionalProperties": false }, - "AWS_Connect_SecurityProfile": { + "AWS_CustomerProfiles_EventTrigger": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Connect::SecurityProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securityprofile.html)", + "markdownDescription": "An event trigger resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventtrigger.html)", "allOf": [ { "type": "object", @@ -43006,14 +42966,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Connect::SecurityProfile" + "AWS::CustomerProfiles::EventTrigger" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Connect::SecurityProfile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-securityprofile.html)" + "An event trigger resource of Amazon Connect Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-eventtrigger.html)" ] }, "Properties": { - "$ref": "resources/aws-connect-securityprofile.json" + "$ref": "resources/aws-customerprofiles-eventtrigger.json" } }, "required": [ @@ -43027,9 +42987,9 @@ ], "additionalProperties": false }, - "AWS_BackupGateway_Hypervisor": { + "AWS_Logs_QueryDefinition": { "type": "object", - "markdownDescription": "Definition of AWS::BackupGateway::Hypervisor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backupgateway-hypervisor.html)", + "markdownDescription": "The resource schema for AWSLogs QueryDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html)", "allOf": [ { "type": "object", @@ -43037,18 +42997,19 @@ "Type": { "type": "string", "enum": [ - "AWS::BackupGateway::Hypervisor" + "AWS::Logs::QueryDefinition" ], "markdownEnumDescriptions": [ - "Definition of AWS::BackupGateway::Hypervisor Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-backupgateway-hypervisor.html)" + "The resource schema for AWSLogs QueryDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-querydefinition.html)" ] }, "Properties": { - "$ref": "resources/aws-backupgateway-hypervisor.json" + "$ref": "resources/aws-logs-querydefinition.json" } }, "required": [ - "Type" + "Type", + "Properties" ] }, { @@ -43057,9 +43018,9 @@ ], "additionalProperties": false }, - "AWS_OpsWorks_Volume": { + "AWS_WorkSpacesWeb_NetworkSettings": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::OpsWorks::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html)", + "markdownDescription": "Definition of AWS::WorkSpacesWeb::NetworkSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-networksettings.html)", "allOf": [ { "type": "object", @@ -43067,14 +43028,14 @@ "Type": { "type": "string", "enum": [ - "AWS::OpsWorks::Volume" + "AWS::WorkSpacesWeb::NetworkSettings" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::OpsWorks::Volume \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html)" + "Definition of AWS::WorkSpacesWeb::NetworkSettings Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesweb-networksettings.html)" ] }, "Properties": { - "$ref": "resources/aws-opsworks-volume.json" + "$ref": "resources/aws-workspacesweb-networksettings.json" } }, "required": [ @@ -43088,9 +43049,9 @@ ], "additionalProperties": false }, - "AWS_ServiceDiscovery_HttpNamespace": { + "AWS_IoTWireless_WirelessDevice": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::ServiceDiscovery::HttpNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html)", + "markdownDescription": "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdevice.html)", "allOf": [ { "type": "object", @@ -43098,14 +43059,14 @@ "Type": { "type": "string", "enum": [ - "AWS::ServiceDiscovery::HttpNamespace" + "AWS::IoTWireless::WirelessDevice" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::ServiceDiscovery::HttpNamespace \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicediscovery-httpnamespace.html)" + "Create and manage wireless gateways, including LoRa gateways. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotwireless-wirelessdevice.html)" ] }, "Properties": { - "$ref": "resources/aws-servicediscovery-httpnamespace.json" + "$ref": "resources/aws-iotwireless-wirelessdevice.json" } }, "required": [ @@ -43119,9 +43080,9 @@ ], "additionalProperties": false }, - "AWS_Lightsail_Bucket": { + "AWS_RolesAnywhere_Profile": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::Lightsail::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-bucket.html)", + "markdownDescription": "Definition of AWS::RolesAnywhere::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-profile.html)", "allOf": [ { "type": "object", @@ -43129,14 +43090,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Lightsail::Bucket" + "AWS::RolesAnywhere::Profile" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::Lightsail::Bucket \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-bucket.html)" + "Definition of AWS::RolesAnywhere::Profile Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rolesanywhere-profile.html)" ] }, "Properties": { - "$ref": "resources/aws-lightsail-bucket.json" + "$ref": "resources/aws-rolesanywhere-profile.json" } }, "required": [ @@ -43150,9 +43111,9 @@ ], "additionalProperties": false }, - "AWS_WAFRegional_SizeConstraintSet": { + "AWS_AutoScaling_ScalingPolicy": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::WAFRegional::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html)", + "markdownDescription": "The AWS::AutoScaling::ScalingPolicy resource specifies an Amazon EC2 Auto Scaling scaling policy so that the Auto Scaling group can scale the number of instances available for your application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scalingpolicy.html)", "allOf": [ { "type": "object", @@ -43160,14 +43121,14 @@ "Type": { "type": "string", "enum": [ - "AWS::WAFRegional::SizeConstraintSet" + "AWS::AutoScaling::ScalingPolicy" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::WAFRegional::SizeConstraintSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html)" + "The AWS::AutoScaling::ScalingPolicy resource specifies an Amazon EC2 Auto Scaling scaling policy so that the Auto Scaling group can scale the number of instances available for your application. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scalingpolicy.html)" ] }, "Properties": { - "$ref": "resources/aws-wafregional-sizeconstraintset.json" + "$ref": "resources/aws-autoscaling-scalingpolicy.json" } }, "required": [ @@ -43181,9 +43142,876 @@ ], "additionalProperties": false }, - "AWS_RoboMaker_Robot": { + "AWS_Deadline_LicenseEndpoint": { "type": "object", - "markdownDescription": "AWS::RoboMaker::Robot resource creates an AWS RoboMaker Robot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html)", + "markdownDescription": "Definition of AWS::Deadline::LicenseEndpoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-licenseendpoint.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Deadline::LicenseEndpoint" + ], + "markdownEnumDescriptions": [ + "Definition of AWS::Deadline::LicenseEndpoint Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-deadline-licenseendpoint.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-deadline-licenseendpoint.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Batch_ServiceEnvironment": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Batch::ServiceEnvironment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Batch::ServiceEnvironment" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Batch::ServiceEnvironment \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-batch-serviceenvironment.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Greengrass_SubscriptionDefinition": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Greengrass::SubscriptionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Greengrass::SubscriptionDefinition" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Greengrass::SubscriptionDefinition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-subscriptiondefinition.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-greengrass-subscriptiondefinition.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Greengrass_FunctionDefinitionVersion": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Greengrass::FunctionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Greengrass::FunctionDefinitionVersion" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Greengrass::FunctionDefinitionVersion \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrass-functiondefinitionversion.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-greengrass-functiondefinitionversion.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_GuardDuty_ThreatIntelSet": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::GuardDuty::ThreatIntelSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::GuardDuty::ThreatIntelSet" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::GuardDuty::ThreatIntelSet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-guardduty-threatintelset.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_CE_AnomalySubscription": { + "type": "object", + "markdownDescription": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalysubscription.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::CE::AnomalySubscription" + ], + "markdownEnumDescriptions": [ + "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ce-anomalysubscription.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-ce-anomalysubscription.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_CustomerProfiles_CalculatedAttributeDefinition": { + "type": "object", + "markdownDescription": "A calculated attribute definition for Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::CustomerProfiles::CalculatedAttributeDefinition" + ], + "markdownEnumDescriptions": [ + "A calculated attribute definition for Customer Profiles \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-calculatedattributedefinition.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-customerprofiles-calculatedattributedefinition.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Route53RecoveryReadiness_ReadinessCheck": { + "type": "object", + "markdownDescription": "Aws Route53 Recovery Readiness Check Schema and API specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-readinesscheck.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Route53RecoveryReadiness::ReadinessCheck" + ], + "markdownEnumDescriptions": [ + "Aws Route53 Recovery Readiness Check Schema and API specification. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoveryreadiness-readinesscheck.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-route53recoveryreadiness-readinesscheck.json" + } + }, + "required": [ + "Type" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_BCMDataExports_Export": { + "type": "object", + "markdownDescription": "Definition of AWS::BCMDataExports::Export Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bcmdataexports-export.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::BCMDataExports::Export" + ], + "markdownEnumDescriptions": [ + "Definition of AWS::BCMDataExports::Export Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bcmdataexports-export.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-bcmdataexports-export.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Omics_WorkflowVersion": { + "type": "object", + "markdownDescription": "Definition of AWS::Omics::WorkflowVersion Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Omics::WorkflowVersion" + ], + "markdownEnumDescriptions": [ + "Definition of AWS::Omics::WorkflowVersion Resource Type. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflowversion.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-omics-workflowversion.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_ApiGateway_VpcLink": { + "type": "object", + "markdownDescription": "The ``AWS::ApiGateway::VpcLink`` resource creates an API Gateway VPC link for a REST API to access resources in an Amazon Virtual Private Cloud (VPC). For more information, see [vpclink:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateVpcLink.html) in the ``Amazon API Gateway REST API Reference``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::ApiGateway::VpcLink" + ], + "markdownEnumDescriptions": [ + "The ``AWS::ApiGateway::VpcLink`` resource creates an API Gateway VPC link for a REST API to access resources in an Amazon Virtual Private Cloud (VPC). For more information, see [vpclink:create](https://docs.aws.amazon.com/apigateway/latest/api/API_CreateVpcLink.html) in the ``Amazon API Gateway REST API Reference``. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-vpclink.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-apigateway-vpclink.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_MediaPackageV2_OriginEndpointPolicy": { + "type": "object", + "markdownDescription": "

Represents a resource policy that allows or denies access to an origin endpoint.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::MediaPackageV2::OriginEndpointPolicy" + ], + "markdownEnumDescriptions": [ + "

Represents a resource policy that allows or denies access to an origin endpoint.

\n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediapackagev2-originendpointpolicy.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-mediapackagev2-originendpointpolicy.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Shield_DRTAccess": { + "type": "object", + "markdownDescription": "Config the role and list of Amazon S3 log buckets used by the Shield Response Team (SRT) to access your AWS account while assisting with attack mitigation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-drtaccess.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Shield::DRTAccess" + ], + "markdownEnumDescriptions": [ + "Config the role and list of Amazon S3 log buckets used by the Shield Response Team (SRT) to access your AWS account while assisting with attack mitigation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-shield-drtaccess.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-shield-drtaccess.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_CloudFront_KeyValueStore": { + "type": "object", + "markdownDescription": "The key value store. Use this to separate data from function code, allowing you to update data without having to publish a new version of a function. The key value store holds keys and their corresponding values. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keyvaluestore.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::CloudFront::KeyValueStore" + ], + "markdownEnumDescriptions": [ + "The key value store. Use this to separate data from function code, allowing you to update data without having to publish a new version of a function. The key value store holds keys and their corresponding values. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-keyvaluestore.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-cloudfront-keyvaluestore.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_ApiGateway_BasePathMapping": { + "type": "object", + "markdownDescription": "The ``AWS::ApiGateway::BasePathMapping`` resource creates a base path that clients who call your API must use in the invocation URL. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::ApiGateway::BasePathMapping" + ], + "markdownEnumDescriptions": [ + "The ``AWS::ApiGateway::BasePathMapping`` resource creates a base path that clients who call your API must use in the invocation URL. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-apigateway-basepathmapping.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_SageMaker_FeatureGroup": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::SageMaker::FeatureGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::SageMaker::FeatureGroup" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::SageMaker::FeatureGroup \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sagemaker-featuregroup.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-sagemaker-featuregroup.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_GreengrassV2_Deployment": { + "type": "object", + "markdownDescription": "Resource for Greengrass V2 deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-deployment.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::GreengrassV2::Deployment" + ], + "markdownEnumDescriptions": [ + "Resource for Greengrass V2 deployment. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-greengrassv2-deployment.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-greengrassv2-deployment.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_LakeFormation_DataCellsFilter": { + "type": "object", + "markdownDescription": "A resource schema representing a Lake Formation Data Cells Filter. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datacellsfilter.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::LakeFormation::DataCellsFilter" + ], + "markdownEnumDescriptions": [ + "A resource schema representing a Lake Formation Data Cells Filter. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-datacellsfilter.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-lakeformation-datacellsfilter.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Glue_MLTransform": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Glue::MLTransform \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Glue::MLTransform" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Glue::MLTransform \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-mltransform.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-glue-mltransform.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_AppFlow_Flow": { + "type": "object", + "markdownDescription": "Resource schema for AWS::AppFlow::Flow. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::AppFlow::Flow" + ], + "markdownEnumDescriptions": [ + "Resource schema for AWS::AppFlow::Flow. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appflow-flow.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-appflow-flow.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Pinpoint_BaiduChannel": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Pinpoint::BaiduChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Pinpoint::BaiduChannel" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Pinpoint::BaiduChannel \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-baiduchannel.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-pinpoint-baiduchannel.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_KafkaConnect_CustomPlugin": { + "type": "object", + "markdownDescription": "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-customplugin.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::KafkaConnect::CustomPlugin" + ], + "markdownEnumDescriptions": [ + "An example resource schema demonstrating some basic constructs and validation rules. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kafkaconnect-customplugin.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-kafkaconnect-customplugin.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_EKS_PodIdentityAssociation": { + "type": "object", + "markdownDescription": "An object representing an Amazon EKS PodIdentityAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-podidentityassociation.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::EKS::PodIdentityAssociation" + ], + "markdownEnumDescriptions": [ + "An object representing an Amazon EKS PodIdentityAssociation. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-podidentityassociation.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-eks-podidentityassociation.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_NetworkManager_CoreNetwork": { + "type": "object", + "markdownDescription": "AWS::NetworkManager::CoreNetwork Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-corenetwork.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::NetworkManager::CoreNetwork" + ], + "markdownEnumDescriptions": [ + "AWS::NetworkManager::CoreNetwork Resource Type Definition. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkmanager-corenetwork.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-networkmanager-corenetwork.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Connect_EvaluationForm": { + "type": "object", + "markdownDescription": "Creates an evaluation form for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-evaluationform.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Connect::EvaluationForm" + ], + "markdownEnumDescriptions": [ + "Creates an evaluation form for the specified CON instance. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-evaluationform.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-connect-evaluationform.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Inspector_AssessmentTemplate": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::Inspector::AssessmentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::Inspector::AssessmentTemplate" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::Inspector::AssessmentTemplate \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-inspector-assessmenttemplate.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-inspector-assessmenttemplate.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_EC2_VPCEndpointServicePermissions": { + "type": "object", + "markdownDescription": "Resource Type definition for AWS::EC2::VPCEndpointServicePermissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::EC2::VPCEndpointServicePermissions" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for AWS::EC2::VPCEndpointServicePermissions \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservicepermissions.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-ec2-vpcendpointservicepermissions.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_IoT_SoftwarePackageVersion": { + "type": "object", + "markdownDescription": "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::IoT::SoftwarePackageVersion" + ], + "markdownEnumDescriptions": [ + "resource definition \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-softwarepackageversion.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-iot-softwarepackageversion.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_Route53RecoveryControl_Cluster": { + "type": "object", + "markdownDescription": "AWS Route53 Recovery Control Cluster resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-cluster.html)", "allOf": [ { "type": "object", @@ -43191,14 +44019,14 @@ "Type": { "type": "string", "enum": [ - "AWS::RoboMaker::Robot" + "AWS::Route53RecoveryControl::Cluster" ], "markdownEnumDescriptions": [ - "AWS::RoboMaker::Robot resource creates an AWS RoboMaker Robot. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-robomaker-robot.html)" + "AWS Route53 Recovery Control Cluster resource schema \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53recoverycontrol-cluster.html)" ] }, "Properties": { - "$ref": "resources/aws-robomaker-robot.json" + "$ref": "resources/aws-route53recoverycontrol-cluster.json" } }, "required": [ @@ -43212,9 +44040,9 @@ ], "additionalProperties": false }, - "AWS_Kendra_DataSource": { + "AWS_CodePipeline_Pipeline": { "type": "object", - "markdownDescription": "Kendra DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-datasource.html)", + "markdownDescription": "The AWS::CodePipeline::Pipeline resource creates a CodePipeline pipeline that describes how software changes go through a release process. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html)", "allOf": [ { "type": "object", @@ -43222,14 +44050,14 @@ "Type": { "type": "string", "enum": [ - "AWS::Kendra::DataSource" + "AWS::CodePipeline::Pipeline" ], "markdownEnumDescriptions": [ - "Kendra DataSource \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-datasource.html)" + "The AWS::CodePipeline::Pipeline resource creates a CodePipeline pipeline that describes how software changes go through a release process. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html)" ] }, "Properties": { - "$ref": "resources/aws-kendra-datasource.json" + "$ref": "resources/aws-codepipeline-pipeline.json" } }, "required": [ @@ -43243,9 +44071,9 @@ ], "additionalProperties": false }, - "AWS_EMRContainers_VirtualCluster": { + "AWS_CustomerProfiles_Integration": { "type": "object", - "markdownDescription": "Resource Schema of AWS::EMRContainers::VirtualCluster Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html)", + "markdownDescription": "The resource schema for creating an Amazon Connect Customer Profiles Integration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-integration.html)", "allOf": [ { "type": "object", @@ -43253,14 +44081,14 @@ "Type": { "type": "string", "enum": [ - "AWS::EMRContainers::VirtualCluster" + "AWS::CustomerProfiles::Integration" ], "markdownEnumDescriptions": [ - "Resource Schema of AWS::EMRContainers::VirtualCluster Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emrcontainers-virtualcluster.html)" + "The resource schema for creating an Amazon Connect Customer Profiles Integration. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-integration.html)" ] }, "Properties": { - "$ref": "resources/aws-emrcontainers-virtualcluster.json" + "$ref": "resources/aws-customerprofiles-integration.json" } }, "required": [ @@ -43274,9 +44102,9 @@ ], "additionalProperties": false }, - "AWS_S3Express_DirectoryBucket": { + "AWS_EC2_EC2Fleet": { "type": "object", - "markdownDescription": "Resource Type definition for AWS::S3Express::DirectoryBucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-directorybucket.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::EC2Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html)", "allOf": [ { "type": "object", @@ -43284,14 +44112,14 @@ "Type": { "type": "string", "enum": [ - "AWS::S3Express::DirectoryBucket" + "AWS::EC2::EC2Fleet" ], "markdownEnumDescriptions": [ - "Resource Type definition for AWS::S3Express::DirectoryBucket. \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-directorybucket.html)" + "Resource Type definition for AWS::EC2::EC2Fleet \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ec2fleet.html)" ] }, "Properties": { - "$ref": "resources/aws-s3express-directorybucket.json" + "$ref": "resources/aws-ec2-ec2fleet.json" } }, "required": [ @@ -43305,9 +44133,9 @@ ], "additionalProperties": false }, - "AWS_DeviceFarm_Project": { + "AWS_Logs_DeliverySource": { "type": "object", - "markdownDescription": "Resource Type definition for a Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-project.html)", + "markdownDescription": " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverysource.html)", "allOf": [ { "type": "object", @@ -43315,14 +44143,76 @@ "Type": { "type": "string", "enum": [ - "AWS::DeviceFarm::Project" + "AWS::Logs::DeliverySource" ], "markdownEnumDescriptions": [ - "Resource Type definition for a Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-project.html)" + " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-deliverysource.html)" ] }, "Properties": { - "$ref": "resources/aws-devicefarm-project.json" + "$ref": "resources/aws-logs-deliverysource.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_DeviceFarm_DevicePool": { + "type": "object", + "markdownDescription": "Resource Type definition for a Device Pool for a given Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-devicepool.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::DeviceFarm::DevicePool" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for a Device Pool for a given Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-devicepool.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-devicefarm-devicepool.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, + "AWS_DeviceFarm_VPCEConfiguration": { + "type": "object", + "markdownDescription": "Resource Type definition for a Device Farm VPCE Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-vpceconfiguration.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::DeviceFarm::VPCEConfiguration" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for a Device Farm VPCE Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-vpceconfiguration.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-devicefarm-vpceconfiguration.json" } }, "required": [ @@ -43367,6 +44257,37 @@ ], "additionalProperties": false }, + "AWS_DeviceFarm_Project": { + "type": "object", + "markdownDescription": "Resource Type definition for a Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-project.html)", + "allOf": [ + { + "type": "object", + "properties": { + "Type": { + "type": "string", + "enum": [ + "AWS::DeviceFarm::Project" + ], + "markdownEnumDescriptions": [ + "Resource Type definition for a Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-project.html)" + ] + }, + "Properties": { + "$ref": "resources/aws-devicefarm-project.json" + } + }, + "required": [ + "Type", + "Properties" + ] + }, + { + "$ref": "resource.attributes.schema.json#/definitions/ResourceAttributes" + } + ], + "additionalProperties": false + }, "AWS_DeviceFarm_TestGridProject": { "type": "object", "markdownDescription": "Resource Type definition for a Device Farm TestGrid Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-testgridproject.html)", @@ -43398,9 +44319,9 @@ ], "additionalProperties": false }, - "AWS_GameLiftStreams_Application": { + "AWS_DeviceFarm_NetworkProfile": { "type": "object", - "markdownDescription": "Definition of AWS::GameLiftStreams::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gameliftstreams-application.html)", + "markdownDescription": "Resource Type definition for a Device Farm Network Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-networkprofile.html)", "allOf": [ { "type": "object", @@ -43408,14 +44329,14 @@ "Type": { "type": "string", "enum": [ - "AWS::GameLiftStreams::Application" + "AWS::DeviceFarm::NetworkProfile" ], "markdownEnumDescriptions": [ - "Definition of AWS::GameLiftStreams::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gameliftstreams-application.html)" + "Resource Type definition for a Device Farm Network Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-networkprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-gameliftstreams-application.json" + "$ref": "resources/aws-devicefarm-networkprofile.json" } }, "required": [ @@ -43429,9 +44350,9 @@ ], "additionalProperties": false }, - "AWS_DeviceFarm_InstanceProfile": { + "AWS_EC2_IpPoolRouteTableAssociation": { "type": "object", - "markdownDescription": "Resource Type definition for a Device Farm Instance Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-instanceprofile.html)", + "markdownDescription": "Resource Type definition for AWS::EC2::IpPoolRouteTableAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ippoolroutetableassociation.html)", "allOf": [ { "type": "object", @@ -43439,14 +44360,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DeviceFarm::InstanceProfile" + "AWS::EC2::IpPoolRouteTableAssociation" ], "markdownEnumDescriptions": [ - "Resource Type definition for a Device Farm Instance Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-instanceprofile.html)" + "Resource Type definition for AWS::EC2::IpPoolRouteTableAssociation \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-ippoolroutetableassociation.html)" ] }, "Properties": { - "$ref": "resources/aws-devicefarm-instanceprofile.json" + "$ref": "resources/aws-ec2-ippoolroutetableassociation.json" } }, "required": [ @@ -43460,9 +44381,9 @@ ], "additionalProperties": false }, - "AWS_DeviceFarm_DevicePool": { + "AWS_GameLiftStreams_Application": { "type": "object", - "markdownDescription": "Resource Type definition for a Device Pool for a given Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-devicepool.html)", + "markdownDescription": "Definition of AWS::GameLiftStreams::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gameliftstreams-application.html)", "allOf": [ { "type": "object", @@ -43470,14 +44391,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DeviceFarm::DevicePool" + "AWS::GameLiftStreams::Application" ], "markdownEnumDescriptions": [ - "Resource Type definition for a Device Pool for a given Device Farm Project \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-devicepool.html)" + "Definition of AWS::GameLiftStreams::Application Resource Type \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gameliftstreams-application.html)" ] }, "Properties": { - "$ref": "resources/aws-devicefarm-devicepool.json" + "$ref": "resources/aws-gameliftstreams-application.json" } }, "required": [ @@ -43491,9 +44412,9 @@ ], "additionalProperties": false }, - "AWS_DeviceFarm_VPCEConfiguration": { + "AWS_DeviceFarm_InstanceProfile": { "type": "object", - "markdownDescription": "Resource Type definition for a Device Farm VPCE Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-vpceconfiguration.html)", + "markdownDescription": "Resource Type definition for a Device Farm Instance Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-instanceprofile.html)", "allOf": [ { "type": "object", @@ -43501,14 +44422,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DeviceFarm::VPCEConfiguration" + "AWS::DeviceFarm::InstanceProfile" ], "markdownEnumDescriptions": [ - "Resource Type definition for a Device Farm VPCE Configuration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-vpceconfiguration.html)" + "Resource Type definition for a Device Farm Instance Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-instanceprofile.html)" ] }, "Properties": { - "$ref": "resources/aws-devicefarm-vpceconfiguration.json" + "$ref": "resources/aws-devicefarm-instanceprofile.json" } }, "required": [ @@ -43522,9 +44443,9 @@ ], "additionalProperties": false }, - "AWS_DeviceFarm_NetworkProfile": { + "AWS_IoT_EncryptionConfiguration": { "type": "object", - "markdownDescription": "Resource Type definition for a Device Farm Network Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-networkprofile.html)", + "markdownDescription": "Resource Type definition for AWS::IoT::EncryptionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-encryptionconfiguration.html)", "allOf": [ { "type": "object", @@ -43532,14 +44453,14 @@ "Type": { "type": "string", "enum": [ - "AWS::DeviceFarm::NetworkProfile" + "AWS::IoT::EncryptionConfiguration" ], "markdownEnumDescriptions": [ - "Resource Type definition for a Device Farm Network Profile \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-devicefarm-networkprofile.html)" + "Resource Type definition for AWS::IoT::EncryptionConfiguration \n[Docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-encryptionconfiguration.html)" ] }, "Properties": { - "$ref": "resources/aws-devicefarm-networkprofile.json" + "$ref": "resources/aws-iot-encryptionconfiguration.json" } }, "required": [ @@ -43566,4237 +44487,4327 @@ "$ref": "#/definitions/CustomResource" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_TagOptionAssociation" + "$ref": "#/definitions/AWS_Scheduler_ScheduleGroup" }, { - "$ref": "#/definitions/AWS_ApiGateway_UsagePlanKey" + "$ref": "#/definitions/AWS_IAM_VirtualMFADevice" }, { - "$ref": "#/definitions/AWS_Bedrock_ApplicationInferenceProfile" + "$ref": "#/definitions/AWS_SageMaker_StudioLifecycleConfig" }, { - "$ref": "#/definitions/AWS_CloudFormation_StackSet" + "$ref": "#/definitions/AWS_DataBrew_Project" }, { - "$ref": "#/definitions/AWS_Pipes_Pipe" + "$ref": "#/definitions/AWS_CleanRooms_AnalysisTemplate" }, { - "$ref": "#/definitions/AWS_SystemsManagerSAP_Application" + "$ref": "#/definitions/AWS_Lightsail_StaticIp" }, { - "$ref": "#/definitions/AWS_CleanRooms_AnalysisTemplate" + "$ref": "#/definitions/AWS_LookoutEquipment_InferenceScheduler" }, { - "$ref": "#/definitions/AWS_IdentityStore_GroupMembership" + "$ref": "#/definitions/AWS_ResourceExplorer2_Index" + }, + { + "$ref": "#/definitions/AWS_Bedrock_Blueprint" + }, + { + "$ref": "#/definitions/AWS_Omics_SequenceStore" + }, + { + "$ref": "#/definitions/AWS_DataSync_LocationObjectStorage" + }, + { + "$ref": "#/definitions/AWS_ApplicationAutoScaling_ScalingPolicy" + }, + { + "$ref": "#/definitions/AWS_EMRServerless_Application" + }, + { + "$ref": "#/definitions/AWS_Lightsail_Bucket" + }, + { + "$ref": "#/definitions/AWS_SSMIncidents_ReplicationSet" + }, + { + "$ref": "#/definitions/AWS_CustomerProfiles_ObjectType" }, { "$ref": "#/definitions/AWS_S3_MultiRegionAccessPoint" }, { - "$ref": "#/definitions/AWS_Cognito_UserPool" + "$ref": "#/definitions/AWS_Pinpoint_SMSChannel" }, { - "$ref": "#/definitions/AWS_GuardDuty_Filter" + "$ref": "#/definitions/AWS_DataZone_EnvironmentBlueprintConfiguration" }, { - "$ref": "#/definitions/AWS_SimSpaceWeaver_Simulation" + "$ref": "#/definitions/AWS_Synthetics_Canary" }, { - "$ref": "#/definitions/AWS_MediaPackageV2_ChannelPolicy" + "$ref": "#/definitions/AWS_ApiGatewayV2_RouteResponse" }, { - "$ref": "#/definitions/AWS_Deadline_Fleet" + "$ref": "#/definitions/AWS_Billing_BillingView" }, { - "$ref": "#/definitions/AWS_Greengrass_ConnectorDefinitionVersion" + "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastDomainAssociation" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_Stage" + "$ref": "#/definitions/AWS_IoTTwinMaker_ComponentType" }, { - "$ref": "#/definitions/AWS_EC2_NetworkAcl" + "$ref": "#/definitions/AWS_Lambda_EventSourceMapping" }, { - "$ref": "#/definitions/AWS_Location_GeofenceCollection" + "$ref": "#/definitions/AWS_SageMaker_CodeRepository" }, { - "$ref": "#/definitions/AWS_CodeArtifact_Domain" + "$ref": "#/definitions/AWS_KinesisAnalytics_ApplicationOutput" }, { - "$ref": "#/definitions/AWS_AppStream_AppBlock" + "$ref": "#/definitions/AWS_RDS_DBClusterParameterGroup" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayRouteTable" + "$ref": "#/definitions/AWS_IoTFleetWise_Campaign" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_PortfolioShare" + "$ref": "#/definitions/AWS_Route53RecoveryControl_RoutingControl" }, { - "$ref": "#/definitions/AWS_EC2_VPCEndpointConnectionNotification" + "$ref": "#/definitions/AWS_ECR_Repository" }, { - "$ref": "#/definitions/AWS_EKS_PodIdentityAssociation" + "$ref": "#/definitions/AWS_ApiGateway_Account" }, { - "$ref": "#/definitions/AWS_Greengrass_LoggerDefinitionVersion" + "$ref": "#/definitions/AWS_AppConfig_ExtensionAssociation" }, { - "$ref": "#/definitions/AWS_EKS_AccessEntry" + "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_AttributeGroup" }, { - "$ref": "#/definitions/AWS_PCAConnectorSCEP_Connector" + "$ref": "#/definitions/AWS_CertificateManager_Certificate" }, { - "$ref": "#/definitions/AWS_FSx_Volume" + "$ref": "#/definitions/AWS_EC2_NetworkInterfaceAttachment" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_TargetGroup" + "$ref": "#/definitions/AWS_DataZone_EnvironmentProfile" }, { - "$ref": "#/definitions/AWS_KinesisVideo_Stream" + "$ref": "#/definitions/AWS_VerifiedPermissions_PolicyStore" }, { - "$ref": "#/definitions/AWS_CleanRooms_Collaboration" + "$ref": "#/definitions/AWS_EMR_WALWorkspace" }, { - "$ref": "#/definitions/AWS_PinpointEmail_ConfigurationSetEventDestination" + "$ref": "#/definitions/AWS_ServiceCatalog_CloudFormationProvisionedProduct" }, { - "$ref": "#/definitions/AWS_EC2_VPNConnectionRoute" + "$ref": "#/definitions/AWS_Personalize_Solution" }, { - "$ref": "#/definitions/Alexa_ASK_Skill" + "$ref": "#/definitions/AWS_GameLift_Fleet" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_ListenerCertificate" + "$ref": "#/definitions/AWS_WorkSpacesWeb_SessionLogger" }, { - "$ref": "#/definitions/AWS_EC2_VolumeAttachment" + "$ref": "#/definitions/AWS_IoT_TopicRuleDestination" }, { - "$ref": "#/definitions/AWS_Route53_DNSSEC" + "$ref": "#/definitions/AWS_KendraRanking_ExecutionPlan" }, { - "$ref": "#/definitions/AWS_IAM_SAMLProvider" + "$ref": "#/definitions/AWS_OpsWorks_App" }, { - "$ref": "#/definitions/AWS_WAFv2_WebACL" + "$ref": "#/definitions/AWS_DirectoryService_MicrosoftAD" }, { - "$ref": "#/definitions/AWS_AppMesh_VirtualNode" + "$ref": "#/definitions/AWS_Redshift_ScheduledAction" }, { - "$ref": "#/definitions/AWS_SSMIncidents_ReplicationSet" + "$ref": "#/definitions/AWS_EFS_MountTarget" }, { - "$ref": "#/definitions/AWS_Logs_LogGroup" + "$ref": "#/definitions/AWS_AppSync_Api" }, { - "$ref": "#/definitions/AWS_PinpointEmail_Identity" + "$ref": "#/definitions/AWS_MediaStore_Container" }, { - "$ref": "#/definitions/AWS_SageMaker_EndpointConfig" + "$ref": "#/definitions/AWS_Route53Resolver_ResolverConfig" }, { - "$ref": "#/definitions/AWS_VpcLattice_AuthPolicy" + "$ref": "#/definitions/AWS_AutoScaling_AutoScalingGroup" }, { - "$ref": "#/definitions/AWS_APS_RuleGroupsNamespace" + "$ref": "#/definitions/AWS_AutoScaling_LifecycleHook" }, { - "$ref": "#/definitions/AWS_Glue_DataCatalogEncryptionSettings" + "$ref": "#/definitions/AWS_SSO_PermissionSet" }, { - "$ref": "#/definitions/AWS_EFS_AccessPoint" + "$ref": "#/definitions/AWS_AppConfig_HostedConfigurationVersion" }, { - "$ref": "#/definitions/AWS_IoTTwinMaker_ComponentType" + "$ref": "#/definitions/AWS_CleanRooms_IdMappingTable" }, { - "$ref": "#/definitions/AWS_OpsWorksCM_Server" + "$ref": "#/definitions/AWS_ApiGateway_UsagePlan" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_Authorizer" + "$ref": "#/definitions/AWS_ServiceCatalog_ServiceActionAssociation" }, { - "$ref": "#/definitions/AWS_RoboMaker_RobotApplicationVersion" + "$ref": "#/definitions/AWS_EKS_IdentityProviderConfig" }, { - "$ref": "#/definitions/AWS_QBusiness_Retriever" + "$ref": "#/definitions/AWS_ConnectCampaignsV2_Campaign" }, { - "$ref": "#/definitions/AWS_EKS_FargateProfile" + "$ref": "#/definitions/AWS_CloudWatch_AnomalyDetector" }, { - "$ref": "#/definitions/AWS_Config_AggregationAuthorization" + "$ref": "#/definitions/AWS_Wisdom_AIGuardrail" }, { - "$ref": "#/definitions/AWS_EC2_LaunchTemplate" + "$ref": "#/definitions/AWS_Pinpoint_PushTemplate" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_CloudFormationProduct" + "$ref": "#/definitions/AWS_CloudFormation_Stack" }, { - "$ref": "#/definitions/AWS_NetworkManager_VpcAttachment" + "$ref": "#/definitions/AWS_PinpointEmail_DedicatedIpPool" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_LoadBalancer" + "$ref": "#/definitions/AWS_SES_ReceiptRuleSet" }, { - "$ref": "#/definitions/AWS_AutoScaling_WarmPool" + "$ref": "#/definitions/AWS_EC2_TransitGatewayRouteTable" }, { - "$ref": "#/definitions/AWS_SSO_Instance" + "$ref": "#/definitions/AWS_Greengrass_ConnectorDefinitionVersion" }, { - "$ref": "#/definitions/AWS_IAM_ServiceLinkedRole" + "$ref": "#/definitions/AWS_FinSpace_Environment" }, { - "$ref": "#/definitions/AWS_MSK_Configuration" + "$ref": "#/definitions/AWS_ACMPCA_CertificateAuthorityActivation" }, { - "$ref": "#/definitions/AWS_PCAConnectorAD_Template" + "$ref": "#/definitions/AWS_PCS_Cluster" }, { - "$ref": "#/definitions/AWS_InspectorV2_Filter" + "$ref": "#/definitions/AWS_Personalize_DatasetGroup" }, { - "$ref": "#/definitions/AWS_ElastiCache_ParameterGroup" + "$ref": "#/definitions/AWS_Config_ConfigurationRecorder" }, { - "$ref": "#/definitions/AWS_SecurityLake_DataLake" + "$ref": "#/definitions/AWS_Connect_SecurityKey" }, { - "$ref": "#/definitions/AWS_EventSchemas_Registry" + "$ref": "#/definitions/AWS_GameLift_ContainerGroupDefinition" }, { - "$ref": "#/definitions/AWS_KinesisAnalytics_ApplicationOutput" + "$ref": "#/definitions/AWS_NetworkManager_Device" }, { - "$ref": "#/definitions/AWS_DataBrew_Dataset" + "$ref": "#/definitions/AWS_WAFv2_RuleGroup" }, { - "$ref": "#/definitions/AWS_PinpointEmail_ConfigurationSet" + "$ref": "#/definitions/AWS_SageMaker_PartnerApp" }, { - "$ref": "#/definitions/AWS_S3ObjectLambda_AccessPointPolicy" + "$ref": "#/definitions/AWS_Connect_QuickConnect" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_IdentityProvider" + "$ref": "#/definitions/AWS_DataZone_ProjectMembership" }, { - "$ref": "#/definitions/AWS_S3Express_AccessPoint" + "$ref": "#/definitions/AWS_PaymentCryptography_Alias" }, { - "$ref": "#/definitions/AWS_ApiGateway_BasePathMapping" + "$ref": "#/definitions/AWS_MediaConnect_BridgeOutput" }, { - "$ref": "#/definitions/AWS_DataSync_LocationObjectStorage" + "$ref": "#/definitions/AWS_SecurityHub_HubV2" }, { - "$ref": "#/definitions/AWS_SecurityHub_ProductSubscription" + "$ref": "#/definitions/AWS_RoboMaker_RobotApplication" }, { - "$ref": "#/definitions/AWS_IoTThingsGraph_FlowTemplate" + "$ref": "#/definitions/AWS_ResourceExplorer2_View" }, { - "$ref": "#/definitions/AWS_DataSync_LocationSMB" + "$ref": "#/definitions/AWS_Timestream_ScheduledQuery" }, { - "$ref": "#/definitions/AWS_AppConfig_DeploymentStrategy" + "$ref": "#/definitions/AWS_MediaConvert_JobTemplate" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_DataProtectionSettings" + "$ref": "#/definitions/AWS_AmplifyUIBuilder_Component" }, { - "$ref": "#/definitions/AWS_Organizations_Policy" + "$ref": "#/definitions/AWS_Logs_LogAnomalyDetector" }, { - "$ref": "#/definitions/AWS_GuardDuty_PublishingDestination" + "$ref": "#/definitions/AWS_ARCZonalShift_AutoshiftObserverNotificationStatus" }, { - "$ref": "#/definitions/AWS_Notifications_ManagedNotificationAdditionalChannelAssociation" + "$ref": "#/definitions/AWS_ApiGatewayV2_ApiGatewayManagedOverrides" }, { - "$ref": "#/definitions/AWS_Logs_Integration" + "$ref": "#/definitions/AWS_SageMaker_Domain" }, { - "$ref": "#/definitions/AWS_SNS_TopicInlinePolicy" + "$ref": "#/definitions/AWS_S3_AccessGrant" }, { - "$ref": "#/definitions/AWS_Wisdom_AIAgentVersion" + "$ref": "#/definitions/AWS_SystemsManagerSAP_Application" }, { - "$ref": "#/definitions/AWS_ApiGateway_BasePathMappingV2" + "$ref": "#/definitions/AWS_VpcLattice_ResourceGateway" }, { - "$ref": "#/definitions/AWS_KafkaConnect_WorkerConfiguration" + "$ref": "#/definitions/AWS_DynamoDB_GlobalTable" }, { - "$ref": "#/definitions/AWS_ECS_Service" + "$ref": "#/definitions/AWS_S3Outposts_AccessPoint" }, { - "$ref": "#/definitions/AWS_CodeCommit_Repository" + "$ref": "#/definitions/AWS_CloudFormation_StackSet" }, { - "$ref": "#/definitions/AWS_AmazonMQ_Broker" + "$ref": "#/definitions/AWS_Config_AggregationAuthorization" }, { - "$ref": "#/definitions/AWS_Route53_RecordSet" + "$ref": "#/definitions/AWS_CloudFormation_HookDefaultVersion" }, { - "$ref": "#/definitions/AWS_LakeFormation_Tag" + "$ref": "#/definitions/AWS_Glue_Connection" }, { - "$ref": "#/definitions/AWS_Glue_Partition" + "$ref": "#/definitions/AWS_KMS_Alias" }, { - "$ref": "#/definitions/AWS_EC2_SnapshotBlockPublicAccess" + "$ref": "#/definitions/AWS_Connect_UserHierarchyGroup" }, { - "$ref": "#/definitions/AWS_IoTWireless_WirelessDevice" + "$ref": "#/definitions/AWS_KinesisVideo_SignalingChannel" }, { - "$ref": "#/definitions/AWS_Backup_Framework" + "$ref": "#/definitions/AWS_Transfer_User" }, { - "$ref": "#/definitions/AWS_EC2_PrefixList" + "$ref": "#/definitions/AWS_VpcLattice_TargetGroup" }, { - "$ref": "#/definitions/AWS_MediaLive_SdiSource" + "$ref": "#/definitions/AWS_MediaLive_Network" }, { - "$ref": "#/definitions/AWS_RoboMaker_Fleet" + "$ref": "#/definitions/AWS_Lambda_LayerVersionPermission" + }, + { + "$ref": "#/definitions/AWS_CE_AnomalyMonitor" + }, + { + "$ref": "#/definitions/AWS_ApiGateway_Method" + }, + { + "$ref": "#/definitions/AWS_IoT_ProvisioningTemplate" }, { "$ref": "#/definitions/AWS_Bedrock_KnowledgeBase" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_ApiMapping" + "$ref": "#/definitions/AWS_CodeGuruReviewer_RepositoryAssociation" }, { - "$ref": "#/definitions/AWS_CodeGuruProfiler_ProfilingGroup" + "$ref": "#/definitions/AWS_Evidently_Experiment" }, { - "$ref": "#/definitions/AWS_SageMaker_CodeRepository" + "$ref": "#/definitions/AWS_RefactorSpaces_Application" }, { - "$ref": "#/definitions/AWS_DataZone_Domain" + "$ref": "#/definitions/AWS_WAF_Rule" }, { - "$ref": "#/definitions/AWS_SageMaker_Endpoint" + "$ref": "#/definitions/AWS_EC2_NetworkAclEntry" }, { - "$ref": "#/definitions/AWS_AppSync_GraphQLSchema" + "$ref": "#/definitions/AWS_CloudTrail_Channel" }, { - "$ref": "#/definitions/AWS_CleanRooms_ConfiguredTableAssociation" + "$ref": "#/definitions/AWS_KinesisAnalyticsV2_ApplicationReferenceDataSource" }, { - "$ref": "#/definitions/AWS_ECS_TaskSet" + "$ref": "#/definitions/AWS_QuickSight_Analysis" }, { - "$ref": "#/definitions/AWS_MediaPackage_PackagingConfiguration" + "$ref": "#/definitions/AWS_MediaTailor_Channel" }, { - "$ref": "#/definitions/AWS_DataZone_GroupProfile" + "$ref": "#/definitions/AWS_OpenSearchService_Application" }, { - "$ref": "#/definitions/AWS_ImageBuilder_ContainerRecipe" + "$ref": "#/definitions/AWS_OpsWorks_ElasticLoadBalancerAttachment" }, { - "$ref": "#/definitions/AWS_Wisdom_AssistantAssociation" + "$ref": "#/definitions/AWS_Config_ConfigurationAggregator" }, { - "$ref": "#/definitions/AWS_Wisdom_AIPrompt" + "$ref": "#/definitions/AWS_ECS_Service" + }, + { + "$ref": "#/definitions/AWS_DataSync_LocationEFS" + }, + { + "$ref": "#/definitions/AWS_Greengrass_SubscriptionDefinitionVersion" + }, + { + "$ref": "#/definitions/AWS_SSM_MaintenanceWindowTask" + }, + { + "$ref": "#/definitions/AWS_MediaPackage_PackagingGroup" + }, + { + "$ref": "#/definitions/AWS_Cloud9_EnvironmentEC2" + }, + { + "$ref": "#/definitions/AWS_Glue_Partition" + }, + { + "$ref": "#/definitions/AWS_IoT_Certificate" + }, + { + "$ref": "#/definitions/AWS_Athena_WorkGroup" + }, + { + "$ref": "#/definitions/AWS_NetworkManager_Link" + }, + { + "$ref": "#/definitions/AWS_QBusiness_Index" + }, + { + "$ref": "#/definitions/AWS_EC2_NetworkInterface" + }, + { + "$ref": "#/definitions/AWS_MediaTailor_PlaybackConfiguration" + }, + { + "$ref": "#/definitions/AWS_DataSync_LocationS3" + }, + { + "$ref": "#/definitions/AWS_OpsWorks_Layer" + }, + { + "$ref": "#/definitions/AWS_RoboMaker_Fleet" + }, + { + "$ref": "#/definitions/AWS_EntityResolution_SchemaMapping" + }, + { + "$ref": "#/definitions/AWS_EC2_ClientVpnTargetNetworkAssociation" + }, + { + "$ref": "#/definitions/AWS_IoTWireless_PartnerAccount" + }, + { + "$ref": "#/definitions/AWS_ResilienceHub_ResiliencyPolicy" }, { - "$ref": "#/definitions/AWS_AppSync_DataSource" + "$ref": "#/definitions/AWS_IoT_Policy" }, { - "$ref": "#/definitions/AWS_AppSync_ApiCache" + "$ref": "#/definitions/AWS_DocDB_DBSubnetGroup" }, { - "$ref": "#/definitions/AWS_Transfer_WebApp" + "$ref": "#/definitions/AWS_SageMaker_Cluster" }, { - "$ref": "#/definitions/AWS_GameLift_MatchmakingConfiguration" + "$ref": "#/definitions/AWS_AmazonMQ_Configuration" }, { - "$ref": "#/definitions/AWS_Connect_View" + "$ref": "#/definitions/AWS_SNS_Subscription" }, { - "$ref": "#/definitions/AWS_Redshift_EndpointAuthorization" + "$ref": "#/definitions/AWS_WorkSpacesWeb_BrowserSettings" }, { - "$ref": "#/definitions/AWS_IoT_CustomMetric" + "$ref": "#/definitions/AWS_Greengrass_Group" }, { - "$ref": "#/definitions/AWS_SageMaker_ModelBiasJobDefinition" + "$ref": "#/definitions/AWS_Cognito_UserPoolRiskConfigurationAttachment" }, { - "$ref": "#/definitions/AWS_CloudFormation_CustomResource" + "$ref": "#/definitions/AWS_EMR_InstanceGroupConfig" }, { - "$ref": "#/definitions/AWS_CloudFront_KeyGroup" + "$ref": "#/definitions/AWS_CloudFront_ContinuousDeploymentPolicy" }, { - "$ref": "#/definitions/AWS_Bedrock_DataSource" + "$ref": "#/definitions/AWS_ServiceCatalog_StackSetConstraint" }, { - "$ref": "#/definitions/AWS_EC2_NetworkInterfacePermission" + "$ref": "#/definitions/AWS_WorkSpacesWeb_DataProtectionSettings" }, { - "$ref": "#/definitions/AWS_EC2_EC2Fleet" + "$ref": "#/definitions/AWS_RoboMaker_RobotApplicationVersion" }, { - "$ref": "#/definitions/AWS_SES_MailManagerAddonInstance" + "$ref": "#/definitions/AWS_CloudFront_Distribution" }, { - "$ref": "#/definitions/AWS_SecretsManager_Secret" + "$ref": "#/definitions/AWS_SES_ContactList" }, { - "$ref": "#/definitions/AWS_Grafana_Workspace" + "$ref": "#/definitions/AWS_ElastiCache_UserGroup" }, { - "$ref": "#/definitions/AWS_ApiGateway_DomainNameV2" + "$ref": "#/definitions/AWS_Pinpoint_APNSVoipSandboxChannel" }, { - "$ref": "#/definitions/AWS_Events_EventBusPolicy" + "$ref": "#/definitions/AWS_DocDBElastic_Cluster" }, { - "$ref": "#/definitions/AWS_ApiGateway_Model" + "$ref": "#/definitions/AWS_Lambda_CodeSigningConfig" }, { - "$ref": "#/definitions/AWS_AppStream_ApplicationEntitlementAssociation" + "$ref": "#/definitions/AWS_Connect_ApprovedOrigin" }, { - "$ref": "#/definitions/AWS_OpsWorks_UserProfile" + "$ref": "#/definitions/AWS_DMS_DataProvider" }, { - "$ref": "#/definitions/AWS_Scheduler_ScheduleGroup" + "$ref": "#/definitions/AWS_Config_ConformancePack" }, { - "$ref": "#/definitions/AWS_CloudFront_OriginAccessControl" + "$ref": "#/definitions/AWS_Greengrass_ResourceDefinitionVersion" }, { - "$ref": "#/definitions/AWS_ServiceDiscovery_PrivateDnsNamespace" + "$ref": "#/definitions/AWS_ApiGatewayV2_Api" }, { - "$ref": "#/definitions/AWS_Deadline_StorageProfile" + "$ref": "#/definitions/AWS_Bedrock_Prompt" }, { - "$ref": "#/definitions/AWS_DSQL_Cluster" + "$ref": "#/definitions/AWS_Redshift_ClusterSubnetGroup" }, { - "$ref": "#/definitions/AWS_CodeDeploy_Application" + "$ref": "#/definitions/AWS_Notifications_ManagedNotificationAdditionalChannelAssociation" }, { - "$ref": "#/definitions/AWS_WorkSpaces_Workspace" + "$ref": "#/definitions/AWS_WAF_IPSet" }, { - "$ref": "#/definitions/AWS_SSM_MaintenanceWindowTarget" + "$ref": "#/definitions/AWS_ECS_PrimaryTaskSet" }, { - "$ref": "#/definitions/AWS_Batch_JobQueue" + "$ref": "#/definitions/AWS_LicenseManager_License" }, { - "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_AttributeGroup" + "$ref": "#/definitions/AWS_IAM_RolePolicy" }, { - "$ref": "#/definitions/AWS_GameLift_Build" + "$ref": "#/definitions/AWS_Cognito_UserPoolUserToGroupAttachment" }, { - "$ref": "#/definitions/AWS_MediaPackage_Channel" + "$ref": "#/definitions/AWS_EC2_RouteServerPeer" }, { - "$ref": "#/definitions/AWS_EC2_TrafficMirrorFilterRule" + "$ref": "#/definitions/AWS_IoTTwinMaker_Workspace" }, { - "$ref": "#/definitions/AWS_Logs_LogStream" + "$ref": "#/definitions/AWS_MemoryDB_User" }, { - "$ref": "#/definitions/AWS_WAFRegional_WebACL" + "$ref": "#/definitions/AWS_ElastiCache_ServerlessCache" }, { - "$ref": "#/definitions/AWS_AmplifyUIBuilder_Form" + "$ref": "#/definitions/AWS_EC2_VPCCidrBlock" }, { - "$ref": "#/definitions/AWS_RDS_DBSecurityGroupIngress" + "$ref": "#/definitions/AWS_Synthetics_Group" }, { - "$ref": "#/definitions/AWS_AppFlow_Flow" + "$ref": "#/definitions/AWS_DataBrew_Recipe" }, { - "$ref": "#/definitions/AWS_IVS_EncoderConfiguration" + "$ref": "#/definitions/AWS_Glue_TableOptimizer" }, { - "$ref": "#/definitions/AWS_MediaLive_ChannelPlacementGroup" + "$ref": "#/definitions/AWS_Events_Endpoint" }, { - "$ref": "#/definitions/AWS_EC2_InstanceConnectEndpoint" + "$ref": "#/definitions/AWS_Proton_ServiceTemplate" }, { - "$ref": "#/definitions/AWS_Bedrock_Flow" + "$ref": "#/definitions/AWS_IoTWireless_ServiceProfile" }, { - "$ref": "#/definitions/AWS_XRay_Group" + "$ref": "#/definitions/AWS_Connect_User" }, { - "$ref": "#/definitions/AWS_Connect_UserHierarchyGroup" + "$ref": "#/definitions/AWS_DocDB_DBCluster" }, { - "$ref": "#/definitions/AWS_CloudFront_CloudFrontOriginAccessIdentity" + "$ref": "#/definitions/AWS_EVS_Environment" }, { - "$ref": "#/definitions/AWS_MediaLive_Network" + "$ref": "#/definitions/AWS_DevOpsGuru_ResourceCollection" }, { - "$ref": "#/definitions/AWS_EC2_DHCPOptions" + "$ref": "#/definitions/AWS_ApiGatewayV2_ApiMapping" }, { - "$ref": "#/definitions/AWS_SageMaker_App" + "$ref": "#/definitions/AWS_EC2_Volume" }, { - "$ref": "#/definitions/AWS_SDB_Domain" + "$ref": "#/definitions/AWS_ServiceCatalog_LaunchRoleConstraint" }, { - "$ref": "#/definitions/AWS_Panorama_ApplicationInstance" + "$ref": "#/definitions/AWS_SageMaker_DataQualityJobDefinition" }, { - "$ref": "#/definitions/AWS_WAFRegional_XssMatchSet" + "$ref": "#/definitions/AWS_EFS_AccessPoint" }, { - "$ref": "#/definitions/AWS_Greengrass_ResourceDefinition" + "$ref": "#/definitions/AWS_AppMesh_VirtualNode" }, { - "$ref": "#/definitions/AWS_CodeBuild_Fleet" + "$ref": "#/definitions/AWS_CloudFormation_ModuleVersion" }, { - "$ref": "#/definitions/AWS_RDS_DBShardGroup" + "$ref": "#/definitions/AWS_BillingConductor_PricingRule" }, { - "$ref": "#/definitions/AWS_Cognito_IdentityPoolRoleAttachment" + "$ref": "#/definitions/AWS_Comprehend_DocumentClassifier" }, { - "$ref": "#/definitions/AWS_FIS_ExperimentTemplate" + "$ref": "#/definitions/AWS_CloudFormation_GuardHook" }, { - "$ref": "#/definitions/AWS_SageMaker_DataQualityJobDefinition" + "$ref": "#/definitions/AWS_IoTAnalytics_Datastore" }, { - "$ref": "#/definitions/AWS_DataSync_Agent" + "$ref": "#/definitions/AWS_Wisdom_AIAgent" }, { - "$ref": "#/definitions/AWS_Lambda_EventInvokeConfig" + "$ref": "#/definitions/AWS_ACMPCA_CertificateAuthority" }, { - "$ref": "#/definitions/AWS_DMS_Certificate" + "$ref": "#/definitions/AWS_MediaLive_Multiplex" }, { - "$ref": "#/definitions/AWS_Neptune_DBInstance" + "$ref": "#/definitions/AWS_Lex_BotVersion" }, { - "$ref": "#/definitions/AWS_Cognito_LogDeliveryConfiguration" + "$ref": "#/definitions/AWS_Bedrock_GuardrailVersion" }, { - "$ref": "#/definitions/AWS_ECS_TaskDefinition" + "$ref": "#/definitions/AWS_DataSync_LocationSMB" }, { - "$ref": "#/definitions/AWS_MediaPackage_PackagingGroup" + "$ref": "#/definitions/AWS_ApiGateway_UsagePlanKey" }, { - "$ref": "#/definitions/AWS_Route53RecoveryControl_SafetyRule" + "$ref": "#/definitions/AWS_Pinpoint_APNSSandboxChannel" }, { - "$ref": "#/definitions/AWS_RDS_DBSubnetGroup" + "$ref": "#/definitions/AWS_LakeFormation_Resource" }, { - "$ref": "#/definitions/AWS_Connect_PhoneNumber" + "$ref": "#/definitions/AWS_IoT_Thing" }, { - "$ref": "#/definitions/AWS_FMS_ResourceSet" + "$ref": "#/definitions/AWS_Kinesis_StreamConsumer" }, { - "$ref": "#/definitions/AWS_ServiceDiscovery_Service" + "$ref": "#/definitions/AWS_Kinesis_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_IoT_ThingType" + "$ref": "#/definitions/AWS_IoT_SoftwarePackage" }, { - "$ref": "#/definitions/AWS_Lambda_LayerVersionPermission" + "$ref": "#/definitions/AWS_Logs_LogStream" }, { - "$ref": "#/definitions/AWS_QuickSight_Theme" + "$ref": "#/definitions/AWS_CleanRooms_Collaboration" }, { - "$ref": "#/definitions/AWS_Pinpoint_APNSVoipSandboxChannel" + "$ref": "#/definitions/AWS_IoTSiteWise_Dashboard" }, { - "$ref": "#/definitions/AWS_M2_Deployment" + "$ref": "#/definitions/AWS_DataSync_LocationFSxLustre" }, { - "$ref": "#/definitions/AWS_SSM_Parameter" + "$ref": "#/definitions/AWS_EFS_FileSystem" }, { - "$ref": "#/definitions/AWS_EC2_ClientVpnRoute" + "$ref": "#/definitions/AWS_QuickSight_RefreshSchedule" }, { - "$ref": "#/definitions/AWS_IAM_Role" + "$ref": "#/definitions/AWS_Connect_IntegrationAssociation" }, { - "$ref": "#/definitions/AWS_QBusiness_Application" + "$ref": "#/definitions/AWS_EC2_EnclaveCertificateIamRoleAssociation" }, { - "$ref": "#/definitions/AWS_EC2_RouteServerEndpoint" + "$ref": "#/definitions/AWS_MediaLive_EventBridgeRuleTemplate" }, { - "$ref": "#/definitions/AWS_CodeStarNotifications_NotificationRule" + "$ref": "#/definitions/AWS_IAM_Role" }, { - "$ref": "#/definitions/AWS_EC2_FlowLog" + "$ref": "#/definitions/AWS_KinesisVideo_Stream" }, { - "$ref": "#/definitions/AWS_VerifiedPermissions_PolicyStore" + "$ref": "#/definitions/AWS_Connect_RoutingProfile" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_DomainName" + "$ref": "#/definitions/AWS_VpcLattice_Service" }, { - "$ref": "#/definitions/AWS_Pinpoint_SmsTemplate" + "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_TrustStoreRevocation" }, { - "$ref": "#/definitions/AWS_Redshift_EventSubscription" + "$ref": "#/definitions/AWS_ApiGateway_Stage" }, { - "$ref": "#/definitions/AWS_PCAConnectorAD_Connector" + "$ref": "#/definitions/AWS_BillingConductor_BillingGroup" }, { - "$ref": "#/definitions/AWS_RedshiftServerless_Namespace" + "$ref": "#/definitions/AWS_ImageBuilder_Workflow" }, { - "$ref": "#/definitions/AWS_EC2_RouteServerPropagation" + "$ref": "#/definitions/AWS_Pinpoint_EmailTemplate" }, { - "$ref": "#/definitions/AWS_ECR_RepositoryCreationTemplate" + "$ref": "#/definitions/AWS_EC2_TransitGatewayAttachment" }, { - "$ref": "#/definitions/AWS_Glue_SchemaVersionMetadata" + "$ref": "#/definitions/AWS_CloudFront_Function" }, { - "$ref": "#/definitions/AWS_Config_DeliveryChannel" + "$ref": "#/definitions/AWS_Pinpoint_App" }, { - "$ref": "#/definitions/AWS_GuardDuty_Member" + "$ref": "#/definitions/AWS_RedshiftServerless_Snapshot" }, { - "$ref": "#/definitions/AWS_SecurityHub_AutomationRule" + "$ref": "#/definitions/AWS_ApiGateway_Authorizer" }, { - "$ref": "#/definitions/AWS_Route53Resolver_FirewallRuleGroup" + "$ref": "#/definitions/AWS_Pinpoint_Campaign" }, { - "$ref": "#/definitions/AWS_QuickSight_Template" + "$ref": "#/definitions/AWS_CloudFront_OriginAccessControl" }, { - "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_AttributeGroupAssociation" + "$ref": "#/definitions/AWS_EC2_EIP" }, { - "$ref": "#/definitions/AWS_Notifications_NotificationHub" + "$ref": "#/definitions/AWS_IAM_AccessKey" }, { - "$ref": "#/definitions/AWS_S3_BucketPolicy" + "$ref": "#/definitions/AWS_Personalize_Dataset" }, { - "$ref": "#/definitions/AWS_MediaPackage_Asset" + "$ref": "#/definitions/AWS_GuardDuty_MalwareProtectionPlan" }, { - "$ref": "#/definitions/AWS_EMR_Cluster" + "$ref": "#/definitions/AWS_Omics_AnnotationStore" }, { - "$ref": "#/definitions/AWS_GameLift_Script" + "$ref": "#/definitions/AWS_Connect_ContactFlowModule" }, { - "$ref": "#/definitions/AWS_Connect_HoursOfOperation" + "$ref": "#/definitions/AWS_AppTest_TestCase" }, { - "$ref": "#/definitions/AWS_Shield_ProtectionGroup" + "$ref": "#/definitions/AWS_CloudWatch_MetricStream" }, { - "$ref": "#/definitions/AWS_LookoutEquipment_InferenceScheduler" + "$ref": "#/definitions/AWS_Comprehend_Flywheel" }, { - "$ref": "#/definitions/AWS_Connect_RoutingProfile" + "$ref": "#/definitions/AWS_Wisdom_AIPromptVersion" }, { - "$ref": "#/definitions/AWS_EKS_Nodegroup" + "$ref": "#/definitions/AWS_SecretsManager_SecretTargetAttachment" }, { - "$ref": "#/definitions/AWS_RDS_CustomDBEngineVersion" + "$ref": "#/definitions/AWS_ApiGatewayV2_RoutingRule" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayRoute" + "$ref": "#/definitions/AWS_Logs_LogGroup" }, { - "$ref": "#/definitions/AWS_Transfer_Certificate" + "$ref": "#/definitions/AWS_Organizations_OrganizationalUnit" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_UserSettings" + "$ref": "#/definitions/AWS_Signer_ProfilePermission" }, { - "$ref": "#/definitions/AWS_EC2_VPCEndpointServicePermissions" + "$ref": "#/definitions/AWS_KinesisAnalytics_ApplicationReferenceDataSource" }, { - "$ref": "#/definitions/AWS_IoTTwinMaker_SyncJob" + "$ref": "#/definitions/AWS_EC2_IPAMResourceDiscovery" }, { - "$ref": "#/definitions/AWS_IoTTwinMaker_Workspace" + "$ref": "#/definitions/AWS_CodeArtifact_Repository" }, { - "$ref": "#/definitions/AWS_Greengrass_FunctionDefinition" + "$ref": "#/definitions/AWS_AppFlow_ConnectorProfile" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_LaunchTemplateConstraint" + "$ref": "#/definitions/AWS_IoTWireless_Destination" }, { - "$ref": "#/definitions/AWS_DMS_MigrationProject" + "$ref": "#/definitions/AWS_IoT_FleetMetric" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_TrustStoreRevocation" + "$ref": "#/definitions/AWS_RDS_DBProxyTargetGroup" }, { - "$ref": "#/definitions/AWS_EC2_VPNGatewayRoutePropagation" + "$ref": "#/definitions/AWS_Greengrass_LoggerDefinitionVersion" }, { - "$ref": "#/definitions/AWS_RefactorSpaces_Route" + "$ref": "#/definitions/AWS_RDS_DBSecurityGroup" }, { - "$ref": "#/definitions/AWS_PaymentCryptography_Key" + "$ref": "#/definitions/AWS_DataSync_LocationFSxOpenZFS" }, { - "$ref": "#/definitions/AWS_Events_Endpoint" + "$ref": "#/definitions/AWS_PCS_Queue" }, { - "$ref": "#/definitions/AWS_Wisdom_MessageTemplateVersion" + "$ref": "#/definitions/AWS_IoTFleetWise_Vehicle" }, { - "$ref": "#/definitions/AWS_IoT_ResourceSpecificLogging" + "$ref": "#/definitions/AWS_LakeFormation_Tag" }, { - "$ref": "#/definitions/AWS_Signer_SigningProfile" + "$ref": "#/definitions/AWS_Omics_Workflow" }, { - "$ref": "#/definitions/AWS_EC2_CapacityReservationFleet" + "$ref": "#/definitions/AWS_SageMaker_UserProfile" }, { - "$ref": "#/definitions/AWS_EC2_SecurityGroupVpcAssociation" + "$ref": "#/definitions/AWS_Route53Resolver_ResolverQueryLoggingConfig" }, { - "$ref": "#/definitions/AWS_CloudWatch_AnomalyDetector" + "$ref": "#/definitions/AWS_SSM_MaintenanceWindow" }, { - "$ref": "#/definitions/AWS_AppStream_DirectoryConfig" + "$ref": "#/definitions/AWS_CodeDeploy_DeploymentGroup" }, { - "$ref": "#/definitions/AWS_CloudFront_DistributionTenant" + "$ref": "#/definitions/AWS_SES_ReceiptFilter" }, { - "$ref": "#/definitions/AWS_ImageBuilder_Image" + "$ref": "#/definitions/AWS_Lambda_Alias" }, { - "$ref": "#/definitions/AWS_Detective_Graph" + "$ref": "#/definitions/AWS_IAM_UserToGroupAddition" }, { - "$ref": "#/definitions/AWS_AutoScaling_LaunchConfiguration" + "$ref": "#/definitions/AWS_SageMaker_InferenceComponent" }, { - "$ref": "#/definitions/AWS_EC2_VPC" + "$ref": "#/definitions/AWS_CodeBuild_ReportGroup" }, { - "$ref": "#/definitions/AWS_Logs_AccountPolicy" + "$ref": "#/definitions/AWS_S3Outposts_BucketPolicy" }, { - "$ref": "#/definitions/AWS_Chatbot_MicrosoftTeamsChannelConfiguration" + "$ref": "#/definitions/AWS_OpsWorks_Volume" }, { - "$ref": "#/definitions/AWS_IoT_ProvisioningTemplate" + "$ref": "#/definitions/AWS_ImageBuilder_Component" }, { - "$ref": "#/definitions/AWS_B2BI_Partnership" + "$ref": "#/definitions/AWS_EC2_IPAMResourceDiscoveryAssociation" }, { - "$ref": "#/definitions/AWS_IoTFleetWise_ModelManifest" + "$ref": "#/definitions/AWS_WAFRegional_Rule" }, { - "$ref": "#/definitions/AWS_MediaTailor_Channel" + "$ref": "#/definitions/AWS_CodePipeline_Webhook" }, { - "$ref": "#/definitions/AWS_VpcLattice_ServiceNetworkServiceAssociation" + "$ref": "#/definitions/AWS_ServiceDiscovery_Service" }, { - "$ref": "#/definitions/AWS_PCAConnectorAD_ServicePrincipalName" + "$ref": "#/definitions/AWS_SQS_Queue" }, { - "$ref": "#/definitions/AWS_NetworkFirewall_TLSInspectionConfiguration" + "$ref": "#/definitions/AWS_MemoryDB_ParameterGroup" }, { - "$ref": "#/definitions/AWS_Omics_SequenceStore" + "$ref": "#/definitions/AWS_IoT_Dimension" }, { - "$ref": "#/definitions/AWS_AppStream_Entitlement" + "$ref": "#/definitions/AWS_S3_StorageLensGroup" }, { - "$ref": "#/definitions/AWS_MediaLive_Multiplexprogram" + "$ref": "#/definitions/AWS_AppStream_ApplicationEntitlementAssociation" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_AssetModel" + "$ref": "#/definitions/AWS_AutoScaling_WarmPool" }, { - "$ref": "#/definitions/AWS_EKS_Addon" + "$ref": "#/definitions/AWS_IAM_User" }, { - "$ref": "#/definitions/AWS_DocDB_DBSubnetGroup" + "$ref": "#/definitions/AWS_DataSync_LocationFSxONTAP" }, { - "$ref": "#/definitions/AWS_EKS_Cluster" + "$ref": "#/definitions/AWS_RDS_CustomDBEngineVersion" }, { - "$ref": "#/definitions/AWS_SSMQuickSetup_ConfigurationManager" + "$ref": "#/definitions/AWS_SimSpaceWeaver_Simulation" }, { - "$ref": "#/definitions/AWS_Omics_Workflow" + "$ref": "#/definitions/AWS_EC2_VPCEndpoint" }, { - "$ref": "#/definitions/AWS_MWAA_Environment" + "$ref": "#/definitions/AWS_EC2_TransitGatewayPeeringAttachment" }, { - "$ref": "#/definitions/AWS_Neptune_DBSubnetGroup" + "$ref": "#/definitions/AWS_DataZone_Owner" }, { - "$ref": "#/definitions/AWS_CloudFront_CachePolicy" + "$ref": "#/definitions/AWS_EC2_Host" }, { - "$ref": "#/definitions/AWS_Oam_Link" + "$ref": "#/definitions/AWS_Batch_ComputeEnvironment" }, { - "$ref": "#/definitions/AWS_MediaConnect_Bridge" + "$ref": "#/definitions/AWS_WorkSpaces_Workspace" }, { - "$ref": "#/definitions/AWS_XRay_SamplingRule" + "$ref": "#/definitions/AWS_SecurityHub_Standard" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_Portfolio" + "$ref": "#/definitions/AWS_IoT_CustomMetric" }, { - "$ref": "#/definitions/AWS_SageMaker_Space" + "$ref": "#/definitions/AWS_EKS_Nodegroup" }, { - "$ref": "#/definitions/AWS_Bedrock_PromptVersion" + "$ref": "#/definitions/AWS_NetworkManager_CustomerGatewayAssociation" }, { - "$ref": "#/definitions/AWS_AmplifyUIBuilder_Component" + "$ref": "#/definitions/AWS_SES_MailManagerTrafficPolicy" }, { - "$ref": "#/definitions/AWS_DataZone_ProjectMembership" + "$ref": "#/definitions/AWS_EKS_FargateProfile" }, { - "$ref": "#/definitions/AWS_Pinpoint_ADMChannel" + "$ref": "#/definitions/AWS_DataBrew_Ruleset" }, { - "$ref": "#/definitions/AWS_Logs_DeliveryDestination" + "$ref": "#/definitions/AWS_Glue_SchemaVersion" }, { - "$ref": "#/definitions/AWS_WAF_IPSet" + "$ref": "#/definitions/AWS_SecurityHub_PolicyAssociation" }, { - "$ref": "#/definitions/AWS_KinesisAnalytics_Application" + "$ref": "#/definitions/AWS_SecurityHub_ConfigurationPolicy" }, { - "$ref": "#/definitions/AWS_NetworkManager_SiteToSiteVpnAttachment" + "$ref": "#/definitions/AWS_ObservabilityAdmin_OrganizationTelemetryRule" }, { - "$ref": "#/definitions/AWS_NetworkFirewall_RuleGroup" + "$ref": "#/definitions/AWS_ServiceCatalog_LaunchNotificationConstraint" }, { - "$ref": "#/definitions/AWS_ApiGateway_DomainNameAccessAssociation" + "$ref": "#/definitions/AWS_NotificationsContacts_EmailContact" }, { - "$ref": "#/definitions/AWS_IoTEvents_Input" + "$ref": "#/definitions/AWS_CodePipeline_CustomActionType" }, { - "$ref": "#/definitions/AWS_IoTWireless_MulticastGroup" + "$ref": "#/definitions/AWS_Athena_NamedQuery" }, { - "$ref": "#/definitions/AWS_Route53Resolver_FirewallRuleGroupAssociation" + "$ref": "#/definitions/AWS_FIS_ExperimentTemplate" }, { - "$ref": "#/definitions/AWS_EC2_VPCDHCPOptionsAssociation" + "$ref": "#/definitions/AWS_MSK_Configuration" }, { - "$ref": "#/definitions/AWS_AppSync_DomainNameApiAssociation" + "$ref": "#/definitions/AWS_Proton_EnvironmentAccountConnection" }, { - "$ref": "#/definitions/AWS_MediaLive_EventBridgeRuleTemplateGroup" + "$ref": "#/definitions/AWS_IoT_CACertificate" }, { - "$ref": "#/definitions/AWS_Events_EventBus" + "$ref": "#/definitions/AWS_B2BI_Profile" }, { - "$ref": "#/definitions/AWS_Budgets_Budget" + "$ref": "#/definitions/AWS_SageMaker_NotebookInstanceLifecycleConfig" }, { - "$ref": "#/definitions/AWS_EC2_RouteTable" + "$ref": "#/definitions/AWS_NetworkManager_TransitGatewayRouteTableAttachment" }, { - "$ref": "#/definitions/AWS_SageMaker_AppImageConfig" + "$ref": "#/definitions/AWS_IoTAnalytics_Channel" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_Portal" + "$ref": "#/definitions/AWS_EC2_EgressOnlyInternetGateway" }, { - "$ref": "#/definitions/AWS_EventSchemas_Schema" + "$ref": "#/definitions/AWS_Events_ApiDestination" }, { - "$ref": "#/definitions/AWS_EC2_VerifiedAccessTrustProvider" + "$ref": "#/definitions/AWS_Lightsail_LoadBalancerTlsCertificate" }, { - "$ref": "#/definitions/AWS_EMR_Studio" + "$ref": "#/definitions/AWS_EC2_NetworkInsightsAccessScope" }, { - "$ref": "#/definitions/AWS_IVS_PlaybackRestrictionPolicy" + "$ref": "#/definitions/AWS_EC2_ClientVpnAuthorizationRule" }, { - "$ref": "#/definitions/AWS_Timestream_Table" + "$ref": "#/definitions/AWS_OpenSearchServerless_Collection" }, { - "$ref": "#/definitions/AWS_VoiceID_Domain" + "$ref": "#/definitions/AWS_IoTWireless_NetworkAnalyzerConfiguration" }, { - "$ref": "#/definitions/AWS_IoTAnalytics_Dataset" + "$ref": "#/definitions/AWS_Glue_CustomEntityType" }, { - "$ref": "#/definitions/AWS_ImageBuilder_InfrastructureConfiguration" + "$ref": "#/definitions/AWS_WAFRegional_WebACL" }, { - "$ref": "#/definitions/AWS_Route53_KeySigningKey" + "$ref": "#/definitions/AWS_ResourceGroups_TagSyncTask" }, { - "$ref": "#/definitions/AWS_CodeBuild_ReportGroup" + "$ref": "#/definitions/AWS_MediaConnect_Flow" }, { - "$ref": "#/definitions/AWS_ManagedBlockchain_Accessor" + "$ref": "#/definitions/AWS_CloudFront_DistributionTenant" }, { - "$ref": "#/definitions/AWS_GameLift_GameServerGroup" + "$ref": "#/definitions/AWS_ObservabilityAdmin_TelemetryRule" }, { - "$ref": "#/definitions/AWS_DataZone_Environment" + "$ref": "#/definitions/AWS_AutoScaling_LaunchConfiguration" }, { - "$ref": "#/definitions/AWS_GroundStation_MissionProfile" + "$ref": "#/definitions/AWS_EC2_VPCBlockPublicAccessExclusion" }, { - "$ref": "#/definitions/AWS_Greengrass_ConnectorDefinition" + "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_LoadBalancer" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolRiskConfigurationAttachment" + "$ref": "#/definitions/AWS_DataZone_ProjectProfile" }, { - "$ref": "#/definitions/AWS_NetworkFirewall_LoggingConfiguration" + "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastGroupMember" }, { - "$ref": "#/definitions/AWS_EC2_IPAM" + "$ref": "#/definitions/AWS_Greengrass_LoggerDefinition" }, { - "$ref": "#/definitions/AWS_MediaPackageV2_Channel" + "$ref": "#/definitions/AWS_SSMContacts_Rotation" }, { - "$ref": "#/definitions/AWS_SecurityLake_AwsLogSource" + "$ref": "#/definitions/AWS_SageMaker_Workteam" }, { - "$ref": "#/definitions/AWS_LakeFormation_TagAssociation" + "$ref": "#/definitions/AWS_DynamoDB_Table" }, { - "$ref": "#/definitions/AWS_CertificateManager_Certificate" + "$ref": "#/definitions/AWS_S3Outposts_Endpoint" }, { - "$ref": "#/definitions/AWS_NetworkManager_TransitGatewayRegistration" + "$ref": "#/definitions/AWS_Lex_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_DataSync_LocationEFS" + "$ref": "#/definitions/AWS_AmazonMQ_Broker" }, { - "$ref": "#/definitions/AWS_S3_AccessGrantsLocation" + "$ref": "#/definitions/AWS_QuickSight_Folder" }, { - "$ref": "#/definitions/AWS_OpsWorks_Instance" + "$ref": "#/definitions/AWS_CloudFormation_ResourceVersion" }, { - "$ref": "#/definitions/AWS_CustomerProfiles_EventTrigger" + "$ref": "#/definitions/AWS_Lightsail_Disk" }, { - "$ref": "#/definitions/AWS_CustomerProfiles_Integration" + "$ref": "#/definitions/AWS_Lightsail_LoadBalancer" }, { - "$ref": "#/definitions/AWS_VpcLattice_ServiceNetwork" + "$ref": "#/definitions/AWS_DataSync_LocationAzureBlob" }, { - "$ref": "#/definitions/AWS_IAM_VirtualMFADevice" + "$ref": "#/definitions/AWS_WorkSpacesWeb_UserSettings" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolUICustomizationAttachment" + "$ref": "#/definitions/AWS_NetworkManager_ConnectAttachment" }, { - "$ref": "#/definitions/AWS_EntityResolution_MatchingWorkflow" + "$ref": "#/definitions/AWS_CodeBuild_Project" }, { - "$ref": "#/definitions/AWS_AppConfig_Application" + "$ref": "#/definitions/AWS_Cognito_UserPoolUser" }, { - "$ref": "#/definitions/AWS_Events_ApiDestination" + "$ref": "#/definitions/AWS_AppConfig_Application" }, { - "$ref": "#/definitions/AWS_CleanRooms_PrivacyBudgetTemplate" + "$ref": "#/definitions/AWS_EC2_TransitGatewayRouteTableAssociation" }, { - "$ref": "#/definitions/AWS_DocDB_DBCluster" + "$ref": "#/definitions/AWS_OpenSearchServerless_AccessPolicy" }, { - "$ref": "#/definitions/AWS_AppRunner_Service" + "$ref": "#/definitions/AWS_WorkSpacesWeb_TrustStore" }, { - "$ref": "#/definitions/AWS_Glue_DevEndpoint" + "$ref": "#/definitions/AWS_CustomerProfiles_EventStream" }, { - "$ref": "#/definitions/AWS_KinesisAnalyticsV2_Application" + "$ref": "#/definitions/AWS_SQS_QueueInlinePolicy" }, { - "$ref": "#/definitions/AWS_KafkaConnect_Connector" + "$ref": "#/definitions/AWS_EC2_VPCGatewayAttachment" }, { - "$ref": "#/definitions/AWS_Batch_ConsumableResource" + "$ref": "#/definitions/AWS_IoTFleetWise_SignalCatalog" }, { - "$ref": "#/definitions/AWS_BillingConductor_PricingPlan" + "$ref": "#/definitions/AWS_CloudFormation_Publisher" }, { - "$ref": "#/definitions/AWS_CloudFormation_WaitConditionHandle" + "$ref": "#/definitions/AWS_Wisdom_KnowledgeBase" }, { - "$ref": "#/definitions/AWS_IoTTwinMaker_Entity" + "$ref": "#/definitions/AWS_ResourceGroups_Group" }, { - "$ref": "#/definitions/AWS_BillingConductor_CustomLineItem" + "$ref": "#/definitions/AWS_EKS_AccessEntry" }, { - "$ref": "#/definitions/AWS_Logs_DeliverySource" + "$ref": "#/definitions/AWS_Route53Resolver_ResolverRuleAssociation" }, { - "$ref": "#/definitions/AWS_S3Express_BucketPolicy" + "$ref": "#/definitions/AWS_ApiGateway_Model" }, { - "$ref": "#/definitions/AWS_ElasticBeanstalk_ConfigurationTemplate" + "$ref": "#/definitions/AWS_IdentityStore_GroupMembership" }, { - "$ref": "#/definitions/AWS_Deadline_Farm" + "$ref": "#/definitions/AWS_MediaTailor_LiveSource" }, { - "$ref": "#/definitions/AWS_WorkSpaces_WorkspacesPool" + "$ref": "#/definitions/AWS_NetworkFirewall_FirewallPolicy" }, { - "$ref": "#/definitions/AWS_Route53Resolver_ResolverQueryLoggingConfig" + "$ref": "#/definitions/AWS_S3_MultiRegionAccessPointPolicy" }, { - "$ref": "#/definitions/AWS_SSO_Assignment" + "$ref": "#/definitions/AWS_ApiGatewayV2_VpcLink" }, { - "$ref": "#/definitions/AWS_AutoScaling_ScheduledAction" + "$ref": "#/definitions/AWS_NeptuneGraph_Graph" }, { - "$ref": "#/definitions/AWS_EMR_WALWorkspace" + "$ref": "#/definitions/AWS_Organizations_Organization" }, { - "$ref": "#/definitions/AWS_EMR_SecurityConfiguration" + "$ref": "#/definitions/AWS_GameLift_GameServerGroup" }, { - "$ref": "#/definitions/AWS_FraudDetector_Detector" + "$ref": "#/definitions/AWS_Redshift_Cluster" }, { - "$ref": "#/definitions/AWS_EC2_NetworkInsightsAnalysis" + "$ref": "#/definitions/AWS_EMR_StudioSessionMapping" }, { - "$ref": "#/definitions/AWS_SageMaker_Domain" + "$ref": "#/definitions/AWS_IVS_RecordingConfiguration" }, { - "$ref": "#/definitions/AWS_MemoryDB_SubnetGroup" + "$ref": "#/definitions/AWS_GlobalAccelerator_Accelerator" }, { - "$ref": "#/definitions/AWS_IoTWireless_FuotaTask" + "$ref": "#/definitions/AWS_EMR_SecurityConfiguration" }, { - "$ref": "#/definitions/AWS_EC2_Instance" + "$ref": "#/definitions/AWS_IoTTwinMaker_Entity" }, { - "$ref": "#/definitions/AWS_WAFv2_IPSet" + "$ref": "#/definitions/AWS_SES_MailManagerRelay" }, { - "$ref": "#/definitions/AWS_EVS_Environment" + "$ref": "#/definitions/AWS_APS_RuleGroupsNamespace" }, { - "$ref": "#/definitions/AWS_AppStream_Stack" + "$ref": "#/definitions/AWS_EC2_VPCPeeringConnection" }, { - "$ref": "#/definitions/AWS_ApiGateway_ApiKey" + "$ref": "#/definitions/AWS_Logs_MetricFilter" }, { - "$ref": "#/definitions/AWS_SageMaker_Model" + "$ref": "#/definitions/AWS_EC2_SpotFleet" }, { - "$ref": "#/definitions/AWS_Location_RouteCalculator" + "$ref": "#/definitions/AWS_EC2_VPCDHCPOptionsAssociation" }, { - "$ref": "#/definitions/AWS_Notifications_ManagedNotificationAccountContactAssociation" + "$ref": "#/definitions/AWS_MediaConnect_FlowVpcInterface" }, { - "$ref": "#/definitions/AWS_RDS_DBCluster" + "$ref": "#/definitions/AWS_StepFunctions_StateMachine" }, { - "$ref": "#/definitions/AWS_AppRunner_VpcIngressConnection" + "$ref": "#/definitions/AWS_Neptune_DBSubnetGroup" }, { - "$ref": "#/definitions/AWS_VerifiedPermissions_PolicyTemplate" + "$ref": "#/definitions/AWS_Glue_Table" }, { - "$ref": "#/definitions/AWS_IoT_Thing" + "$ref": "#/definitions/AWS_MediaPackage_PackagingConfiguration" }, { - "$ref": "#/definitions/AWS_EC2_SecurityGroupEgress" + "$ref": "#/definitions/AWS_SSO_ApplicationAssignment" }, { - "$ref": "#/definitions/AWS_Pinpoint_App" + "$ref": "#/definitions/AWS_IoTEvents_AlarmModel" }, { - "$ref": "#/definitions/AWS_IoT_SoftwarePackageVersion" + "$ref": "#/definitions/AWS_ODB_CloudExadataInfrastructure" }, { - "$ref": "#/definitions/AWS_GuardDuty_MalwareProtectionPlan" + "$ref": "#/definitions/AWS_GameLift_MatchmakingConfiguration" }, { - "$ref": "#/definitions/AWS_CloudFront_RealtimeLogConfig" + "$ref": "#/definitions/AWS_ControlTower_EnabledBaseline" }, { - "$ref": "#/definitions/AWS_SageMaker_FeatureGroup" + "$ref": "#/definitions/AWS_ServiceDiscovery_PublicDnsNamespace" }, { - "$ref": "#/definitions/AWS_LicenseManager_License" + "$ref": "#/definitions/AWS_IoTAnalytics_Pipeline" }, { - "$ref": "#/definitions/AWS_ElastiCache_CacheCluster" + "$ref": "#/definitions/AWS_Glue_Workflow" }, { - "$ref": "#/definitions/AWS_Lightsail_LoadBalancer" + "$ref": "#/definitions/AWS_MediaConnect_FlowSource" }, { - "$ref": "#/definitions/AWS_AppStream_Application" + "$ref": "#/definitions/AWS_CloudFront_KeyGroup" }, { - "$ref": "#/definitions/AWS_S3Outposts_BucketPolicy" + "$ref": "#/definitions/AWS_IAM_GroupPolicy" }, { - "$ref": "#/definitions/AWS_ApplicationInsights_Application" + "$ref": "#/definitions/AWS_ElastiCache_User" }, { - "$ref": "#/definitions/AWS_DataSync_LocationFSxLustre" + "$ref": "#/definitions/AWS_SNS_Topic" }, { - "$ref": "#/definitions/AWS_ResilienceHub_App" + "$ref": "#/definitions/AWS_Batch_JobDefinition" }, { - "$ref": "#/definitions/AWS_EC2_NetworkAclEntry" + "$ref": "#/definitions/AWS_S3_StorageLens" }, { - "$ref": "#/definitions/AWS_MediaTailor_LiveSource" + "$ref": "#/definitions/AWS_Backup_BackupPlan" }, { - "$ref": "#/definitions/AWS_QuickSight_RefreshSchedule" + "$ref": "#/definitions/AWS_S3_AccessPoint" }, { - "$ref": "#/definitions/AWS_IAM_ManagedPolicy" + "$ref": "#/definitions/AWS_IoT_Authorizer" }, { - "$ref": "#/definitions/AWS_Neptune_DBCluster" + "$ref": "#/definitions/AWS_NeptuneGraph_PrivateGraphEndpoint" }, { - "$ref": "#/definitions/AWS_QuickSight_CustomPermissions" + "$ref": "#/definitions/AWS_Cognito_UserPoolGroup" }, { - "$ref": "#/definitions/AWS_NetworkManager_TransitGatewayRouteTableAttachment" + "$ref": "#/definitions/AWS_AppSync_ApiKey" }, { - "$ref": "#/definitions/AWS_AppConfig_ConfigurationProfile" + "$ref": "#/definitions/AWS_Deadline_StorageProfile" }, { - "$ref": "#/definitions/AWS_OpsWorks_Layer" + "$ref": "#/definitions/AWS_ElasticBeanstalk_Application" }, { - "$ref": "#/definitions/AWS_CE_CostCategory" + "$ref": "#/definitions/AWS_CleanRooms_IdNamespaceAssociation" }, { - "$ref": "#/definitions/AWS_GreengrassV2_Deployment" + "$ref": "#/definitions/AWS_RDS_DBShardGroup" }, { - "$ref": "#/definitions/AWS_Panorama_PackageVersion" + "$ref": "#/definitions/AWS_AppSync_GraphQLApi" }, { - "$ref": "#/definitions/AWS_OpenSearchServerless_VpcEndpoint" + "$ref": "#/definitions/AWS_Connect_Prompt" }, { - "$ref": "#/definitions/AWS_CodeGuruReviewer_RepositoryAssociation" + "$ref": "#/definitions/AWS_EntityResolution_PolicyStatement" }, { - "$ref": "#/definitions/AWS_OpenSearchServerless_SecurityPolicy" + "$ref": "#/definitions/AWS_Lex_Bot" }, { - "$ref": "#/definitions/AWS_InternetMonitor_Monitor" + "$ref": "#/definitions/AWS_SSMIncidents_ResponsePlan" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_AcceptedPortfolioShare" + "$ref": "#/definitions/AWS_Detective_OrganizationAdmin" }, { - "$ref": "#/definitions/AWS_MSK_ServerlessCluster" + "$ref": "#/definitions/AWS_Connect_InstanceStorageConfig" }, { - "$ref": "#/definitions/AWS_Lex_ResourcePolicy" + "$ref": "#/definitions/AWS_BackupGateway_Hypervisor" }, { - "$ref": "#/definitions/AWS_Glue_Workflow" + "$ref": "#/definitions/AWS_ApiGateway_RequestValidator" }, { - "$ref": "#/definitions/AWS_DataZone_UserProfile" + "$ref": "#/definitions/AWS_Logs_Destination" }, { - "$ref": "#/definitions/AWS_KMS_Alias" + "$ref": "#/definitions/AWS_Rekognition_Project" }, { - "$ref": "#/definitions/AWS_Lightsail_Instance" + "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_AttributeGroupAssociation" }, { - "$ref": "#/definitions/AWS_Omics_RunGroup" + "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_Listener" }, { - "$ref": "#/definitions/AWS_Transfer_Agreement" + "$ref": "#/definitions/AWS_IoT_ThingPrincipalAttachment" }, { - "$ref": "#/definitions/AWS_IoTWireless_PartnerAccount" + "$ref": "#/definitions/AWS_Config_OrganizationConformancePack" }, { - "$ref": "#/definitions/AWS_KMS_Key" + "$ref": "#/definitions/AWS_Inspector_AssessmentTarget" }, { - "$ref": "#/definitions/AWS_EC2_EgressOnlyInternetGateway" + "$ref": "#/definitions/AWS_Route53RecoveryControl_ControlPanel" }, { - "$ref": "#/definitions/AWS_Pinpoint_APNSChannel" + "$ref": "#/definitions/AWS_Connect_Instance" }, { - "$ref": "#/definitions/AWS_MediaPackageV2_OriginEndpointPolicy" + "$ref": "#/definitions/AWS_EC2_CapacityReservation" }, { - "$ref": "#/definitions/AWS_Pinpoint_Campaign" + "$ref": "#/definitions/AWS_Evidently_Segment" }, { - "$ref": "#/definitions/AWS_EMR_InstanceGroupConfig" + "$ref": "#/definitions/AWS_Glue_SecurityConfiguration" }, { - "$ref": "#/definitions/AWS_Glue_DataQualityRuleset" + "$ref": "#/definitions/AWS_Wisdom_AIAgentVersion" }, { - "$ref": "#/definitions/AWS_EC2_TransitGateway" + "$ref": "#/definitions/AWS_Wisdom_AIPrompt" }, { - "$ref": "#/definitions/AWS_APS_Scraper" + "$ref": "#/definitions/AWS_VerifiedPermissions_Policy" }, { - "$ref": "#/definitions/AWS_Inspector_AssessmentTarget" + "$ref": "#/definitions/AWS_KMS_Key" }, { - "$ref": "#/definitions/AWS_QuickSight_VPCConnection" + "$ref": "#/definitions/AWS_IoTSiteWise_AssetModel" }, { - "$ref": "#/definitions/AWS_SQS_QueuePolicy" + "$ref": "#/definitions/AWS_GuardDuty_Detector" }, { - "$ref": "#/definitions/AWS_IoT_Dimension" + "$ref": "#/definitions/AWS_WAFRegional_SizeConstraintSet" }, { - "$ref": "#/definitions/AWS_Glue_Database" + "$ref": "#/definitions/AWS_AuditManager_Assessment" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_Project" + "$ref": "#/definitions/AWS_Omics_VariantStore" }, { - "$ref": "#/definitions/AWS_NetworkManager_GlobalNetwork" + "$ref": "#/definitions/AWS_Backup_Framework" }, { - "$ref": "#/definitions/AWS_Connect_Instance" + "$ref": "#/definitions/AWS_Logs_Delivery" }, { - "$ref": "#/definitions/AWS_WAFRegional_GeoMatchSet" + "$ref": "#/definitions/AWS_Connect_TaskTemplate" }, { - "$ref": "#/definitions/AWS_CloudFormation_Macro" + "$ref": "#/definitions/AWS_Forecast_Dataset" }, { - "$ref": "#/definitions/AWS_Bedrock_DataAutomationProject" + "$ref": "#/definitions/AWS_ElasticBeanstalk_ApplicationVersion" }, { - "$ref": "#/definitions/AWS_Glue_Schema" + "$ref": "#/definitions/AWS_Logs_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_EC2_EnclaveCertificateIamRoleAssociation" + "$ref": "#/definitions/AWS_EventSchemas_Discoverer" }, { - "$ref": "#/definitions/AWS_Lambda_Function" + "$ref": "#/definitions/AWS_APS_Scraper" }, { - "$ref": "#/definitions/AWS_Route53RecoveryReadiness_ReadinessCheck" + "$ref": "#/definitions/AWS_Scheduler_Schedule" }, { - "$ref": "#/definitions/AWS_S3_StorageLensGroup" + "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_Application" }, { - "$ref": "#/definitions/AWS_Pinpoint_EventStream" + "$ref": "#/definitions/AWS_CloudFormation_HookTypeConfig" }, { - "$ref": "#/definitions/AWS_Greengrass_ResourceDefinitionVersion" + "$ref": "#/definitions/AWS_CloudFormation_CustomResource" }, { - "$ref": "#/definitions/AWS_IoTEvents_AlarmModel" + "$ref": "#/definitions/AWS_EC2_InternetGateway" }, { - "$ref": "#/definitions/AWS_Backup_RestoreTestingPlan" + "$ref": "#/definitions/AWS_FSx_Volume" }, { - "$ref": "#/definitions/AWS_FSx_StorageVirtualMachine" + "$ref": "#/definitions/AWS_DataZone_Project" }, { - "$ref": "#/definitions/AWS_CloudWatch_CompositeAlarm" + "$ref": "#/definitions/AWS_DMS_Endpoint" }, { - "$ref": "#/definitions/AWS_SES_VdmAttributes" + "$ref": "#/definitions/AWS_IVS_PublicKey" }, { - "$ref": "#/definitions/AWS_CloudFront_StreamingDistribution" + "$ref": "#/definitions/AWS_WorkspacesInstances_Volume" }, { - "$ref": "#/definitions/AWS_Deadline_Monitor" + "$ref": "#/definitions/AWS_Budgets_Budget" }, { - "$ref": "#/definitions/AWS_APS_Workspace" + "$ref": "#/definitions/AWS_ApiGateway_Resource" }, { - "$ref": "#/definitions/AWS_Location_TrackerConsumer" + "$ref": "#/definitions/AWS_ECR_PullThroughCacheRule" }, { - "$ref": "#/definitions/AWS_Timestream_InfluxDBInstance" + "$ref": "#/definitions/AWS_Pinpoint_VoiceChannel" }, { - "$ref": "#/definitions/AWS_CustomerProfiles_SegmentDefinition" + "$ref": "#/definitions/AWS_RedshiftServerless_Workgroup" }, { - "$ref": "#/definitions/AWS_CustomerProfiles_ObjectType" + "$ref": "#/definitions/AWS_EC2_Route" }, { - "$ref": "#/definitions/AWS_BillingConductor_PricingRule" + "$ref": "#/definitions/AWS_Transfer_Agreement" }, { - "$ref": "#/definitions/AWS_EntityResolution_IdNamespace" + "$ref": "#/definitions/AWS_IoT_ResourceSpecificLogging" }, { - "$ref": "#/definitions/AWS_WAFRegional_IPSet" + "$ref": "#/definitions/AWS_MediaLive_Channel" }, { - "$ref": "#/definitions/AWS_ApiGateway_Authorizer" + "$ref": "#/definitions/AWS_WAFRegional_RateBasedRule" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolResourceServer" + "$ref": "#/definitions/AWS_MediaConnect_FlowEntitlement" }, { - "$ref": "#/definitions/AWS_M2_Environment" + "$ref": "#/definitions/AWS_ApiGatewayV2_Route" }, { - "$ref": "#/definitions/AWS_AppMesh_VirtualRouter" + "$ref": "#/definitions/AWS_EC2_VerifiedAccessGroup" }, { - "$ref": "#/definitions/AWS_Connect_UserHierarchyStructure" + "$ref": "#/definitions/AWS_DAX_ParameterGroup" }, { - "$ref": "#/definitions/AWS_EC2_Host" + "$ref": "#/definitions/AWS_Deadline_MeteredProduct" }, { - "$ref": "#/definitions/AWS_Greengrass_Group" + "$ref": "#/definitions/AWS_Logs_SubscriptionFilter" }, { - "$ref": "#/definitions/AWS_IoT_Authorizer" + "$ref": "#/definitions/AWS_Events_Rule" }, { - "$ref": "#/definitions/AWS_WAF_SizeConstraintSet" + "$ref": "#/definitions/AWS_Kendra_Faq" }, { - "$ref": "#/definitions/AWS_Bedrock_Blueprint" + "$ref": "#/definitions/AWS_Wisdom_MessageTemplate" }, { - "$ref": "#/definitions/AWS_EC2_VerifiedAccessEndpoint" + "$ref": "#/definitions/AWS_Deadline_Fleet" }, { - "$ref": "#/definitions/AWS_QuickSight_Dashboard" + "$ref": "#/definitions/AWS_InternetMonitor_Monitor" }, { - "$ref": "#/definitions/AWS_Scheduler_Schedule" + "$ref": "#/definitions/AWS_CodeBuild_SourceCredential" }, { - "$ref": "#/definitions/AWS_ACMPCA_Certificate" + "$ref": "#/definitions/AWS_SageMaker_MlflowTrackingServer" }, { - "$ref": "#/definitions/AWS_CertificateManager_Account" + "$ref": "#/definitions/AWS_SNS_TopicInlinePolicy" }, { - "$ref": "#/definitions/AWS_Redshift_ClusterParameterGroup" + "$ref": "#/definitions/AWS_Config_ConfigRule" }, { - "$ref": "#/definitions/AWS_S3_StorageLens" + "$ref": "#/definitions/AWS_AppStream_Fleet" }, { - "$ref": "#/definitions/AWS_EC2_RouteServerPeer" + "$ref": "#/definitions/AWS_SecretsManager_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_IntegrationResponse" + "$ref": "#/definitions/AWS_SageMaker_Pipeline" }, { - "$ref": "#/definitions/AWS_Athena_DataCatalog" + "$ref": "#/definitions/AWS_Deadline_QueueLimitAssociation" }, { - "$ref": "#/definitions/AWS_Glue_Trigger" + "$ref": "#/definitions/AWS_DataZone_UserProfile" }, { - "$ref": "#/definitions/AWS_MediaLive_InputSecurityGroup" + "$ref": "#/definitions/AWS_Athena_PreparedStatement" }, { - "$ref": "#/definitions/AWS_IoT_AccountAuditConfiguration" + "$ref": "#/definitions/AWS_SecretsManager_RotationSchedule" }, { - "$ref": "#/definitions/AWS_Lex_Bot" + "$ref": "#/definitions/AWS_EMR_Studio" }, { - "$ref": "#/definitions/AWS_KafkaConnect_CustomPlugin" + "$ref": "#/definitions/AWS_OpenSearchServerless_SecurityPolicy" }, { - "$ref": "#/definitions/AWS_DataZone_EnvironmentBlueprintConfiguration" + "$ref": "#/definitions/AWS_CloudFront_ConnectionGroup" }, { - "$ref": "#/definitions/AWS_SageMaker_Project" + "$ref": "#/definitions/AWS_Wisdom_AIGuardrailVersion" }, { - "$ref": "#/definitions/AWS_GameLift_Fleet" + "$ref": "#/definitions/AWS_DevOpsGuru_LogAnomalyDetectionIntegration" }, { - "$ref": "#/definitions/AWS_Shield_ProactiveEngagement" + "$ref": "#/definitions/AWS_Pinpoint_APNSVoipChannel" }, { - "$ref": "#/definitions/AWS_RoboMaker_SimulationApplication" + "$ref": "#/definitions/AWS_SSO_Application" }, { - "$ref": "#/definitions/AWS_FSx_Snapshot" + "$ref": "#/definitions/AWS_WAFRegional_ByteMatchSet" }, { - "$ref": "#/definitions/AWS_ElastiCache_User" + "$ref": "#/definitions/AWS_IVS_PlaybackKeyPair" }, { - "$ref": "#/definitions/AWS_CleanRooms_IdNamespaceAssociation" + "$ref": "#/definitions/AWS_IoTSiteWise_Project" }, { - "$ref": "#/definitions/AWS_GameLift_Location" + "$ref": "#/definitions/AWS_M2_Application" }, { - "$ref": "#/definitions/AWS_CloudFormation_HookVersion" + "$ref": "#/definitions/AWS_IoTSiteWise_Portal" }, { - "$ref": "#/definitions/AWS_DevOpsGuru_LogAnomalyDetectionIntegration" + "$ref": "#/definitions/AWS_Location_RouteCalculator" }, { - "$ref": "#/definitions/AWS_ResourceGroups_TagSyncTask" + "$ref": "#/definitions/AWS_SecurityLake_Subscriber" }, { - "$ref": "#/definitions/AWS_PCS_Queue" + "$ref": "#/definitions/AWS_Connect_Rule" }, { - "$ref": "#/definitions/AWS_VpcLattice_TargetGroup" + "$ref": "#/definitions/AWS_Pinpoint_GCMChannel" }, { - "$ref": "#/definitions/AWS_Deadline_LicenseEndpoint" + "$ref": "#/definitions/AWS_SecurityHub_SecurityControl" }, { - "$ref": "#/definitions/AWS_ControlTower_EnabledBaseline" + "$ref": "#/definitions/AWS_Oam_Link" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_ListenerRule" + "$ref": "#/definitions/AWS_KinesisAnalytics_Application" }, { - "$ref": "#/definitions/AWS_EntityResolution_SchemaMapping" + "$ref": "#/definitions/AWS_EC2_DHCPOptions" }, { - "$ref": "#/definitions/AWS_Kinesis_Stream" + "$ref": "#/definitions/AWS_IoT_ScheduledAudit" }, { - "$ref": "#/definitions/AWS_Config_ConfigurationRecorder" + "$ref": "#/definitions/AWS_QuickSight_DataSource" }, { - "$ref": "#/definitions/AWS_ECS_Cluster" + "$ref": "#/definitions/AWS_Pinpoint_EmailChannel" }, { - "$ref": "#/definitions/AWS_EC2_IPAMAllocation" + "$ref": "#/definitions/AWS_IoTFleetWise_DecoderManifest" }, { - "$ref": "#/definitions/AWS_Logs_MetricFilter" + "$ref": "#/definitions/AWS_GuardDuty_PublishingDestination" }, { - "$ref": "#/definitions/AWS_AccessAnalyzer_Analyzer" + "$ref": "#/definitions/AWS_SES_ReceiptRule" }, { - "$ref": "#/definitions/AWS_IoTAnalytics_Channel" + "$ref": "#/definitions/AWS_SageMaker_AppImageConfig" }, { - "$ref": "#/definitions/AWS_Lightsail_Alarm" + "$ref": "#/definitions/AWS_GameLift_Alias" }, { - "$ref": "#/definitions/AWS_IoTFleetWise_Vehicle" + "$ref": "#/definitions/AWS_EC2_CarrierGateway" }, { - "$ref": "#/definitions/AWS_Lambda_Alias" + "$ref": "#/definitions/AWS_ImageBuilder_ImageRecipe" }, { - "$ref": "#/definitions/AWS_SecurityHub_DelegatedAdmin" + "$ref": "#/definitions/AWS_Redshift_EventSubscription" }, { - "$ref": "#/definitions/AWS_IoTFleetWise_Campaign" + "$ref": "#/definitions/AWS_ResourceExplorer2_DefaultViewAssociation" }, { - "$ref": "#/definitions/AWS_SageMaker_ImageVersion" + "$ref": "#/definitions/AWS_SSO_InstanceAccessControlAttributeConfiguration" }, { - "$ref": "#/definitions/AWS_AutoScaling_AutoScalingGroup" + "$ref": "#/definitions/AWS_NetworkManager_LinkAssociation" }, { - "$ref": "#/definitions/AWS_Bedrock_Prompt" + "$ref": "#/definitions/AWS_CloudFormation_ModuleDefaultVersion" }, { - "$ref": "#/definitions/AWS_CleanRooms_ConfiguredTable" + "$ref": "#/definitions/AWS_SES_ConfigurationSetEventDestination" }, { - "$ref": "#/definitions/AWS_Config_ConformancePack" + "$ref": "#/definitions/AWS_FraudDetector_Detector" }, { - "$ref": "#/definitions/AWS_DAX_ParameterGroup" + "$ref": "#/definitions/AWS_AppStream_User" }, { - "$ref": "#/definitions/AWS_IoTWireless_TaskDefinition" + "$ref": "#/definitions/AWS_SageMaker_DeviceFleet" }, { - "$ref": "#/definitions/AWS_Lambda_Version" + "$ref": "#/definitions/AWS_CloudFront_CloudFrontOriginAccessIdentity" }, { - "$ref": "#/definitions/AWS_IoTFleetWise_DecoderManifest" + "$ref": "#/definitions/AWS_InspectorV2_Filter" }, { - "$ref": "#/definitions/AWS_Redshift_Cluster" + "$ref": "#/definitions/AWS_Cognito_ManagedLoginBranding" }, { - "$ref": "#/definitions/AWS_MediaLive_CloudWatchAlarmTemplate" + "$ref": "#/definitions/AWS_RefactorSpaces_Service" }, { - "$ref": "#/definitions/AWS_ImageBuilder_DistributionConfiguration" + "$ref": "#/definitions/AWS_QuickSight_VPCConnection" }, { - "$ref": "#/definitions/AWS_QuickSight_DataSet" + "$ref": "#/definitions/AWS_B2BI_Partnership" }, { - "$ref": "#/definitions/AWS_SES_ReceiptRuleSet" + "$ref": "#/definitions/AWS_Signer_SigningProfile" }, { - "$ref": "#/definitions/AWS_CleanRoomsML_TrainingDataset" + "$ref": "#/definitions/AWS_ECR_ReplicationConfiguration" }, { - "$ref": "#/definitions/AWS_Wisdom_KnowledgeBase" + "$ref": "#/definitions/AWS_CodeGuruProfiler_ProfilingGroup" }, { - "$ref": "#/definitions/AWS_Location_PlaceIndex" + "$ref": "#/definitions/AWS_IoTTwinMaker_SyncJob" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_Integration" + "$ref": "#/definitions/AWS_ElastiCache_ReplicationGroup" }, { - "$ref": "#/definitions/AWS_Synthetics_Group" + "$ref": "#/definitions/AWS_Chatbot_CustomAction" }, { - "$ref": "#/definitions/AWS_Lightsail_InstanceSnapshot" + "$ref": "#/definitions/AWS_XRay_TransactionSearchConfig" }, { - "$ref": "#/definitions/AWS_QBusiness_DataAccessor" + "$ref": "#/definitions/AWS_DAX_SubnetGroup" }, { - "$ref": "#/definitions/AWS_MediaPackage_OriginEndpoint" + "$ref": "#/definitions/AWS_CodeStar_GitHubRepository" }, { - "$ref": "#/definitions/AWS_IoT_Logging" + "$ref": "#/definitions/AWS_EC2_Instance" }, { - "$ref": "#/definitions/AWS_Proton_EnvironmentTemplate" + "$ref": "#/definitions/AWS_IoTSiteWise_ComputationModel" }, { - "$ref": "#/definitions/AWS_Athena_CapacityReservation" + "$ref": "#/definitions/AWS_RUM_AppMonitor" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_CloudFormationProvisionedProduct" + "$ref": "#/definitions/AWS_ElastiCache_ParameterGroup" }, { - "$ref": "#/definitions/AWS_SSMContacts_Contact" + "$ref": "#/definitions/AWS_CustomerProfiles_SegmentDefinition" }, { - "$ref": "#/definitions/AWS_Route53_HealthCheck" + "$ref": "#/definitions/AWS_EMRContainers_VirtualCluster" }, { - "$ref": "#/definitions/AWS_GlobalAccelerator_EndpointGroup" + "$ref": "#/definitions/AWS_ApiGatewayV2_IntegrationResponse" }, { - "$ref": "#/definitions/AWS_Bedrock_IntelligentPromptRouter" + "$ref": "#/definitions/AWS_IVS_PlaybackRestrictionPolicy" }, { - "$ref": "#/definitions/AWS_Backup_BackupVault" + "$ref": "#/definitions/AWS_Glue_Crawler" }, { - "$ref": "#/definitions/AWS_WorkSpaces_ConnectionAlias" + "$ref": "#/definitions/AWS_CloudWatch_Alarm" }, { - "$ref": "#/definitions/AWS_ResourceGroups_Group" + "$ref": "#/definitions/AWS_SSM_MaintenanceWindowTarget" }, { - "$ref": "#/definitions/AWS_Connect_PredefinedAttribute" + "$ref": "#/definitions/AWS_IVS_StreamKey" }, { - "$ref": "#/definitions/AWS_ManagedBlockchain_Node" + "$ref": "#/definitions/AWS_QBusiness_WebExperience" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_PortfolioPrincipalAssociation" + "$ref": "#/definitions/AWS_AutoScaling_ScheduledAction" }, { - "$ref": "#/definitions/AWS_AmplifyUIBuilder_Theme" + "$ref": "#/definitions/AWS_ECS_CapacityProvider" }, { - "$ref": "#/definitions/AWS_ApiGateway_RestApi" + "$ref": "#/definitions/AWS_AppIntegrations_EventIntegration" }, { - "$ref": "#/definitions/AWS_WAF_XssMatchSet" + "$ref": "#/definitions/AWS_DataSync_LocationHDFS" }, { - "$ref": "#/definitions/AWS_CloudWatch_Alarm" + "$ref": "#/definitions/AWS_EC2_IPAMPoolCidr" }, { - "$ref": "#/definitions/AWS_Personalize_Dataset" + "$ref": "#/definitions/AWS_M2_Deployment" }, { - "$ref": "#/definitions/AWS_GameLift_MatchmakingRuleSet" + "$ref": "#/definitions/AWS_EC2_LocalGatewayRoute" }, { - "$ref": "#/definitions/AWS_Forecast_DatasetGroup" + "$ref": "#/definitions/AWS_SSMGuiConnect_Preferences" }, { - "$ref": "#/definitions/AWS_Evidently_Segment" + "$ref": "#/definitions/AWS_Greengrass_CoreDefinitionVersion" }, { - "$ref": "#/definitions/AWS_IoTCoreDeviceAdvisor_SuiteDefinition" + "$ref": "#/definitions/AWS_LakeFormation_DataLakeSettings" }, { - "$ref": "#/definitions/AWS_Connect_ViewVersion" + "$ref": "#/definitions/AWS_CloudWatch_Dashboard" }, { - "$ref": "#/definitions/AWS_DAX_Cluster" + "$ref": "#/definitions/AWS_SageMaker_ModelPackageGroup" }, { - "$ref": "#/definitions/AWS_EC2_VPNConnection" + "$ref": "#/definitions/AWS_Glue_Registry" }, { - "$ref": "#/definitions/AWS_ARCZonalShift_AutoshiftObserverNotificationStatus" + "$ref": "#/definitions/AWS_NetworkManager_TransitGatewayRegistration" }, { - "$ref": "#/definitions/AWS_DirectoryService_MicrosoftAD" + "$ref": "#/definitions/AWS_DataZone_Environment" }, { - "$ref": "#/definitions/AWS_WorkSpacesThinClient_Environment" + "$ref": "#/definitions/AWS_Rekognition_StreamProcessor" }, { - "$ref": "#/definitions/AWS_WAFRegional_WebACLAssociation" + "$ref": "#/definitions/AWS_Lightsail_Domain" }, { - "$ref": "#/definitions/AWS_Pinpoint_ApplicationSettings" + "$ref": "#/definitions/AWS_EC2_GatewayRouteTableAssociation" }, { - "$ref": "#/definitions/AWS_EC2_NetworkPerformanceMetricSubscription" + "$ref": "#/definitions/AWS_AppSync_SourceApiAssociation" }, { - "$ref": "#/definitions/AWS_SageMaker_PartnerApp" + "$ref": "#/definitions/AWS_Glue_Classifier" }, { - "$ref": "#/definitions/AWS_DataSync_LocationFSxWindows" + "$ref": "#/definitions/AWS_Elasticsearch_Domain" }, { - "$ref": "#/definitions/AWS_Inspector_AssessmentTemplate" + "$ref": "#/definitions/AWS_AppStream_AppBlockBuilder" }, { - "$ref": "#/definitions/AWS_EC2_ClientVpnTargetNetworkAssociation" + "$ref": "#/definitions/AWS_Batch_ConsumableResource" }, { - "$ref": "#/definitions/AWS_FraudDetector_List" + "$ref": "#/definitions/AWS_Backup_RestoreTestingPlan" }, { - "$ref": "#/definitions/AWS_AppSync_ChannelNamespace" + "$ref": "#/definitions/AWS_NetworkManager_GlobalNetwork" }, { - "$ref": "#/definitions/AWS_ECR_PublicRepository" + "$ref": "#/definitions/AWS_EC2_LocalGatewayRouteTableVirtualInterfaceGroupAssociation" }, { - "$ref": "#/definitions/AWS_SES_EmailIdentity" + "$ref": "#/definitions/AWS_BillingConductor_CustomLineItem" }, { - "$ref": "#/definitions/AWS_IoT_RoleAlias" + "$ref": "#/definitions/AWS_SageMaker_Project" }, { - "$ref": "#/definitions/AWS_Lambda_Permission" + "$ref": "#/definitions/AWS_ServiceCatalog_Portfolio" }, { - "$ref": "#/definitions/AWS_Connect_AgentStatus" + "$ref": "#/definitions/AWS_ImageBuilder_ImagePipeline" }, { - "$ref": "#/definitions/AWS_PCAConnectorAD_TemplateGroupAccessControlEntry" + "$ref": "#/definitions/AWS_SSM_ResourceDataSync" }, { - "$ref": "#/definitions/AWS_ImageBuilder_ImageRecipe" + "$ref": "#/definitions/AWS_Lightsail_Container" }, { - "$ref": "#/definitions/AWS_ControlTower_LandingZone" + "$ref": "#/definitions/AWS_Logs_DeliveryDestination" }, { - "$ref": "#/definitions/AWS_IoT_SoftwarePackage" + "$ref": "#/definitions/AWS_IoT_RoleAlias" }, { - "$ref": "#/definitions/AWS_SES_ReceiptFilter" + "$ref": "#/definitions/Alexa_ASK_Skill" }, { - "$ref": "#/definitions/AWS_Connect_Queue" + "$ref": "#/definitions/AWS_Config_RemediationConfiguration" }, { - "$ref": "#/definitions/AWS_AppStream_ImageBuilder" + "$ref": "#/definitions/AWS_IoT_BillingGroup" }, { - "$ref": "#/definitions/AWS_ElastiCache_ServerlessCache" + "$ref": "#/definitions/AWS_EC2_PrefixList" }, { - "$ref": "#/definitions/AWS_SageMaker_MlflowTrackingServer" + "$ref": "#/definitions/AWS_ServiceDiscovery_PrivateDnsNamespace" }, { - "$ref": "#/definitions/AWS_SSM_Document" + "$ref": "#/definitions/AWS_Route53_RecordSetGroup" }, { - "$ref": "#/definitions/AWS_FIS_TargetAccountConfiguration" + "$ref": "#/definitions/AWS_Wisdom_QuickResponse" }, { - "$ref": "#/definitions/AWS_MediaPackageV2_ChannelGroup" + "$ref": "#/definitions/AWS_SSM_PatchBaseline" }, { - "$ref": "#/definitions/AWS_ApplicationAutoScaling_ScalingPolicy" + "$ref": "#/definitions/AWS_Route53Resolver_FirewallRuleGroup" }, { - "$ref": "#/definitions/AWS_B2BI_Profile" + "$ref": "#/definitions/AWS_EC2_VolumeAttachment" }, { - "$ref": "#/definitions/AWS_Route53Resolver_OutpostResolver" + "$ref": "#/definitions/AWS_AppIntegrations_Application" }, { - "$ref": "#/definitions/AWS_WAFRegional_Rule" + "$ref": "#/definitions/AWS_IoTSiteWise_Asset" }, { - "$ref": "#/definitions/AWS_AppSync_Resolver" + "$ref": "#/definitions/AWS_EC2_NatGateway" }, { - "$ref": "#/definitions/AWS_Deadline_Limit" + "$ref": "#/definitions/AWS_IVS_Channel" }, { - "$ref": "#/definitions/AWS_ElastiCache_SecurityGroupIngress" + "$ref": "#/definitions/AWS_QuickSight_DataSet" }, { - "$ref": "#/definitions/AWS_Organizations_Organization" + "$ref": "#/definitions/AWS_CloudFormation_PublicTypeVersion" }, { - "$ref": "#/definitions/AWS_IoT_TopicRuleDestination" + "$ref": "#/definitions/AWS_Pinpoint_Segment" }, { - "$ref": "#/definitions/AWS_Inspector_ResourceGroup" + "$ref": "#/definitions/AWS_Timestream_InfluxDBInstance" }, { - "$ref": "#/definitions/AWS_SageMaker_ModelCard" + "$ref": "#/definitions/AWS_NetworkManager_DirectConnectGatewayAttachment" }, { - "$ref": "#/definitions/AWS_IoT_DomainConfiguration" + "$ref": "#/definitions/AWS_IoT_Logging" }, { - "$ref": "#/definitions/AWS_Greengrass_CoreDefinition" + "$ref": "#/definitions/AWS_EC2_SubnetRouteTableAssociation" }, { - "$ref": "#/definitions/AWS_RefactorSpaces_Service" + "$ref": "#/definitions/AWS_ECR_PublicRepository" }, { - "$ref": "#/definitions/AWS_Neptune_DBClusterParameterGroup" + "$ref": "#/definitions/AWS_Events_EventBus" }, { - "$ref": "#/definitions/AWS_CodeStarConnections_SyncConfiguration" + "$ref": "#/definitions/AWS_IoTSiteWise_Dataset" }, { - "$ref": "#/definitions/AWS_RDS_DBInstance" + "$ref": "#/definitions/AWS_WorkSpacesWeb_Portal" }, { - "$ref": "#/definitions/AWS_Elasticsearch_Domain" + "$ref": "#/definitions/AWS_WorkSpacesThinClient_Environment" }, { - "$ref": "#/definitions/AWS_IoT_ThingGroup" + "$ref": "#/definitions/AWS_EC2_VerifiedAccessTrustProvider" }, { - "$ref": "#/definitions/AWS_Greengrass_FunctionDefinitionVersion" + "$ref": "#/definitions/AWS_RefactorSpaces_Route" }, { - "$ref": "#/definitions/AWS_SES_ContactList" + "$ref": "#/definitions/AWS_Kinesis_Stream" }, { - "$ref": "#/definitions/AWS_Wisdom_Assistant" + "$ref": "#/definitions/AWS_S3ObjectLambda_AccessPointPolicy" }, { - "$ref": "#/definitions/AWS_ImageBuilder_Component" + "$ref": "#/definitions/AWS_ServiceCatalog_CloudFormationProduct" }, { - "$ref": "#/definitions/AWS_Backup_RestoreTestingSelection" + "$ref": "#/definitions/AWS_FraudDetector_EventType" }, { - "$ref": "#/definitions/AWS_AutoScalingPlans_ScalingPlan" + "$ref": "#/definitions/AWS_Macie_AllowList" }, { - "$ref": "#/definitions/AWS_QuickSight_Analysis" + "$ref": "#/definitions/AWS_Cassandra_Keyspace" }, { - "$ref": "#/definitions/AWS_DynamoDB_GlobalTable" + "$ref": "#/definitions/AWS_NetworkFirewall_VpcEndpointAssociation" }, { - "$ref": "#/definitions/AWS_Comprehend_DocumentClassifier" + "$ref": "#/definitions/AWS_SSO_Assignment" }, { - "$ref": "#/definitions/AWS_CodeDeploy_DeploymentConfig" + "$ref": "#/definitions/AWS_AppRunner_AutoScalingConfiguration" }, { - "$ref": "#/definitions/AWS_AppMesh_GatewayRoute" + "$ref": "#/definitions/AWS_Timestream_Table" }, { - "$ref": "#/definitions/AWS_Connect_QuickConnect" + "$ref": "#/definitions/AWS_SSMContacts_Contact" }, { - "$ref": "#/definitions/AWS_MediaLive_Cluster" + "$ref": "#/definitions/AWS_CodeDeploy_Application" }, { - "$ref": "#/definitions/AWS_DataZone_EnvironmentActions" + "$ref": "#/definitions/AWS_Macie_FindingsFilter" }, { - "$ref": "#/definitions/AWS_Deadline_QueueEnvironment" + "$ref": "#/definitions/AWS_SSM_Document" }, { - "$ref": "#/definitions/AWS_SageMaker_DeviceFleet" + "$ref": "#/definitions/AWS_HealthLake_FHIRDatastore" }, { - "$ref": "#/definitions/AWS_MemoryDB_ACL" + "$ref": "#/definitions/AWS_ECS_Cluster" }, { - "$ref": "#/definitions/AWS_PCAConnectorSCEP_Challenge" + "$ref": "#/definitions/AWS_Redshift_EndpointAccess" }, { - "$ref": "#/definitions/AWS_DMS_ReplicationConfig" + "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastGroupSource" }, { - "$ref": "#/definitions/AWS_Lightsail_Distribution" + "$ref": "#/definitions/AWS_DataZone_DomainUnit" }, { - "$ref": "#/definitions/AWS_SSO_InstanceAccessControlAttributeConfiguration" + "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_TrustStore" }, { - "$ref": "#/definitions/AWS_AppMesh_Route" + "$ref": "#/definitions/AWS_SecurityHub_FindingAggregator" }, { - "$ref": "#/definitions/AWS_LaunchWizard_Deployment" + "$ref": "#/definitions/AWS_SageMaker_EndpointConfig" }, { - "$ref": "#/definitions/AWS_SageMaker_NotebookInstance" + "$ref": "#/definitions/AWS_MediaLive_Multiplexprogram" }, { - "$ref": "#/definitions/AWS_MemoryDB_Cluster" + "$ref": "#/definitions/AWS_AmazonMQ_ConfigurationAssociation" }, { - "$ref": "#/definitions/AWS_ApiGateway_Resource" + "$ref": "#/definitions/AWS_SageMaker_Space" }, { - "$ref": "#/definitions/AWS_CloudWatch_InsightRule" + "$ref": "#/definitions/AWS_MediaLive_Cluster" }, { - "$ref": "#/definitions/AWS_Route53Resolver_ResolverDNSSECConfig" + "$ref": "#/definitions/AWS_WAFRegional_IPSet" }, { - "$ref": "#/definitions/AWS_OpsWorks_App" + "$ref": "#/definitions/AWS_Cognito_UserPool" }, { - "$ref": "#/definitions/AWS_IAM_ServerCertificate" + "$ref": "#/definitions/AWS_IAM_ServiceLinkedRole" }, { - "$ref": "#/definitions/AWS_QuickSight_Folder" + "$ref": "#/definitions/AWS_Deadline_Farm" }, { - "$ref": "#/definitions/AWS_Route53Resolver_FirewallDomainList" + "$ref": "#/definitions/AWS_MediaPackageV2_ChannelGroup" }, { - "$ref": "#/definitions/AWS_CloudTrail_EventDataStore" + "$ref": "#/definitions/AWS_NetworkFirewall_Firewall" }, { - "$ref": "#/definitions/AWS_CodeStarConnections_RepositoryLink" + "$ref": "#/definitions/AWS_Pinpoint_SmsTemplate" }, { - "$ref": "#/definitions/AWS_Route53RecoveryControl_ControlPanel" + "$ref": "#/definitions/AWS_KinesisAnalyticsV2_ApplicationCloudWatchLoggingOption" }, { - "$ref": "#/definitions/AWS_MemoryDB_ParameterGroup" + "$ref": "#/definitions/AWS_MediaTailor_SourceLocation" }, { - "$ref": "#/definitions/AWS_Connect_Prompt" + "$ref": "#/definitions/AWS_Pinpoint_EventStream" }, { - "$ref": "#/definitions/AWS_MemoryDB_MultiRegionCluster" + "$ref": "#/definitions/AWS_DocDB_DBInstance" }, { - "$ref": "#/definitions/AWS_NetworkFirewall_Firewall" + "$ref": "#/definitions/AWS_WorkSpaces_ConnectionAlias" }, { - "$ref": "#/definitions/AWS_Bedrock_AgentAlias" + "$ref": "#/definitions/AWS_Deadline_QueueFleetAssociation" }, { - "$ref": "#/definitions/AWS_S3Tables_TableBucketPolicy" + "$ref": "#/definitions/AWS_WAF_ByteMatchSet" }, { - "$ref": "#/definitions/AWS_Pinpoint_InAppTemplate" + "$ref": "#/definitions/AWS_VerifiedPermissions_PolicyTemplate" }, { - "$ref": "#/definitions/AWS_EC2_Route" + "$ref": "#/definitions/AWS_Pinpoint_ApplicationSettings" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_PortfolioProductAssociation" + "$ref": "#/definitions/AWS_ManagedBlockchain_Accessor" }, { - "$ref": "#/definitions/AWS_StepFunctions_StateMachineAlias" + "$ref": "#/definitions/AWS_SupportApp_SlackChannelConfiguration" }, { - "$ref": "#/definitions/AWS_Route53_HostedZone" + "$ref": "#/definitions/AWS_QLDB_Ledger" }, { - "$ref": "#/definitions/AWS_Glue_Registry" + "$ref": "#/definitions/AWS_DataBrew_Schedule" }, { - "$ref": "#/definitions/AWS_AppMesh_VirtualGateway" + "$ref": "#/definitions/AWS_SecurityLake_AwsLogSource" }, { - "$ref": "#/definitions/AWS_MediaConnect_FlowEntitlement" + "$ref": "#/definitions/AWS_AppMesh_VirtualRouter" }, { - "$ref": "#/definitions/AWS_Route53RecoveryReadiness_RecoveryGroup" + "$ref": "#/definitions/AWS_EC2_KeyPair" }, { - "$ref": "#/definitions/AWS_ControlTower_EnabledControl" + "$ref": "#/definitions/AWS_Backup_BackupVault" }, { - "$ref": "#/definitions/AWS_Logs_Transformer" + "$ref": "#/definitions/AWS_Lightsail_Alarm" }, { - "$ref": "#/definitions/AWS_OpenSearchServerless_Collection" + "$ref": "#/definitions/AWS_Greengrass_CoreDefinition" }, { - "$ref": "#/definitions/AWS_Pinpoint_SMSChannel" + "$ref": "#/definitions/AWS_RoboMaker_Robot" }, { - "$ref": "#/definitions/AWS_ECS_CapacityProvider" + "$ref": "#/definitions/AWS_MemoryDB_SubnetGroup" }, { - "$ref": "#/definitions/AWS_IoTWireless_ServiceProfile" + "$ref": "#/definitions/AWS_CUR_ReportDefinition" }, { - "$ref": "#/definitions/AWS_Chatbot_CustomAction" + "$ref": "#/definitions/AWS_IoTWireless_FuotaTask" }, { - "$ref": "#/definitions/AWS_EC2_NatGateway" + "$ref": "#/definitions/AWS_SSM_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_Api" + "$ref": "#/definitions/AWS_IoT_Command" }, { - "$ref": "#/definitions/AWS_RDS_DBProxyEndpoint" + "$ref": "#/definitions/AWS_SageMaker_InferenceExperiment" }, { - "$ref": "#/definitions/AWS_Forecast_Dataset" + "$ref": "#/definitions/AWS_OpenSearchServerless_VpcEndpoint" }, { - "$ref": "#/definitions/AWS_Deadline_MeteredProduct" + "$ref": "#/definitions/AWS_ARCZonalShift_ZonalAutoshiftConfiguration" }, { - "$ref": "#/definitions/AWS_DataZone_DataSource" + "$ref": "#/definitions/AWS_FSx_S3AccessPointAttachment" }, { - "$ref": "#/definitions/AWS_EventSchemas_RegistryPolicy" + "$ref": "#/definitions/AWS_EC2_IPAMPool" }, { - "$ref": "#/definitions/AWS_EKS_IdentityProviderConfig" + "$ref": "#/definitions/AWS_Connect_HoursOfOperation" }, { - "$ref": "#/definitions/AWS_GuardDuty_ThreatIntelSet" + "$ref": "#/definitions/AWS_EC2_VPCEndpointConnectionNotification" }, { - "$ref": "#/definitions/AWS_EC2_KeyPair" + "$ref": "#/definitions/AWS_MediaPackageV2_OriginEndpoint" }, { - "$ref": "#/definitions/AWS_FraudDetector_EntityType" + "$ref": "#/definitions/AWS_ElastiCache_SecurityGroup" }, { - "$ref": "#/definitions/AWS_DataSync_LocationFSxONTAP" + "$ref": "#/definitions/AWS_DataZone_EnvironmentActions" }, { - "$ref": "#/definitions/AWS_IoTFleetHub_Application" + "$ref": "#/definitions/AWS_CloudFront_AnycastIpList" }, { - "$ref": "#/definitions/AWS_DMS_EventSubscription" + "$ref": "#/definitions/AWS_SES_MailManagerIngressPoint" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_Gateway" + "$ref": "#/definitions/AWS_AppConfig_ConfigurationProfile" }, { - "$ref": "#/definitions/AWS_Pinpoint_BaiduChannel" + "$ref": "#/definitions/AWS_EC2_TrafficMirrorFilter" }, { - "$ref": "#/definitions/AWS_Macie_Session" + "$ref": "#/definitions/AWS_RoboMaker_SimulationApplicationVersion" }, { - "$ref": "#/definitions/AWS_Bedrock_FlowVersion" + "$ref": "#/definitions/AWS_CodeBuild_Fleet" }, { - "$ref": "#/definitions/AWS_KinesisAnalyticsV2_ApplicationReferenceDataSource" + "$ref": "#/definitions/AWS_ARCRegionSwitch_Plan" }, { - "$ref": "#/definitions/AWS_Transfer_Profile" + "$ref": "#/definitions/AWS_IoTSiteWise_AccessPolicy" }, { - "$ref": "#/definitions/AWS_DataSync_LocationAzureBlob" + "$ref": "#/definitions/AWS_RDS_DBCluster" }, { - "$ref": "#/definitions/AWS_DocDB_DBClusterParameterGroup" + "$ref": "#/definitions/AWS_SageMaker_Endpoint" }, { - "$ref": "#/definitions/AWS_StepFunctions_StateMachine" + "$ref": "#/definitions/AWS_IVS_EncoderConfiguration" }, { - "$ref": "#/definitions/AWS_CloudFront_ContinuousDeploymentPolicy" + "$ref": "#/definitions/AWS_Route53_RecordSet" }, { - "$ref": "#/definitions/AWS_ElastiCache_ReplicationGroup" + "$ref": "#/definitions/AWS_OpenSearchService_Domain" }, { - "$ref": "#/definitions/AWS_CloudFront_AnycastIpList" + "$ref": "#/definitions/AWS_ManagedBlockchain_Node" }, { - "$ref": "#/definitions/AWS_CodeConnections_Connection" + "$ref": "#/definitions/AWS_Location_Map" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_TrustStore" + "$ref": "#/definitions/AWS_LicenseManager_Grant" }, { - "$ref": "#/definitions/AWS_DataBrew_Job" + "$ref": "#/definitions/AWS_CloudTrail_Trail" }, { - "$ref": "#/definitions/AWS_EC2_VPCPeeringConnection" + "$ref": "#/definitions/AWS_InspectorV2_CisScanConfiguration" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_ApiGatewayManagedOverrides" + "$ref": "#/definitions/AWS_EKS_Addon" }, { - "$ref": "#/definitions/AWS_MediaLive_SignalMap" + "$ref": "#/definitions/AWS_VpcLattice_AccessLogSubscription" }, { - "$ref": "#/definitions/AWS_IoTAnalytics_Pipeline" + "$ref": "#/definitions/AWS_Evidently_Project" }, { - "$ref": "#/definitions/AWS_LookoutVision_Project" + "$ref": "#/definitions/AWS_CleanRooms_ConfiguredTableAssociation" }, { - "$ref": "#/definitions/AWS_SageMaker_ModelQualityJobDefinition" + "$ref": "#/definitions/AWS_AppSync_GraphQLSchema" }, { - "$ref": "#/definitions/AWS_IoT_Policy" + "$ref": "#/definitions/AWS_MSK_ServerlessCluster" }, { - "$ref": "#/definitions/AWS_Amplify_Branch" + "$ref": "#/definitions/AWS_Batch_JobQueue" }, { - "$ref": "#/definitions/AWS_EC2_TrafficMirrorTarget" + "$ref": "#/definitions/AWS_ServiceCatalog_PortfolioShare" }, { - "$ref": "#/definitions/AWS_Lightsail_Container" + "$ref": "#/definitions/AWS_EventSchemas_Schema" }, { - "$ref": "#/definitions/AWS_GroundStation_DataflowEndpointGroup" + "$ref": "#/definitions/AWS_PCAConnectorAD_Connector" }, { - "$ref": "#/definitions/AWS_AppRunner_VpcConnector" + "$ref": "#/definitions/AWS_PCAConnectorAD_TemplateGroupAccessControlEntry" }, { - "$ref": "#/definitions/AWS_MediaStore_Container" + "$ref": "#/definitions/AWS_Route53RecoveryReadiness_Cell" }, { - "$ref": "#/definitions/AWS_KinesisAnalytics_ApplicationReferenceDataSource" + "$ref": "#/definitions/AWS_Connect_AgentStatus" }, { - "$ref": "#/definitions/AWS_ConnectCampaignsV2_Campaign" + "$ref": "#/definitions/AWS_AppStream_AppBlock" }, { - "$ref": "#/definitions/AWS_IoT_ThingPrincipalAttachment" + "$ref": "#/definitions/AWS_VpcLattice_AuthPolicy" }, { - "$ref": "#/definitions/AWS_EC2_IPAMResourceDiscoveryAssociation" + "$ref": "#/definitions/AWS_NetworkFirewall_RuleGroup" }, { - "$ref": "#/definitions/AWS_CloudFormation_HookDefaultVersion" + "$ref": "#/definitions/AWS_WorkspacesInstances_VolumeAssociation" }, { - "$ref": "#/definitions/AWS_Macie_AllowList" + "$ref": "#/definitions/AWS_QuickSight_Template" }, { - "$ref": "#/definitions/AWS_MSK_ClusterPolicy" + "$ref": "#/definitions/AWS_EC2_SecurityGroup" }, { - "$ref": "#/definitions/AWS_AppIntegrations_DataIntegration" + "$ref": "#/definitions/AWS_Inspector_ResourceGroup" }, { - "$ref": "#/definitions/AWS_EC2_VPCCidrBlock" + "$ref": "#/definitions/AWS_GameLift_Build" }, { - "$ref": "#/definitions/AWS_SecurityHub_Standard" + "$ref": "#/definitions/AWS_ApiGateway_DocumentationPart" }, { - "$ref": "#/definitions/AWS_MediaConnect_Gateway" + "$ref": "#/definitions/AWS_RDS_EventSubscription" }, { - "$ref": "#/definitions/AWS_MediaConvert_Preset" + "$ref": "#/definitions/AWS_Lambda_LayerVersion" }, { - "$ref": "#/definitions/AWS_SageMaker_Device" + "$ref": "#/definitions/AWS_EC2_PlacementGroup" }, { - "$ref": "#/definitions/AWS_Timestream_ScheduledQuery" + "$ref": "#/definitions/AWS_CE_CostCategory" }, { - "$ref": "#/definitions/AWS_SSO_Application" + "$ref": "#/definitions/AWS_DMS_ReplicationSubnetGroup" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayConnect" + "$ref": "#/definitions/AWS_FMS_NotificationChannel" }, { - "$ref": "#/definitions/AWS_Bedrock_FlowAlias" + "$ref": "#/definitions/AWS_EC2_RouteServer" }, { - "$ref": "#/definitions/AWS_CloudFront_Distribution" + "$ref": "#/definitions/AWS_CodeArtifact_PackageGroup" }, { - "$ref": "#/definitions/AWS_AuditManager_Assessment" + "$ref": "#/definitions/AWS_EMR_Cluster" }, { - "$ref": "#/definitions/AWS_Cognito_ManagedLoginBranding" + "$ref": "#/definitions/AWS_CodeStarConnections_SyncConfiguration" }, { - "$ref": "#/definitions/AWS_Pinpoint_VoiceChannel" + "$ref": "#/definitions/AWS_ServiceCatalog_TagOption" }, { - "$ref": "#/definitions/AWS_S3ObjectLambda_AccessPoint" + "$ref": "#/definitions/AWS_S3Tables_Namespace" }, { - "$ref": "#/definitions/AWS_Greengrass_DeviceDefinitionVersion" + "$ref": "#/definitions/AWS_Greengrass_DeviceDefinition" }, { - "$ref": "#/definitions/AWS_DocDB_DBInstance" + "$ref": "#/definitions/AWS_IAM_Group" }, { - "$ref": "#/definitions/AWS_NetworkManager_Site" + "$ref": "#/definitions/AWS_SSMContacts_ContactChannel" }, { - "$ref": "#/definitions/AWS_IoT_CertificateProvider" + "$ref": "#/definitions/AWS_Rbin_Rule" }, { - "$ref": "#/definitions/AWS_VerifiedPermissions_Policy" + "$ref": "#/definitions/AWS_RDS_OptionGroup" }, { - "$ref": "#/definitions/AWS_IoTWireless_WirelessGateway" + "$ref": "#/definitions/AWS_Neptune_DBCluster" }, { - "$ref": "#/definitions/AWS_IoTFleetWise_StateTemplate" + "$ref": "#/definitions/AWS_Connect_ContactFlowVersion" }, { - "$ref": "#/definitions/AWS_AppConfig_Deployment" + "$ref": "#/definitions/AWS_SecurityHub_DelegatedAdmin" }, { - "$ref": "#/definitions/AWS_CodePipeline_Pipeline" + "$ref": "#/definitions/AWS_DataSync_LocationFSxWindows" }, { - "$ref": "#/definitions/AWS_Pinpoint_Segment" + "$ref": "#/definitions/AWS_AppSync_DomainNameApiAssociation" }, { - "$ref": "#/definitions/AWS_EC2_VerifiedAccessInstance" + "$ref": "#/definitions/AWS_Backup_LogicallyAirGappedBackupVault" }, { - "$ref": "#/definitions/AWS_OpenSearchServerless_SecurityConfig" + "$ref": "#/definitions/AWS_ApiGatewayV2_Stage" }, { - "$ref": "#/definitions/AWS_Backup_ReportPlan" + "$ref": "#/definitions/AWS_Neptune_DBParameterGroup" }, { - "$ref": "#/definitions/AWS_Route53Resolver_ResolverQueryLoggingConfigAssociation" + "$ref": "#/definitions/AWS_SageMaker_App" }, { - "$ref": "#/definitions/AWS_DataSync_LocationFSxOpenZFS" + "$ref": "#/definitions/AWS_EC2_LocalGatewayRouteTable" }, { - "$ref": "#/definitions/AWS_SupportApp_AccountAlias" + "$ref": "#/definitions/AWS_MediaLive_CloudWatchAlarmTemplateGroup" }, { - "$ref": "#/definitions/AWS_AppStream_ApplicationFleetAssociation" + "$ref": "#/definitions/AWS_Location_Tracker" }, { - "$ref": "#/definitions/AWS_SecurityHub_Hub" + "$ref": "#/definitions/AWS_CloudFormation_WaitCondition" }, { - "$ref": "#/definitions/AWS_ElasticBeanstalk_Application" + "$ref": "#/definitions/AWS_Redshift_EndpointAuthorization" }, { - "$ref": "#/definitions/AWS_SageMaker_NotebookInstanceLifecycleConfig" + "$ref": "#/definitions/AWS_WorkSpaces_WorkspacesPool" }, { - "$ref": "#/definitions/AWS_QLDB_Stream" + "$ref": "#/definitions/AWS_ApiGateway_DocumentationVersion" }, { - "$ref": "#/definitions/AWS_AppConfig_HostedConfigurationVersion" + "$ref": "#/definitions/AWS_QuickSight_CustomPermissions" }, { - "$ref": "#/definitions/AWS_DataZone_Connection" + "$ref": "#/definitions/AWS_QuickSight_Theme" }, { - "$ref": "#/definitions/AWS_SecretsManager_ResourcePolicy" + "$ref": "#/definitions/AWS_SageMaker_Device" }, { - "$ref": "#/definitions/AWS_MediaLive_Input" + "$ref": "#/definitions/AWS_EC2_TransitGatewayVpcAttachment" }, { - "$ref": "#/definitions/AWS_AutoScaling_LifecycleHook" + "$ref": "#/definitions/AWS_Location_GeofenceCollection" }, { - "$ref": "#/definitions/AWS_Connect_ContactFlowModule" + "$ref": "#/definitions/AWS_VpcLattice_ServiceNetworkServiceAssociation" }, { - "$ref": "#/definitions/AWS_CodeArtifact_Repository" + "$ref": "#/definitions/AWS_Notifications_EventRule" }, { - "$ref": "#/definitions/AWS_EC2_RouteServer" + "$ref": "#/definitions/AWS_DAX_Cluster" }, { - "$ref": "#/definitions/AWS_LakeFormation_DataLakeSettings" + "$ref": "#/definitions/AWS_Route53_HealthCheck" }, { - "$ref": "#/definitions/AWS_Route53_CidrCollection" + "$ref": "#/definitions/AWS_AmplifyUIBuilder_Form" }, { - "$ref": "#/definitions/AWS_AppRunner_AutoScalingConfiguration" + "$ref": "#/definitions/AWS_ImageBuilder_LifecyclePolicy" }, { - "$ref": "#/definitions/AWS_SES_MailManagerRuleSet" + "$ref": "#/definitions/AWS_IdentityStore_Group" }, { - "$ref": "#/definitions/AWS_Notifications_ChannelAssociation" + "$ref": "#/definitions/AWS_OpsWorks_Instance" }, { - "$ref": "#/definitions/AWS_RDS_DBParameterGroup" + "$ref": "#/definitions/AWS_IoTTwinMaker_Scene" }, { - "$ref": "#/definitions/AWS_SecurityHub_Insight" + "$ref": "#/definitions/AWS_Redshift_ClusterSecurityGroup" }, { - "$ref": "#/definitions/AWS_Pinpoint_APNSVoipChannel" + "$ref": "#/definitions/AWS_S3_AccessGrantsLocation" }, { - "$ref": "#/definitions/AWS_EC2_TrafficMirrorFilter" + "$ref": "#/definitions/AWS_SSMContacts_Plan" }, { - "$ref": "#/definitions/AWS_GlobalAccelerator_Accelerator" + "$ref": "#/definitions/AWS_IVSChat_LoggingConfiguration" }, { - "$ref": "#/definitions/AWS_VpcLattice_ResourceGateway" + "$ref": "#/definitions/AWS_SecurityHub_AggregatorV2" }, { - "$ref": "#/definitions/AWS_Evidently_Experiment" + "$ref": "#/definitions/AWS_Transfer_Workflow" }, { - "$ref": "#/definitions/AWS_AppFlow_Connector" + "$ref": "#/definitions/AWS_ECR_RepositoryCreationTemplate" }, { - "$ref": "#/definitions/AWS_CloudTrail_Dashboard" + "$ref": "#/definitions/AWS_AppStream_DirectoryConfig" }, { - "$ref": "#/definitions/AWS_WAF_SqlInjectionMatchSet" + "$ref": "#/definitions/AWS_EC2_NetworkInterfacePermission" }, { - "$ref": "#/definitions/AWS_IVS_PlaybackKeyPair" + "$ref": "#/definitions/AWS_Glue_DevEndpoint" }, { - "$ref": "#/definitions/AWS_SecurityHub_ConfigurationPolicy" + "$ref": "#/definitions/AWS_EC2_CustomerGateway" }, { - "$ref": "#/definitions/AWS_EC2_RouteServerAssociation" + "$ref": "#/definitions/AWS_ServiceCatalog_TagOptionAssociation" }, { - "$ref": "#/definitions/AWS_EC2_NetworkInsightsAccessScopeAnalysis" + "$ref": "#/definitions/AWS_Connect_TrafficDistributionGroup" }, { - "$ref": "#/definitions/AWS_SecurityLake_Subscriber" + "$ref": "#/definitions/AWS_EC2_TrafficMirrorSession" }, { - "$ref": "#/definitions/AWS_SecurityHub_PolicyAssociation" + "$ref": "#/definitions/AWS_IVS_Stage" }, { - "$ref": "#/definitions/AWS_MediaConnect_FlowVpcInterface" + "$ref": "#/definitions/AWS_EC2_VPNConnection" }, { - "$ref": "#/definitions/AWS_GameLift_GameSessionQueue" + "$ref": "#/definitions/AWS_ApplicationAutoScaling_ScalableTarget" }, { - "$ref": "#/definitions/AWS_DMS_ReplicationSubnetGroup" + "$ref": "#/definitions/AWS_Lambda_Url" }, { - "$ref": "#/definitions/AWS_Personalize_DatasetGroup" + "$ref": "#/definitions/AWS_ApiGatewayV2_Authorizer" }, { - "$ref": "#/definitions/AWS_AppStream_StackFleetAssociation" + "$ref": "#/definitions/AWS_S3Express_DirectoryBucket" }, { - "$ref": "#/definitions/AWS_Rekognition_Project" + "$ref": "#/definitions/AWS_KMS_ReplicaKey" }, { - "$ref": "#/definitions/AWS_EC2_NetworkInsightsAccessScope" + "$ref": "#/definitions/AWS_EC2_NetworkPerformanceMetricSubscription" }, { - "$ref": "#/definitions/AWS_DataZone_ProjectProfile" + "$ref": "#/definitions/AWS_DataSync_Task" }, { - "$ref": "#/definitions/AWS_CloudFormation_Publisher" + "$ref": "#/definitions/AWS_VerifiedPermissions_IdentitySource" }, { - "$ref": "#/definitions/AWS_Location_Map" + "$ref": "#/definitions/AWS_ApplicationSignals_ServiceLevelObjective" }, { - "$ref": "#/definitions/AWS_SupportApp_SlackChannelConfiguration" + "$ref": "#/definitions/AWS_Bedrock_Flow" }, { - "$ref": "#/definitions/AWS_Oam_Sink" + "$ref": "#/definitions/AWS_Notifications_NotificationConfiguration" }, { - "$ref": "#/definitions/AWS_DLM_LifecyclePolicy" + "$ref": "#/definitions/AWS_SageMaker_Model" }, { - "$ref": "#/definitions/AWS_CodePipeline_CustomActionType" + "$ref": "#/definitions/AWS_Lambda_Function" }, { - "$ref": "#/definitions/AWS_RDS_DBSecurityGroup" + "$ref": "#/definitions/AWS_MediaTailor_VodSource" }, { - "$ref": "#/definitions/AWS_Neptune_EventSubscription" + "$ref": "#/definitions/AWS_OpenSearchServerless_SecurityConfig" }, { - "$ref": "#/definitions/AWS_CloudFormation_LambdaHook" + "$ref": "#/definitions/AWS_Organizations_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_SageMaker_ModelPackageGroup" + "$ref": "#/definitions/AWS_GroundStation_MissionProfile" }, { - "$ref": "#/definitions/AWS_RDS_DBProxyTargetGroup" + "$ref": "#/definitions/AWS_EntityResolution_IdNamespace" }, { - "$ref": "#/definitions/AWS_CUR_ReportDefinition" + "$ref": "#/definitions/AWS_FSx_Snapshot" }, { - "$ref": "#/definitions/AWS_CloudFront_KeyValueStore" + "$ref": "#/definitions/AWS_AppIntegrations_DataIntegration" }, { - "$ref": "#/definitions/AWS_SageMaker_MonitoringSchedule" + "$ref": "#/definitions/AWS_Panorama_Package" }, { - "$ref": "#/definitions/AWS_NetworkManager_Link" + "$ref": "#/definitions/AWS_IoTFleetHub_Application" }, { - "$ref": "#/definitions/AWS_SageMaker_InferenceComponent" + "$ref": "#/definitions/AWS_EC2_Subnet" }, { - "$ref": "#/definitions/AWS_Athena_NamedQuery" + "$ref": "#/definitions/AWS_Transfer_Certificate" }, { - "$ref": "#/definitions/AWS_CE_AnomalyMonitor" + "$ref": "#/definitions/AWS_AppStream_Entitlement" }, { - "$ref": "#/definitions/AWS_GameLift_ContainerGroupDefinition" + "$ref": "#/definitions/AWS_EC2_TrafficMirrorFilterRule" }, { - "$ref": "#/definitions/AWS_EC2_CarrierGateway" + "$ref": "#/definitions/AWS_ECS_ClusterCapacityProviderAssociations" }, { - "$ref": "#/definitions/AWS_SecretsManager_SecretTargetAttachment" + "$ref": "#/definitions/AWS_PCAConnectorSCEP_Connector" }, { - "$ref": "#/definitions/AWS_MediaConnect_Flow" + "$ref": "#/definitions/AWS_MediaConnect_Bridge" }, { - "$ref": "#/definitions/AWS_CodeDeploy_DeploymentGroup" + "$ref": "#/definitions/AWS_Cognito_LogDeliveryConfiguration" }, { - "$ref": "#/definitions/AWS_MSK_Replicator" + "$ref": "#/definitions/AWS_Kendra_DataSource" }, { - "$ref": "#/definitions/AWS_CloudFormation_ModuleVersion" + "$ref": "#/definitions/AWS_RoboMaker_SimulationApplication" }, { - "$ref": "#/definitions/AWS_SageMaker_StudioLifecycleConfig" + "$ref": "#/definitions/AWS_EC2_TransitGatewayRoute" }, { - "$ref": "#/definitions/AWS_VpcLattice_AccessLogSubscription" + "$ref": "#/definitions/AWS_CodeDeploy_DeploymentConfig" }, { - "$ref": "#/definitions/AWS_DevOpsGuru_ResourceCollection" + "$ref": "#/definitions/AWS_MSK_Cluster" }, { - "$ref": "#/definitions/AWS_Greengrass_CoreDefinitionVersion" + "$ref": "#/definitions/AWS_ImageBuilder_Image" }, { - "$ref": "#/definitions/AWS_SageMaker_InferenceExperiment" + "$ref": "#/definitions/AWS_B2BI_Capability" }, { - "$ref": "#/definitions/AWS_SQS_QueueInlinePolicy" + "$ref": "#/definitions/AWS_RefactorSpaces_Environment" }, { - "$ref": "#/definitions/AWS_ElastiCache_SubnetGroup" + "$ref": "#/definitions/AWS_Oam_Sink" }, { - "$ref": "#/definitions/AWS_Glue_Table" + "$ref": "#/definitions/AWS_QBusiness_Plugin" }, { - "$ref": "#/definitions/AWS_IoT_Command" + "$ref": "#/definitions/AWS_RAM_Permission" }, { - "$ref": "#/definitions/AWS_KinesisAnalyticsV2_ApplicationCloudWatchLoggingOption" + "$ref": "#/definitions/AWS_EC2_LocalGatewayRouteTableVPCAssociation" }, { - "$ref": "#/definitions/AWS_S3Outposts_AccessPoint" + "$ref": "#/definitions/AWS_AppStream_Stack" }, { - "$ref": "#/definitions/AWS_ResourceExplorer2_Index" + "$ref": "#/definitions/AWS_Cassandra_Type" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastDomainAssociation" + "$ref": "#/definitions/AWS_FraudDetector_Outcome" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_StackSetConstraint" + "$ref": "#/definitions/AWS_KinesisAnalyticsV2_ApplicationOutput" }, { - "$ref": "#/definitions/AWS_SSMContacts_Rotation" + "$ref": "#/definitions/AWS_Bedrock_Agent" }, { - "$ref": "#/definitions/AWS_ConnectCampaigns_Campaign" + "$ref": "#/definitions/AWS_CloudWatch_InsightRule" }, { - "$ref": "#/definitions/AWS_IoTFleetWise_SignalCatalog" + "$ref": "#/definitions/AWS_StepFunctions_StateMachineAlias" }, { - "$ref": "#/definitions/AWS_ApiGateway_GatewayResponse" + "$ref": "#/definitions/AWS_Route53_KeySigningKey" }, { - "$ref": "#/definitions/AWS_VpcLattice_Listener" + "$ref": "#/definitions/AWS_Logs_Transformer" }, { - "$ref": "#/definitions/AWS_Deadline_Queue" + "$ref": "#/definitions/AWS_DataZone_Connection" }, { - "$ref": "#/definitions/AWS_CloudFormation_HookTypeConfig" + "$ref": "#/definitions/AWS_Logs_AccountPolicy" }, { - "$ref": "#/definitions/AWS_SES_MailManagerAddressList" + "$ref": "#/definitions/AWS_GlobalAccelerator_EndpointGroup" }, { - "$ref": "#/definitions/AWS_DirectoryService_SimpleAD" + "$ref": "#/definitions/AWS_Glue_Job" }, { - "$ref": "#/definitions/AWS_Events_Archive" + "$ref": "#/definitions/AWS_DataZone_SubscriptionTarget" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastGroupSource" + "$ref": "#/definitions/AWS_Glue_DataCatalogEncryptionSettings" }, { - "$ref": "#/definitions/AWS_SSM_PatchBaseline" + "$ref": "#/definitions/AWS_GuardDuty_Filter" }, { - "$ref": "#/definitions/AWS_OpenSearchService_Application" + "$ref": "#/definitions/AWS_Lightsail_Database" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_IpAccessSettings" + "$ref": "#/definitions/AWS_DMS_ReplicationTask" }, { - "$ref": "#/definitions/AWS_HealthLake_FHIRDatastore" + "$ref": "#/definitions/AWS_IVS_IngestConfiguration" }, { - "$ref": "#/definitions/AWS_DataZone_EnvironmentProfile" + "$ref": "#/definitions/AWS_IoT_ThingType" }, { - "$ref": "#/definitions/AWS_Pinpoint_EmailTemplate" + "$ref": "#/definitions/AWS_Wisdom_Assistant" }, { - "$ref": "#/definitions/AWS_GameLift_Alias" + "$ref": "#/definitions/AWS_Route53Resolver_FirewallDomainList" }, { - "$ref": "#/definitions/AWS_FMS_NotificationChannel" + "$ref": "#/definitions/AWS_ApplicationSignals_Discovery" }, { - "$ref": "#/definitions/AWS_Redshift_ClusterSecurityGroup" + "$ref": "#/definitions/AWS_SageMaker_ModelPackage" }, { - "$ref": "#/definitions/AWS_Lambda_CodeSigningConfig" + "$ref": "#/definitions/AWS_Personalize_Schema" }, { - "$ref": "#/definitions/AWS_DataBrew_Recipe" + "$ref": "#/definitions/AWS_GroundStation_DataflowEndpointGroup" }, { - "$ref": "#/definitions/AWS_RAM_ResourceShare" + "$ref": "#/definitions/AWS_DLM_LifecyclePolicy" }, { - "$ref": "#/definitions/AWS_S3_AccessGrantsInstance" + "$ref": "#/definitions/AWS_KafkaConnect_WorkerConfiguration" }, { - "$ref": "#/definitions/AWS_RAM_Permission" + "$ref": "#/definitions/AWS_NetworkFirewall_TLSInspectionConfiguration" }, { - "$ref": "#/definitions/AWS_OpsWorks_ElasticLoadBalancerAttachment" + "$ref": "#/definitions/AWS_CloudFront_ResponseHeadersPolicy" }, { - "$ref": "#/definitions/AWS_SSMContacts_Plan" + "$ref": "#/definitions/AWS_Connect_ViewVersion" }, { - "$ref": "#/definitions/AWS_Route53Resolver_ResolverConfig" + "$ref": "#/definitions/AWS_EC2_IPAMScope" }, { - "$ref": "#/definitions/AWS_AppConfig_Environment" + "$ref": "#/definitions/AWS_ECR_RegistryScanningConfiguration" }, { - "$ref": "#/definitions/AWS_Greengrass_LoggerDefinition" + "$ref": "#/definitions/AWS_Lambda_Version" }, { - "$ref": "#/definitions/AWS_Connect_ApprovedOrigin" + "$ref": "#/definitions/AWS_AppMesh_VirtualService" }, { - "$ref": "#/definitions/AWS_SecurityHub_OrganizationConfiguration" + "$ref": "#/definitions/AWS_EC2_NetworkInsightsAccessScopeAnalysis" }, { - "$ref": "#/definitions/AWS_ApiGateway_RequestValidator" + "$ref": "#/definitions/AWS_Greengrass_FunctionDefinition" }, { - "$ref": "#/definitions/AWS_RolesAnywhere_Profile" + "$ref": "#/definitions/AWS_Backup_ReportPlan" }, { - "$ref": "#/definitions/AWS_Bedrock_Agent" + "$ref": "#/definitions/AWS_Route53Resolver_ResolverQueryLoggingConfigAssociation" }, { - "$ref": "#/definitions/AWS_SQS_Queue" + "$ref": "#/definitions/AWS_AppSync_DomainName" }, { - "$ref": "#/definitions/AWS_Cognito_IdentityPool" + "$ref": "#/definitions/AWS_Config_StoredQuery" }, { - "$ref": "#/definitions/AWS_IAM_User" + "$ref": "#/definitions/AWS_Deadline_Limit" }, { - "$ref": "#/definitions/AWS_GuardDuty_Master" + "$ref": "#/definitions/AWS_WAFv2_IPSet" }, { - "$ref": "#/definitions/AWS_CloudFront_ResponseHeadersPolicy" + "$ref": "#/definitions/AWS_LookoutMetrics_AnomalyDetector" }, { - "$ref": "#/definitions/AWS_EC2_Subnet" + "$ref": "#/definitions/AWS_QLDB_Stream" }, { - "$ref": "#/definitions/AWS_Organizations_ResourcePolicy" + "$ref": "#/definitions/AWS_RolesAnywhere_CRL" }, { - "$ref": "#/definitions/AWS_CloudTrail_ResourcePolicy" + "$ref": "#/definitions/AWS_ApiGatewayV2_Deployment" }, { - "$ref": "#/definitions/AWS_OpenSearchServerless_Index" + "$ref": "#/definitions/AWS_ElastiCache_GlobalReplicationGroup" }, { - "$ref": "#/definitions/AWS_RefactorSpaces_Application" + "$ref": "#/definitions/AWS_AppMesh_VirtualGateway" }, { - "$ref": "#/definitions/AWS_LakeFormation_Resource" + "$ref": "#/definitions/AWS_SES_ConfigurationSet" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_AccessPolicy" + "$ref": "#/definitions/AWS_MediaPackage_OriginEndpoint" }, { - "$ref": "#/definitions/AWS_Evidently_Feature" + "$ref": "#/definitions/AWS_Cognito_UserPoolResourceServer" }, { - "$ref": "#/definitions/AWS_Glue_SchemaVersion" + "$ref": "#/definitions/AWS_SupportApp_SlackWorkspaceConfiguration" }, { - "$ref": "#/definitions/AWS_CloudFormation_WaitCondition" + "$ref": "#/definitions/AWS_ImageBuilder_InfrastructureConfiguration" }, { - "$ref": "#/definitions/AWS_CloudWatch_Dashboard" + "$ref": "#/definitions/AWS_ODB_OdbNetwork" }, { - "$ref": "#/definitions/AWS_Backup_LogicallyAirGappedBackupVault" + "$ref": "#/definitions/AWS_ECR_RegistryPolicy" }, { - "$ref": "#/definitions/AWS_Connect_ContactFlow" + "$ref": "#/definitions/AWS_ElasticBeanstalk_Environment" }, { - "$ref": "#/definitions/AWS_ApiGateway_DocumentationVersion" + "$ref": "#/definitions/AWS_Evidently_Launch" }, { - "$ref": "#/definitions/AWS_SSO_PermissionSet" + "$ref": "#/definitions/AWS_KinesisFirehose_DeliveryStream" }, { - "$ref": "#/definitions/AWS_AppSync_FunctionConfiguration" + "$ref": "#/definitions/AWS_SES_MailManagerRuleSet" }, { - "$ref": "#/definitions/AWS_WAFv2_RegexPatternSet" + "$ref": "#/definitions/AWS_Route53Resolver_ResolverRule" }, { - "$ref": "#/definitions/AWS_ElastiCache_GlobalReplicationGroup" + "$ref": "#/definitions/AWS_Pipes_Pipe" }, { - "$ref": "#/definitions/AWS_ElastiCache_UserGroup" + "$ref": "#/definitions/AWS_SageMaker_ModelCard" }, { - "$ref": "#/definitions/AWS_SNS_Subscription" + "$ref": "#/definitions/AWS_EC2_IPAMAllocation" }, { - "$ref": "#/definitions/AWS_EC2_VPCBlockPublicAccessExclusion" + "$ref": "#/definitions/AWS_VpcLattice_ResourceConfiguration" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_Route" + "$ref": "#/definitions/AWS_MediaPackage_Channel" }, { - "$ref": "#/definitions/AWS_Athena_WorkGroup" + "$ref": "#/definitions/AWS_RDS_DBSecurityGroupIngress" }, { - "$ref": "#/definitions/AWS_VpcLattice_ServiceNetworkVpcAssociation" + "$ref": "#/definitions/AWS_QuickSight_Topic" }, { - "$ref": "#/definitions/AWS_Connect_TrafficDistributionGroup" + "$ref": "#/definitions/AWS_EC2_VPNConnectionRoute" }, { - "$ref": "#/definitions/AWS_ACMPCA_CertificateAuthority" + "$ref": "#/definitions/AWS_QBusiness_Permission" }, { - "$ref": "#/definitions/AWS_ServiceDiscovery_PublicDnsNamespace" + "$ref": "#/definitions/AWS_EC2_VPCEndpointService" }, { - "$ref": "#/definitions/AWS_CloudFormation_PublicTypeVersion" + "$ref": "#/definitions/AWS_Transfer_WebApp" }, { - "$ref": "#/definitions/AWS_IVSChat_Room" + "$ref": "#/definitions/AWS_MediaConnect_BridgeSource" }, { - "$ref": "#/definitions/AWS_IoT_ScheduledAudit" + "$ref": "#/definitions/AWS_LakeFormation_Permissions" }, { - "$ref": "#/definitions/AWS_StepFunctions_Activity" + "$ref": "#/definitions/AWS_SageMaker_Image" }, { - "$ref": "#/definitions/AWS_QuickSight_Topic" + "$ref": "#/definitions/AWS_ElastiCache_CacheCluster" }, { - "$ref": "#/definitions/AWS_CloudFront_ConnectionGroup" + "$ref": "#/definitions/AWS_Cognito_IdentityPoolPrincipalTag" }, { - "$ref": "#/definitions/AWS_OpenSearchService_Domain" + "$ref": "#/definitions/AWS_CodeCommit_Repository" }, { - "$ref": "#/definitions/AWS_Cloud9_EnvironmentEC2" + "$ref": "#/definitions/AWS_IAM_UserPolicy" }, { - "$ref": "#/definitions/AWS_Logs_QueryDefinition" + "$ref": "#/definitions/AWS_WAFv2_WebACLAssociation" }, { - "$ref": "#/definitions/AWS_ApiGateway_Stage" + "$ref": "#/definitions/AWS_MediaConvert_Preset" }, { - "$ref": "#/definitions/AWS_InspectorV2_CisScanConfiguration" + "$ref": "#/definitions/AWS_RDS_DBProxyEndpoint" }, { - "$ref": "#/definitions/AWS_Logs_SubscriptionFilter" + "$ref": "#/definitions/AWS_IAM_SAMLProvider" }, { - "$ref": "#/definitions/AWS_Connect_SecurityKey" + "$ref": "#/definitions/AWS_CustomerProfiles_Domain" }, { - "$ref": "#/definitions/AWS_SSM_Association" + "$ref": "#/definitions/AWS_CodeStarConnections_Connection" }, { - "$ref": "#/definitions/AWS_AutoScaling_ScalingPolicy" + "$ref": "#/definitions/AWS_Glue_SchemaVersionMetadata" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_BrowserSettings" + "$ref": "#/definitions/AWS_ECS_TaskSet" }, { - "$ref": "#/definitions/AWS_Kinesis_StreamConsumer" + "$ref": "#/definitions/AWS_Redshift_ClusterParameterGroup" }, { - "$ref": "#/definitions/AWS_DataZone_Owner" + "$ref": "#/definitions/AWS_ApplicationInsights_Application" }, { - "$ref": "#/definitions/AWS_ECS_PrimaryTaskSet" + "$ref": "#/definitions/AWS_Glue_UsageProfile" }, { - "$ref": "#/definitions/AWS_MSK_BatchScramSecret" + "$ref": "#/definitions/AWS_Route53Profiles_ProfileAssociation" }, { - "$ref": "#/definitions/AWS_WAF_WebACL" + "$ref": "#/definitions/AWS_ElastiCache_SecurityGroupIngress" }, { - "$ref": "#/definitions/AWS_Transfer_User" + "$ref": "#/definitions/AWS_SES_MailManagerAddressList" }, { - "$ref": "#/definitions/AWS_DocDBElastic_Cluster" + "$ref": "#/definitions/AWS_AppRunner_Service" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_Model" + "$ref": "#/definitions/AWS_IoTAnalytics_Dataset" }, { - "$ref": "#/definitions/AWS_MediaConvert_JobTemplate" + "$ref": "#/definitions/AWS_EC2_RouteTable" }, { - "$ref": "#/definitions/AWS_Organizations_OrganizationalUnit" + "$ref": "#/definitions/AWS_S3Outposts_Bucket" }, { - "$ref": "#/definitions/AWS_NetworkFirewall_FirewallPolicy" + "$ref": "#/definitions/AWS_S3Express_BucketPolicy" }, { - "$ref": "#/definitions/AWS_CodeArtifact_PackageGroup" + "$ref": "#/definitions/AWS_WAFRegional_GeoMatchSet" }, { - "$ref": "#/definitions/AWS_ECR_ReplicationConfiguration" + "$ref": "#/definitions/AWS_IoTCoreDeviceAdvisor_SuiteDefinition" }, { - "$ref": "#/definitions/AWS_KinesisFirehose_DeliveryStream" + "$ref": "#/definitions/AWS_NetworkFirewall_LoggingConfiguration" }, { - "$ref": "#/definitions/AWS_IoT_JobTemplate" + "$ref": "#/definitions/AWS_GameLift_Location" }, { - "$ref": "#/definitions/AWS_EC2_LocalGatewayRouteTableVPCAssociation" + "$ref": "#/definitions/AWS_ApiGateway_GatewayResponse" }, { - "$ref": "#/definitions/AWS_NotificationsContacts_EmailContact" + "$ref": "#/definitions/AWS_SDB_Domain" }, { - "$ref": "#/definitions/AWS_CloudWatch_MetricStream" + "$ref": "#/definitions/AWS_ServiceCatalog_PortfolioProductAssociation" }, { - "$ref": "#/definitions/AWS_EC2_InternetGateway" + "$ref": "#/definitions/AWS_NetworkManager_VpcAttachment" }, { - "$ref": "#/definitions/AWS_AppRunner_ObservabilityConfiguration" + "$ref": "#/definitions/AWS_EC2_SecurityGroupEgress" }, { - "$ref": "#/definitions/AWS_NetworkManager_ConnectAttachment" + "$ref": "#/definitions/AWS_CodeStarConnections_RepositoryLink" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayVpcAttachment" + "$ref": "#/definitions/AWS_ECS_TaskDefinition" }, { - "$ref": "#/definitions/AWS_RDS_DBClusterParameterGroup" + "$ref": "#/definitions/AWS_ServiceCatalog_LaunchTemplateConstraint" }, { - "$ref": "#/definitions/AWS_Transfer_Server" + "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastDomain" }, { - "$ref": "#/definitions/AWS_AppStream_User" + "$ref": "#/definitions/AWS_Greengrass_DeviceDefinitionVersion" }, { - "$ref": "#/definitions/AWS_ECR_RegistryScanningConfiguration" + "$ref": "#/definitions/AWS_RedshiftServerless_Namespace" }, { - "$ref": "#/definitions/AWS_DMS_DataProvider" + "$ref": "#/definitions/AWS_FSx_FileSystem" }, { - "$ref": "#/definitions/AWS_Deadline_QueueFleetAssociation" + "$ref": "#/definitions/AWS_Redshift_ClusterSecurityGroupIngress" }, { - "$ref": "#/definitions/AWS_Batch_ComputeEnvironment" + "$ref": "#/definitions/AWS_CodeConnections_Connection" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_ServiceAction" + "$ref": "#/definitions/AWS_Transfer_Connector" }, { - "$ref": "#/definitions/AWS_Kendra_Faq" + "$ref": "#/definitions/AWS_DataZone_GroupProfile" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolGroup" + "$ref": "#/definitions/AWS_MediaConvert_Queue" }, { - "$ref": "#/definitions/AWS_Transfer_Connector" + "$ref": "#/definitions/AWS_WorkspacesInstances_WorkspaceInstance" }, { - "$ref": "#/definitions/AWS_Organizations_Account" + "$ref": "#/definitions/AWS_SES_DedicatedIpPool" }, { - "$ref": "#/definitions/AWS_FinSpace_Environment" + "$ref": "#/definitions/AWS_SSO_Instance" }, { - "$ref": "#/definitions/AWS_Route53RecoveryReadiness_ResourceSet" + "$ref": "#/definitions/AWS_IAM_Policy" }, { - "$ref": "#/definitions/AWS_IoT_TopicRule" + "$ref": "#/definitions/AWS_EventSchemas_RegistryPolicy" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_RoutingRule" + "$ref": "#/definitions/AWS_EC2_ClientVpnEndpoint" }, { - "$ref": "#/definitions/AWS_CleanRooms_Membership" + "$ref": "#/definitions/AWS_GuardDuty_Member" }, { - "$ref": "#/definitions/AWS_Lex_BotVersion" + "$ref": "#/definitions/AWS_NetworkManager_ConnectPeer" }, { - "$ref": "#/definitions/AWS_RedshiftServerless_Workgroup" + "$ref": "#/definitions/AWS_Route53Resolver_ResolverDNSSECConfig" }, { - "$ref": "#/definitions/AWS_Wisdom_MessageTemplate" + "$ref": "#/definitions/AWS_BillingConductor_PricingPlan" }, { - "$ref": "#/definitions/AWS_Cassandra_Type" + "$ref": "#/definitions/AWS_EC2_SubnetCidrBlock" }, { - "$ref": "#/definitions/AWS_IVS_IngestConfiguration" + "$ref": "#/definitions/AWS_SageMaker_ImageVersion" }, { - "$ref": "#/definitions/AWS_PCS_Cluster" + "$ref": "#/definitions/AWS_Route53Profiles_Profile" }, { - "$ref": "#/definitions/AWS_Detective_OrganizationAdmin" + "$ref": "#/definitions/AWS_ElasticBeanstalk_ConfigurationTemplate" }, { - "$ref": "#/definitions/AWS_WAFv2_RuleGroup" + "$ref": "#/definitions/AWS_AppConfig_Extension" }, { - "$ref": "#/definitions/AWS_AppSync_SourceApiAssociation" + "$ref": "#/definitions/AWS_AutoScalingPlans_ScalingPlan" }, { - "$ref": "#/definitions/AWS_IoT_FleetMetric" + "$ref": "#/definitions/AWS_CleanRoomsML_TrainingDataset" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_LaunchRoleConstraint" + "$ref": "#/definitions/AWS_DMS_ReplicationConfig" }, { - "$ref": "#/definitions/AWS_ACMPCA_Permission" + "$ref": "#/definitions/AWS_ApiGateway_DomainName" }, { - "$ref": "#/definitions/AWS_Lightsail_Database" + "$ref": "#/definitions/AWS_CloudFront_PublicKey" }, { - "$ref": "#/definitions/AWS_SageMaker_Image" + "$ref": "#/definitions/AWS_FraudDetector_List" }, { - "$ref": "#/definitions/AWS_EC2_Volume" + "$ref": "#/definitions/AWS_RDS_GlobalCluster" }, { - "$ref": "#/definitions/AWS_SecretsManager_RotationSchedule" + "$ref": "#/definitions/AWS_Backup_BackupSelection" }, { - "$ref": "#/definitions/AWS_Pinpoint_PushTemplate" + "$ref": "#/definitions/AWS_EC2_RouteServerPropagation" }, { - "$ref": "#/definitions/AWS_AppSync_DomainName" + "$ref": "#/definitions/AWS_Bedrock_PromptVersion" }, { - "$ref": "#/definitions/AWS_KendraRanking_ExecutionPlan" + "$ref": "#/definitions/AWS_AccessAnalyzer_Analyzer" }, { - "$ref": "#/definitions/AWS_EC2_SecurityGroup" + "$ref": "#/definitions/AWS_AppStream_ImageBuilder" }, { - "$ref": "#/definitions/AWS_Route53RecoveryControl_Cluster" + "$ref": "#/definitions/AWS_DMS_Certificate" }, { - "$ref": "#/definitions/AWS_ElasticBeanstalk_Environment" + "$ref": "#/definitions/AWS_SageMaker_ModelExplainabilityJobDefinition" }, { - "$ref": "#/definitions/AWS_StepFunctions_StateMachineVersion" + "$ref": "#/definitions/AWS_GreengrassV2_ComponentVersion" }, { - "$ref": "#/definitions/AWS_IoTEvents_DetectorModel" + "$ref": "#/definitions/AWS_SSM_Parameter" }, { - "$ref": "#/definitions/AWS_Athena_PreparedStatement" + "$ref": "#/definitions/AWS_Location_PlaceIndex" }, { - "$ref": "#/definitions/AWS_Lambda_LayerVersion" + "$ref": "#/definitions/AWS_ElastiCache_SubnetGroup" }, { - "$ref": "#/definitions/AWS_RDS_EventSubscription" + "$ref": "#/definitions/AWS_Shield_ProactiveEngagement" }, { - "$ref": "#/definitions/AWS_B2BI_Transformer" + "$ref": "#/definitions/AWS_LaunchWizard_Deployment" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolClient" + "$ref": "#/definitions/AWS_VpcLattice_ServiceNetwork" }, { - "$ref": "#/definitions/AWS_CloudTrail_Trail" + "$ref": "#/definitions/AWS_Connect_EmailAddress" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_NetworkSettings" + "$ref": "#/definitions/AWS_MSK_BatchScramSecret" }, { - "$ref": "#/definitions/AWS_EC2_ClientVpnAuthorizationRule" + "$ref": "#/definitions/AWS_IoT_DomainConfiguration" }, { - "$ref": "#/definitions/AWS_SES_Template" + "$ref": "#/definitions/AWS_Panorama_PackageVersion" }, { - "$ref": "#/definitions/AWS_ARCZonalShift_ZonalAutoshiftConfiguration" + "$ref": "#/definitions/AWS_Cognito_UserPoolClient" }, { - "$ref": "#/definitions/AWS_MediaConnect_BridgeSource" + "$ref": "#/definitions/AWS_Neptune_EventSubscription" }, { - "$ref": "#/definitions/AWS_EC2_CapacityReservation" + "$ref": "#/definitions/AWS_IoT_TopicRule" }, { - "$ref": "#/definitions/AWS_NetworkManager_CoreNetwork" + "$ref": "#/definitions/AWS_EC2_SnapshotBlockPublicAccess" }, { - "$ref": "#/definitions/AWS_AppConfig_Extension" + "$ref": "#/definitions/AWS_RDS_DBParameterGroup" }, { "$ref": "#/definitions/AWS_SES_MailManagerAddonSubscription" }, { - "$ref": "#/definitions/AWS_EC2_SecurityGroupIngress" + "$ref": "#/definitions/AWS_Location_TrackerConsumer" }, { - "$ref": "#/definitions/AWS_EMRServerless_Application" + "$ref": "#/definitions/AWS_IoTFleetWise_StateTemplate" }, { - "$ref": "#/definitions/AWS_ElasticBeanstalk_ApplicationVersion" + "$ref": "#/definitions/AWS_ApiGatewayV2_DomainName" }, { - "$ref": "#/definitions/AWS_S3_Bucket" + "$ref": "#/definitions/AWS_EC2_VPNGatewayRoutePropagation" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolUserToGroupAttachment" + "$ref": "#/definitions/AWS_MediaConnect_FlowOutput" }, { - "$ref": "#/definitions/AWS_Glue_Crawler" + "$ref": "#/definitions/AWS_OSIS_Pipeline" }, { - "$ref": "#/definitions/AWS_MediaLive_EventBridgeRuleTemplate" + "$ref": "#/definitions/AWS_DMS_DataMigration" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_LaunchNotificationConstraint" + "$ref": "#/definitions/AWS_AppConfig_DeploymentStrategy" }, { - "$ref": "#/definitions/AWS_Omics_WorkflowVersion" + "$ref": "#/definitions/AWS_Redshift_Integration" }, { - "$ref": "#/definitions/AWS_Pinpoint_EmailChannel" + "$ref": "#/definitions/AWS_ResilienceHub_App" }, { - "$ref": "#/definitions/AWS_IAM_RolePolicy" + "$ref": "#/definitions/AWS_DocDB_DBClusterParameterGroup" }, { - "$ref": "#/definitions/AWS_WAFRegional_RateBasedRule" + "$ref": "#/definitions/AWS_IAM_ServerCertificate" }, { - "$ref": "#/definitions/AWS_Lightsail_Disk" + "$ref": "#/definitions/AWS_Organizations_Policy" }, { - "$ref": "#/definitions/AWS_EC2_IPAMResourceDiscovery" + "$ref": "#/definitions/AWS_MemoryDB_MultiRegionCluster" }, { - "$ref": "#/definitions/AWS_ApiGateway_Account" + "$ref": "#/definitions/AWS_Lightsail_InstanceSnapshot" }, { - "$ref": "#/definitions/AWS_EC2_IPAMPool" + "$ref": "#/definitions/AWS_IAM_OIDCProvider" }, { - "$ref": "#/definitions/AWS_Connect_EmailAddress" + "$ref": "#/definitions/AWS_Budgets_BudgetsAction" }, { - "$ref": "#/definitions/AWS_IAM_Policy" + "$ref": "#/definitions/AWS_ServiceDiscovery_HttpNamespace" }, { - "$ref": "#/definitions/AWS_Notifications_EventRule" + "$ref": "#/definitions/AWS_DataZone_Domain" }, { - "$ref": "#/definitions/AWS_DataBrew_Project" + "$ref": "#/definitions/AWS_AppStream_Application" }, { - "$ref": "#/definitions/AWS_ApiGateway_DomainName" + "$ref": "#/definitions/AWS_WAFRegional_XssMatchSet" }, { - "$ref": "#/definitions/AWS_AppSync_GraphQLApi" + "$ref": "#/definitions/AWS_Cognito_UserPoolDomain" }, { - "$ref": "#/definitions/AWS_SSMIncidents_ResponsePlan" + "$ref": "#/definitions/AWS_S3_BucketPolicy" }, { - "$ref": "#/definitions/AWS_RDS_Integration" + "$ref": "#/definitions/AWS_Connect_PredefinedAttribute" }, { - "$ref": "#/definitions/AWS_Logs_ResourcePolicy" + "$ref": "#/definitions/AWS_Glue_Database" }, { - "$ref": "#/definitions/AWS_AppStream_Fleet" + "$ref": "#/definitions/AWS_Macie_Session" }, { - "$ref": "#/definitions/AWS_ApiGateway_Deployment" + "$ref": "#/definitions/AWS_Lightsail_Distribution" }, { - "$ref": "#/definitions/AWS_ImageBuilder_LifecyclePolicy" + "$ref": "#/definitions/AWS_OpsWorks_UserProfile" }, { - "$ref": "#/definitions/AWS_Greengrass_DeviceDefinition" + "$ref": "#/definitions/AWS_GameLift_GameSessionQueue" }, { - "$ref": "#/definitions/AWS_AppIntegrations_EventIntegration" + "$ref": "#/definitions/AWS_AppStream_ApplicationFleetAssociation" }, { - "$ref": "#/definitions/AWS_DataZone_Project" + "$ref": "#/definitions/AWS_ApiGateway_DomainNameAccessAssociation" }, { - "$ref": "#/definitions/AWS_SSM_ResourcePolicy" + "$ref": "#/definitions/AWS_Backup_RestoreTestingSelection" }, { - "$ref": "#/definitions/AWS_FSx_FileSystem" + "$ref": "#/definitions/AWS_SageMaker_ModelBiasJobDefinition" }, { - "$ref": "#/definitions/AWS_DataBrew_Schedule" + "$ref": "#/definitions/AWS_QBusiness_Application" }, { - "$ref": "#/definitions/AWS_IoTWireless_NetworkAnalyzerConfiguration" + "$ref": "#/definitions/AWS_EC2_SecurityGroupIngress" }, { - "$ref": "#/definitions/AWS_MediaConnect_FlowOutput" + "$ref": "#/definitions/AWS_GameLift_Script" }, { - "$ref": "#/definitions/AWS_Route53Resolver_ResolverEndpoint" + "$ref": "#/definitions/AWS_CloudFormation_WaitConditionHandle" }, { - "$ref": "#/definitions/AWS_Redshift_ClusterSubnetGroup" + "$ref": "#/definitions/AWS_SageMaker_NotebookInstance" }, { - "$ref": "#/definitions/AWS_Chatbot_SlackChannelConfiguration" + "$ref": "#/definitions/AWS_MPA_IdentitySource" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_ResourceUpdateConstraint" + "$ref": "#/definitions/AWS_Connect_View" }, { - "$ref": "#/definitions/AWS_EC2_VPCBlockPublicAccessOptions" + "$ref": "#/definitions/AWS_Shield_ProtectionGroup" }, { - "$ref": "#/definitions/AWS_VpcLattice_Service" + "$ref": "#/definitions/AWS_S3Tables_TableBucket" }, { - "$ref": "#/definitions/AWS_Omics_ReferenceStore" + "$ref": "#/definitions/AWS_MediaLive_ChannelPlacementGroup" }, { - "$ref": "#/definitions/AWS_B2BI_Capability" + "$ref": "#/definitions/AWS_Bedrock_DataAutomationProject" }, { - "$ref": "#/definitions/AWS_ApplicationSignals_ServiceLevelObjective" + "$ref": "#/definitions/AWS_Pinpoint_ADMChannel" }, { - "$ref": "#/definitions/AWS_MediaConvert_Queue" + "$ref": "#/definitions/AWS_CloudFront_StreamingDistribution" }, { - "$ref": "#/definitions/AWS_IoTFleetWise_Fleet" + "$ref": "#/definitions/AWS_MemoryDB_Cluster" }, { - "$ref": "#/definitions/AWS_IoT_Certificate" + "$ref": "#/definitions/AWS_SES_MailManagerArchive" }, { - "$ref": "#/definitions/AWS_Glue_TableOptimizer" + "$ref": "#/definitions/AWS_EC2_NetworkAcl" }, { - "$ref": "#/definitions/AWS_Glue_Connection" + "$ref": "#/definitions/AWS_RolesAnywhere_TrustAnchor" }, { - "$ref": "#/definitions/AWS_XRay_TransactionSearchConfig" + "$ref": "#/definitions/AWS_AppSync_Resolver" }, { - "$ref": "#/definitions/AWS_SES_DedicatedIpPool" + "$ref": "#/definitions/AWS_QBusiness_DataSource" }, { - "$ref": "#/definitions/AWS_ElastiCache_SecurityGroup" + "$ref": "#/definitions/AWS_Invoicing_InvoiceUnit" }, { - "$ref": "#/definitions/AWS_RoboMaker_RobotApplication" + "$ref": "#/definitions/AWS_EC2_SubnetNetworkAclAssociation" }, { - "$ref": "#/definitions/AWS_SageMaker_ModelExplainabilityJobDefinition" + "$ref": "#/definitions/AWS_Neptune_DBClusterParameterGroup" }, { - "$ref": "#/definitions/AWS_SSMGuiConnect_Preferences" + "$ref": "#/definitions/AWS_IoT_SecurityProfile" }, { - "$ref": "#/definitions/AWS_CustomerProfiles_CalculatedAttributeDefinition" + "$ref": "#/definitions/AWS_StepFunctions_Activity" }, { - "$ref": "#/definitions/AWS_AppStream_AppBlockBuilder" + "$ref": "#/definitions/AWS_IoTWireless_TaskDefinition" }, { - "$ref": "#/definitions/AWS_IVS_Stage" + "$ref": "#/definitions/AWS_IoTSiteWise_Gateway" }, { - "$ref": "#/definitions/AWS_IoT_CACertificate" + "$ref": "#/definitions/AWS_EC2_LaunchTemplate" }, { - "$ref": "#/definitions/AWS_IdentityStore_Group" + "$ref": "#/definitions/AWS_FraudDetector_Label" }, { - "$ref": "#/definitions/AWS_IVS_StreamKey" + "$ref": "#/definitions/AWS_S3ObjectLambda_AccessPoint" }, { - "$ref": "#/definitions/AWS_FraudDetector_EventType" + "$ref": "#/definitions/AWS_B2BI_Transformer" }, { - "$ref": "#/definitions/AWS_SageMaker_Cluster" + "$ref": "#/definitions/AWS_CloudTrail_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_MediaLive_Multiplex" + "$ref": "#/definitions/AWS_MediaPackageV2_Channel" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayAttachment" + "$ref": "#/definitions/AWS_DMS_MigrationProject" }, { - "$ref": "#/definitions/AWS_DataSync_LocationS3" + "$ref": "#/definitions/AWS_CleanRooms_PrivacyBudgetTemplate" }, { - "$ref": "#/definitions/AWS_IAM_UserToGroupAddition" + "$ref": "#/definitions/AWS_WAFRegional_WebACLAssociation" }, { - "$ref": "#/definitions/AWS_Lightsail_LoadBalancerTlsCertificate" + "$ref": "#/definitions/AWS_WAFv2_WebACL" }, { - "$ref": "#/definitions/AWS_Config_StoredQuery" + "$ref": "#/definitions/AWS_EC2_TransitGatewayConnect" }, { - "$ref": "#/definitions/AWS_Shield_DRTAccess" + "$ref": "#/definitions/AWS_SQS_QueuePolicy" }, { - "$ref": "#/definitions/AWS_S3_AccessGrant" + "$ref": "#/definitions/AWS_Timestream_Database" }, { - "$ref": "#/definitions/AWS_Cognito_IdentityPoolPrincipalTag" + "$ref": "#/definitions/AWS_SES_EmailIdentity" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayRouteTableAssociation" + "$ref": "#/definitions/AWS_SecurityLake_DataLake" }, { - "$ref": "#/definitions/AWS_SNS_TopicPolicy" + "$ref": "#/definitions/AWS_AIOps_InvestigationGroup" }, { - "$ref": "#/definitions/AWS_Bedrock_GuardrailVersion" + "$ref": "#/definitions/AWS_CloudWatch_CompositeAlarm" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_Asset" + "$ref": "#/definitions/AWS_MediaLive_SignalMap" }, { - "$ref": "#/definitions/AWS_NeptuneGraph_Graph" + "$ref": "#/definitions/AWS_AppMesh_Route" }, { - "$ref": "#/definitions/AWS_VpcLattice_ResourcePolicy" + "$ref": "#/definitions/AWS_EC2_NetworkInsightsPath" }, { - "$ref": "#/definitions/AWS_KinesisAnalyticsV2_ApplicationOutput" + "$ref": "#/definitions/AWS_Glue_Trigger" }, { - "$ref": "#/definitions/AWS_EMR_Step" + "$ref": "#/definitions/AWS_ControlTower_EnabledControl" }, { - "$ref": "#/definitions/AWS_SupportApp_SlackWorkspaceConfiguration" + "$ref": "#/definitions/AWS_Route53Resolver_FirewallRuleGroupAssociation" }, { - "$ref": "#/definitions/AWS_Amplify_Domain" + "$ref": "#/definitions/AWS_AppRunner_VpcConnector" }, { - "$ref": "#/definitions/AWS_RolesAnywhere_TrustAnchor" + "$ref": "#/definitions/AWS_Grafana_Workspace" }, { - "$ref": "#/definitions/AWS_Route53Resolver_ResolverRule" + "$ref": "#/definitions/AWS_ApiGateway_RestApi" }, { - "$ref": "#/definitions/AWS_EC2_TrafficMirrorSession" + "$ref": "#/definitions/AWS_ApiGatewayV2_Model" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolDomain" + "$ref": "#/definitions/AWS_ACMPCA_Certificate" }, { - "$ref": "#/definitions/AWS_AppMesh_VirtualService" + "$ref": "#/definitions/AWS_SecurityHub_ProductSubscription" }, { - "$ref": "#/definitions/AWS_SecurityHub_SecurityControl" + "$ref": "#/definitions/AWS_ODB_CloudVmCluster" }, { - "$ref": "#/definitions/AWS_SSMContacts_ContactChannel" + "$ref": "#/definitions/AWS_Events_Connection" }, { - "$ref": "#/definitions/AWS_Glue_MLTransform" + "$ref": "#/definitions/AWS_OpenSearchServerless_LifecyclePolicy" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancing_LoadBalancer" + "$ref": "#/definitions/AWS_AppSync_FunctionConfiguration" }, { - "$ref": "#/definitions/AWS_Personalize_Schema" + "$ref": "#/definitions/AWS_GlobalAccelerator_CrossAccountAttachment" }, { - "$ref": "#/definitions/AWS_LakeFormation_PrincipalPermissions" + "$ref": "#/definitions/AWS_IoT_AccountAuditConfiguration" }, { - "$ref": "#/definitions/AWS_SES_MailManagerArchive" + "$ref": "#/definitions/AWS_WAF_WebACL" }, { - "$ref": "#/definitions/AWS_Connect_User" + "$ref": "#/definitions/AWS_S3Tables_TablePolicy" }, { - "$ref": "#/definitions/AWS_Route53Profiles_ProfileResourceAssociation" + "$ref": "#/definitions/AWS_MSK_Replicator" }, { - "$ref": "#/definitions/AWS_Lightsail_StaticIp" + "$ref": "#/definitions/AWS_FraudDetector_EntityType" }, { - "$ref": "#/definitions/AWS_Connect_IntegrationAssociation" + "$ref": "#/definitions/AWS_DataSync_LocationNFS" }, { - "$ref": "#/definitions/AWS_FraudDetector_Label" + "$ref": "#/definitions/AWS_Route53Resolver_OutpostResolver" }, { - "$ref": "#/definitions/AWS_CustomerProfiles_EventStream" + "$ref": "#/definitions/AWS_Organizations_Account" }, { - "$ref": "#/definitions/AWS_Omics_VariantStore" + "$ref": "#/definitions/AWS_HealthImaging_Datastore" }, { - "$ref": "#/definitions/AWS_EMR_InstanceFleetConfig" + "$ref": "#/definitions/AWS_QBusiness_DataAccessor" }, { - "$ref": "#/definitions/AWS_NeptuneGraph_PrivateGraphEndpoint" + "$ref": "#/definitions/AWS_XRay_Group" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_RouteResponse" + "$ref": "#/definitions/AWS_GameLift_MatchmakingRuleSet" }, { - "$ref": "#/definitions/AWS_S3Outposts_Bucket" + "$ref": "#/definitions/AWS_Notifications_ManagedNotificationAccountContactAssociation" }, { - "$ref": "#/definitions/AWS_Location_APIKey" + "$ref": "#/definitions/AWS_AppMesh_Mesh" }, { - "$ref": "#/definitions/AWS_Wisdom_AIPromptVersion" + "$ref": "#/definitions/AWS_Bedrock_IntelligentPromptRouter" }, { - "$ref": "#/definitions/AWS_DMS_ReplicationTask" + "$ref": "#/definitions/AWS_SecurityLake_SubscriberNotification" }, { - "$ref": "#/definitions/AWS_IoT_SecurityProfile" + "$ref": "#/definitions/AWS_MediaPackageV2_ChannelPolicy" }, { - "$ref": "#/definitions/AWS_EventSchemas_Discoverer" + "$ref": "#/definitions/AWS_ApiGateway_DomainNameV2" }, { - "$ref": "#/definitions/AWS_WAF_ByteMatchSet" + "$ref": "#/definitions/AWS_EC2_RouteServerEndpoint" }, { - "$ref": "#/definitions/AWS_Detective_MemberInvitation" + "$ref": "#/definitions/AWS_ApiGateway_ApiKey" }, { - "$ref": "#/definitions/AWS_EC2_GatewayRouteTableAssociation" + "$ref": "#/definitions/AWS_IVS_StorageConfiguration" }, { - "$ref": "#/definitions/AWS_EC2_SubnetCidrBlock" + "$ref": "#/definitions/AWS_S3_AccessGrantsInstance" }, { - "$ref": "#/definitions/AWS_XRay_ResourcePolicy" + "$ref": "#/definitions/AWS_EC2_FlowLog" }, { - "$ref": "#/definitions/AWS_EC2_IPAMScope" + "$ref": "#/definitions/AWS_ODB_CloudAutonomousVmCluster" }, { - "$ref": "#/definitions/AWS_AppSync_ApiKey" + "$ref": "#/definitions/AWS_M2_Environment" }, { - "$ref": "#/definitions/AWS_RefactorSpaces_Environment" + "$ref": "#/definitions/AWS_SNS_TopicPolicy" }, { - "$ref": "#/definitions/AWS_VpcLattice_ServiceNetworkResourceAssociation" + "$ref": "#/definitions/AWS_Logs_Integration" }, { - "$ref": "#/definitions/AWS_CloudFront_OriginRequestPolicy" + "$ref": "#/definitions/AWS_S3Tables_TableBucketPolicy" }, { - "$ref": "#/definitions/AWS_WAFRegional_RegexPatternSet" + "$ref": "#/definitions/AWS_GuardDuty_Master" }, { - "$ref": "#/definitions/AWS_CodeBuild_Project" + "$ref": "#/definitions/AWS_ACMPCA_Permission" }, { - "$ref": "#/definitions/AWS_EFS_FileSystem" + "$ref": "#/definitions/AWS_OpenSearchServerless_Index" }, { - "$ref": "#/definitions/AWS_Events_Rule" + "$ref": "#/definitions/AWS_CodeStarNotifications_NotificationRule" }, { - "$ref": "#/definitions/AWS_ImageBuilder_Workflow" + "$ref": "#/definitions/AWS_PinpointEmail_Identity" }, { - "$ref": "#/definitions/AWS_CloudFront_Function" + "$ref": "#/definitions/AWS_LakeFormation_PrincipalPermissions" }, { - "$ref": "#/definitions/AWS_M2_Application" + "$ref": "#/definitions/AWS_DSQL_Cluster" }, { - "$ref": "#/definitions/AWS_EC2_NetworkInterfaceAttachment" + "$ref": "#/definitions/AWS_MPA_ApprovalTeam" }, { - "$ref": "#/definitions/AWS_PCS_ComputeNodeGroup" + "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_ResourceAssociation" }, { - "$ref": "#/definitions/AWS_Batch_SchedulingPolicy" + "$ref": "#/definitions/AWS_Deadline_Queue" }, { - "$ref": "#/definitions/AWS_GuardDuty_Detector" + "$ref": "#/definitions/AWS_Forecast_DatasetGroup" }, { - "$ref": "#/definitions/AWS_CloudFront_VpcOrigin" + "$ref": "#/definitions/AWS_GameLift_ContainerFleet" }, { - "$ref": "#/definitions/AWS_DevOpsGuru_NotificationChannel" + "$ref": "#/definitions/AWS_CloudFront_VpcOrigin" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_Dashboard" + "$ref": "#/definitions/AWS_Route53RecoveryReadiness_RecoveryGroup" }, { - "$ref": "#/definitions/AWS_Comprehend_Flywheel" + "$ref": "#/definitions/AWS_Lambda_EventInvokeConfig" }, { - "$ref": "#/definitions/AWS_Config_OrganizationConformancePack" + "$ref": "#/definitions/AWS_Greengrass_ResourceDefinition" }, { - "$ref": "#/definitions/AWS_SSM_MaintenanceWindow" + "$ref": "#/definitions/AWS_Proton_EnvironmentTemplate" }, { - "$ref": "#/definitions/AWS_MediaConnect_BridgeOutput" + "$ref": "#/definitions/AWS_MediaTailor_ChannelPolicy" }, { - "$ref": "#/definitions/AWS_Lambda_EventSourceMapping" + "$ref": "#/definitions/AWS_Cognito_UserPoolIdentityProvider" }, { - "$ref": "#/definitions/AWS_Notifications_NotificationConfiguration" + "$ref": "#/definitions/AWS_Bedrock_FlowAlias" }, { - "$ref": "#/definitions/AWS_GuardDuty_IPSet" + "$ref": "#/definitions/AWS_Wisdom_AssistantAssociation" }, { - "$ref": "#/definitions/AWS_IoT_PolicyPrincipalAttachment" + "$ref": "#/definitions/AWS_MSK_VpcConnection" }, { - "$ref": "#/definitions/AWS_MediaTailor_SourceLocation" + "$ref": "#/definitions/AWS_GlobalAccelerator_Listener" }, { - "$ref": "#/definitions/AWS_Wisdom_AIGuardrail" + "$ref": "#/definitions/AWS_CloudTrail_Dashboard" }, { - "$ref": "#/definitions/AWS_KMS_ReplicaKey" + "$ref": "#/definitions/AWS_SecurityHub_Insight" }, { - "$ref": "#/definitions/AWS_Config_RemediationConfiguration" + "$ref": "#/definitions/AWS_EventSchemas_Registry" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolIdentityProvider" + "$ref": "#/definitions/AWS_Deadline_Monitor" }, { - "$ref": "#/definitions/AWS_Wisdom_AIAgent" + "$ref": "#/definitions/AWS_Route53_HostedZone" }, { - "$ref": "#/definitions/AWS_SES_ReceiptRule" + "$ref": "#/definitions/AWS_AppSync_ChannelNamespace" }, { - "$ref": "#/definitions/AWS_LakeFormation_DataCellsFilter" + "$ref": "#/definitions/AWS_MWAA_Environment" }, { - "$ref": "#/definitions/AWS_HealthImaging_Datastore" + "$ref": "#/definitions/AWS_AppSync_ApiCache" }, { - "$ref": "#/definitions/AWS_ResilienceHub_ResiliencyPolicy" + "$ref": "#/definitions/AWS_Config_DeliveryChannel" }, { - "$ref": "#/definitions/AWS_AppStream_StackUserAssociation" + "$ref": "#/definitions/AWS_IAM_ManagedPolicy" }, { - "$ref": "#/definitions/AWS_PCAConnectorAD_DirectoryRegistration" + "$ref": "#/definitions/AWS_FSx_DataRepositoryAssociation" }, { - "$ref": "#/definitions/AWS_GreengrassV2_ComponentVersion" + "$ref": "#/definitions/AWS_DataZone_DataSource" }, { - "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_Application" + "$ref": "#/definitions/AWS_Wisdom_MessageTemplateVersion" }, { - "$ref": "#/definitions/AWS_NetworkManager_LinkAssociation" + "$ref": "#/definitions/AWS_Bedrock_AgentAlias" }, { - "$ref": "#/definitions/AWS_DataBrew_Ruleset" + "$ref": "#/definitions/AWS_WAFv2_LoggingConfiguration" }, { - "$ref": "#/definitions/AWS_EntityResolution_IdMappingWorkflow" + "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_ListenerCertificate" }, { - "$ref": "#/definitions/AWS_Connect_Rule" + "$ref": "#/definitions/AWS_EKS_Cluster" }, { - "$ref": "#/definitions/AWS_Events_Connection" + "$ref": "#/definitions/AWS_SES_VdmAttributes" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_Listener" + "$ref": "#/definitions/AWS_CloudFormation_LambdaHook" }, { - "$ref": "#/definitions/AWS_EC2_CustomerGateway" + "$ref": "#/definitions/AWS_AmplifyUIBuilder_Theme" }, { - "$ref": "#/definitions/AWS_IAM_OIDCProvider" + "$ref": "#/definitions/AWS_SageMaker_ProcessingJob" }, { - "$ref": "#/definitions/AWS_Pinpoint_GCMChannel" + "$ref": "#/definitions/AWS_WAFRegional_RegexPatternSet" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayPeeringAttachment" + "$ref": "#/definitions/AWS_WAFRegional_SqlInjectionMatchSet" }, { - "$ref": "#/definitions/AWS_Route53RecoveryReadiness_Cell" + "$ref": "#/definitions/AWS_WAF_SizeConstraintSet" }, { - "$ref": "#/definitions/AWS_DataZone_SubscriptionTarget" + "$ref": "#/definitions/AWS_Evidently_Feature" }, { - "$ref": "#/definitions/AWS_MediaLive_CloudWatchAlarmTemplateGroup" + "$ref": "#/definitions/AWS_Cognito_UserPoolUICustomizationAttachment" }, { - "$ref": "#/definitions/AWS_Panorama_Package" + "$ref": "#/definitions/AWS_MemoryDB_ACL" }, { - "$ref": "#/definitions/AWS_ApiGateway_UsagePlan" + "$ref": "#/definitions/AWS_Route53RecoveryControl_SafetyRule" }, { - "$ref": "#/definitions/AWS_MediaLive_Channel" + "$ref": "#/definitions/AWS_EC2_VerifiedAccessInstance" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_TagOption" + "$ref": "#/definitions/AWS_KinesisAnalyticsV2_Application" }, { - "$ref": "#/definitions/AWS_FSx_DataRepositoryAssociation" + "$ref": "#/definitions/AWS_Amplify_Domain" }, { - "$ref": "#/definitions/AWS_ServiceDiscovery_Instance" + "$ref": "#/definitions/AWS_CloudFormation_Macro" }, { - "$ref": "#/definitions/AWS_DataSync_Task" + "$ref": "#/definitions/AWS_EC2_VPC" }, { - "$ref": "#/definitions/AWS_EntityResolution_PolicyStatement" + "$ref": "#/definitions/AWS_MediaLive_InputSecurityGroup" }, { - "$ref": "#/definitions/AWS_EC2_VPCGatewayAttachment" + "$ref": "#/definitions/AWS_Athena_CapacityReservation" }, { - "$ref": "#/definitions/AWS_EC2_NetworkInsightsPath" + "$ref": "#/definitions/AWS_IoT_PolicyPrincipalAttachment" }, { - "$ref": "#/definitions/AWS_EC2_NetworkInterface" + "$ref": "#/definitions/AWS_VpcLattice_Rule" }, { - "$ref": "#/definitions/AWS_Config_ConfigRule" + "$ref": "#/definitions/AWS_Glue_Schema" }, { - "$ref": "#/definitions/AWS_CleanRooms_IdMappingTable" + "$ref": "#/definitions/AWS_Greengrass_GroupVersion" }, { - "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_TrustStore" + "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_TargetGroup" }, { - "$ref": "#/definitions/AWS_MSK_VpcConnection" + "$ref": "#/definitions/AWS_IVSChat_Room" }, { - "$ref": "#/definitions/AWS_ECR_PullThroughCacheRule" + "$ref": "#/definitions/AWS_PCAConnectorAD_ServicePrincipalName" }, { - "$ref": "#/definitions/AWS_QBusiness_Index" + "$ref": "#/definitions/AWS_APS_Workspace" }, { - "$ref": "#/definitions/AWS_ManagedBlockchain_Member" + "$ref": "#/definitions/AWS_RDS_DBSubnetGroup" }, { - "$ref": "#/definitions/AWS_Redshift_EndpointAccess" + "$ref": "#/definitions/AWS_CleanRooms_ConfiguredTable" }, { - "$ref": "#/definitions/AWS_EFS_MountTarget" + "$ref": "#/definitions/AWS_ImageBuilder_DistributionConfiguration" }, { - "$ref": "#/definitions/AWS_SES_MailManagerRelay" + "$ref": "#/definitions/AWS_Route53RecoveryReadiness_ResourceSet" }, { - "$ref": "#/definitions/AWS_Glue_Classifier" + "$ref": "#/definitions/AWS_Cassandra_Table" }, { - "$ref": "#/definitions/AWS_OSIS_Pipeline" + "$ref": "#/definitions/AWS_VpcLattice_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_IoTWireless_Destination" + "$ref": "#/definitions/AWS_DataSync_Agent" }, { - "$ref": "#/definitions/AWS_GameLift_ContainerFleet" + "$ref": "#/definitions/AWS_EntityResolution_IdMappingWorkflow" }, { - "$ref": "#/definitions/AWS_EC2_SubnetNetworkAclAssociation" + "$ref": "#/definitions/AWS_ServiceCatalog_ServiceAction" }, { - "$ref": "#/definitions/AWS_QBusiness_Plugin" + "$ref": "#/definitions/AWS_NetworkManager_Site" }, { - "$ref": "#/definitions/AWS_Glue_Job" + "$ref": "#/definitions/AWS_EC2_CapacityReservationFleet" }, { - "$ref": "#/definitions/AWS_IoTSiteWise_Dataset" + "$ref": "#/definitions/AWS_SageMaker_MonitoringSchedule" }, { - "$ref": "#/definitions/AWS_DataSync_LocationNFS" + "$ref": "#/definitions/AWS_EC2_SecurityGroupVpcAssociation" }, { - "$ref": "#/definitions/AWS_Rekognition_StreamProcessor" + "$ref": "#/definitions/AWS_EC2_VPCBlockPublicAccessOptions" }, { - "$ref": "#/definitions/AWS_EC2_VPNGateway" + "$ref": "#/definitions/AWS_AppSync_DataSource" }, { - "$ref": "#/definitions/AWS_EMR_StudioSessionMapping" + "$ref": "#/definitions/AWS_Bedrock_FlowVersion" }, { - "$ref": "#/definitions/AWS_SecurityLake_SubscriberNotification" + "$ref": "#/definitions/AWS_FSx_StorageVirtualMachine" }, { - "$ref": "#/definitions/AWS_Connect_InstanceStorageConfig" + "$ref": "#/definitions/AWS_Omics_RunGroup" }, { - "$ref": "#/definitions/AWS_WAFv2_WebACLAssociation" + "$ref": "#/definitions/AWS_SecretsManager_Secret" }, { - "$ref": "#/definitions/AWS_DMS_Endpoint" + "$ref": "#/definitions/AWS_IoTWireless_WirelessGateway" }, { - "$ref": "#/definitions/AWS_Location_Tracker" + "$ref": "#/definitions/AWS_DirectoryService_SimpleAD" }, { - "$ref": "#/definitions/AWS_LakeFormation_Permissions" + "$ref": "#/definitions/AWS_OpsWorks_Stack" }, { - "$ref": "#/definitions/AWS_S3_AccessPoint" + "$ref": "#/definitions/AWS_Bedrock_Guardrail" }, { - "$ref": "#/definitions/AWS_Redshift_ScheduledAction" + "$ref": "#/definitions/AWS_RDS_DBInstance" }, { - "$ref": "#/definitions/AWS_SSM_MaintenanceWindowTask" + "$ref": "#/definitions/AWS_Omics_ReferenceStore" }, { - "$ref": "#/definitions/AWS_EC2_LocalGatewayRouteTable" + "$ref": "#/definitions/AWS_ControlTower_LandingZone" }, { - "$ref": "#/definitions/AWS_Amplify_App" + "$ref": "#/definitions/AWS_SageMaker_ModelQualityJobDefinition" }, { - "$ref": "#/definitions/AWS_Rekognition_Collection" + "$ref": "#/definitions/AWS_AppMesh_GatewayRoute" }, { - "$ref": "#/definitions/AWS_DataSync_LocationHDFS" + "$ref": "#/definitions/AWS_Connect_PhoneNumber" }, { - "$ref": "#/definitions/AWS_CloudFormation_ModuleDefaultVersion" + "$ref": "#/definitions/AWS_Events_EventBusPolicy" }, { - "$ref": "#/definitions/AWS_Batch_JobDefinition" + "$ref": "#/definitions/AWS_ApiGateway_ClientCertificate" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_Deployment" + "$ref": "#/definitions/AWS_WorkSpacesWeb_UserAccessLoggingSettings" }, { - "$ref": "#/definitions/AWS_DataZone_DomainUnit" + "$ref": "#/definitions/AWS_SES_MailManagerAddonInstance" }, { - "$ref": "#/definitions/AWS_Logs_LogAnomalyDetector" + "$ref": "#/definitions/AWS_AppStream_StackUserAssociation" }, { - "$ref": "#/definitions/AWS_QBusiness_DataSource" + "$ref": "#/definitions/AWS_Lambda_Permission" }, { - "$ref": "#/definitions/AWS_SageMaker_UserProfile" + "$ref": "#/definitions/AWS_Chatbot_MicrosoftTeamsChannelConfiguration" }, { - "$ref": "#/definitions/AWS_CodeBuild_SourceCredential" + "$ref": "#/definitions/AWS_CleanRooms_Membership" }, { - "$ref": "#/definitions/AWS_Glue_SecurityConfiguration" + "$ref": "#/definitions/AWS_IoTThingsGraph_FlowTemplate" }, { - "$ref": "#/definitions/AWS_EC2_SpotFleet" + "$ref": "#/definitions/AWS_SSMQuickSetup_ConfigurationManager" }, { - "$ref": "#/definitions/AWS_CustomerProfiles_Domain" + "$ref": "#/definitions/AWS_MediaPackage_Asset" }, { - "$ref": "#/definitions/AWS_Rbin_Rule" + "$ref": "#/definitions/AWS_IAM_InstanceProfile" }, { - "$ref": "#/definitions/AWS_ImageBuilder_ImagePipeline" + "$ref": "#/definitions/AWS_Macie_CustomDataIdentifier" }, { - "$ref": "#/definitions/AWS_AppSync_Api" + "$ref": "#/definitions/AWS_CloudFormation_HookVersion" }, { - "$ref": "#/definitions/AWS_CloudFormation_GuardHook" + "$ref": "#/definitions/AWS_PCAConnectorAD_Template" }, { - "$ref": "#/definitions/AWS_S3_MultiRegionAccessPointPolicy" + "$ref": "#/definitions/AWS_CloudTrail_EventDataStore" }, { - "$ref": "#/definitions/AWS_S3Outposts_Endpoint" + "$ref": "#/definitions/AWS_ElasticLoadBalancingV2_ListenerRule" }, { - "$ref": "#/definitions/AWS_ApiGatewayV2_VpcLink" + "$ref": "#/definitions/AWS_PinpointEmail_ConfigurationSetEventDestination" }, { - "$ref": "#/definitions/AWS_NetworkManager_ConnectPeer" + "$ref": "#/definitions/AWS_IoTWireless_DeviceProfile" }, { - "$ref": "#/definitions/AWS_Route53Profiles_Profile" + "$ref": "#/definitions/AWS_Transfer_Profile" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_Portal" + "$ref": "#/definitions/AWS_SecurityHub_Hub" }, { - "$ref": "#/definitions/AWS_ApiGateway_Method" + "$ref": "#/definitions/AWS_Kendra_Index" }, { - "$ref": "#/definitions/AWS_SageMaker_ModelPackage" + "$ref": "#/definitions/AWS_WAF_SqlInjectionMatchSet" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayRouteTablePropagation" + "$ref": "#/definitions/AWS_FraudDetector_Variable" }, { - "$ref": "#/definitions/AWS_EC2_EIP" + "$ref": "#/definitions/AWS_Route53Profiles_ProfileResourceAssociation" }, { - "$ref": "#/definitions/AWS_CloudFormation_ResourceDefaultVersion" + "$ref": "#/definitions/AWS_EC2_IPAM" }, { - "$ref": "#/definitions/AWS_AppConfig_ExtensionAssociation" + "$ref": "#/definitions/AWS_MediaLive_Input" }, { - "$ref": "#/definitions/AWS_ApiGateway_ClientCertificate" + "$ref": "#/definitions/AWS_StepFunctions_StateMachineVersion" }, { - "$ref": "#/definitions/AWS_EC2_LocalGatewayRouteTableVirtualInterfaceGroupAssociation" + "$ref": "#/definitions/AWS_WorkSpacesWeb_IdentityProvider" }, { - "$ref": "#/definitions/AWS_OpenSearchServerless_LifecyclePolicy" + "$ref": "#/definitions/AWS_Route53_CidrCollection" }, { - "$ref": "#/definitions/AWS_QLDB_Ledger" + "$ref": "#/definitions/AWS_Connect_ContactFlow" }, { - "$ref": "#/definitions/AWS_EC2_IPAMPoolCidr" + "$ref": "#/definitions/AWS_PCS_ComputeNodeGroup" }, { - "$ref": "#/definitions/AWS_BillingConductor_BillingGroup" + "$ref": "#/definitions/AWS_Deadline_QueueEnvironment" }, { - "$ref": "#/definitions/AWS_MemoryDB_User" + "$ref": "#/definitions/AWS_Glue_DataQualityRuleset" }, { - "$ref": "#/definitions/AWS_RoboMaker_SimulationApplicationVersion" + "$ref": "#/definitions/AWS_Cognito_IdentityPool" }, { - "$ref": "#/definitions/AWS_IoTWireless_WirelessDeviceImportTask" + "$ref": "#/definitions/AWS_AppStream_StackFleetAssociation" }, { - "$ref": "#/definitions/AWS_IoTWireless_DeviceProfile" + "$ref": "#/definitions/AWS_NetworkManager_TransitGatewayPeering" }, { - "$ref": "#/definitions/AWS_AppMesh_Mesh" + "$ref": "#/definitions/AWS_GuardDuty_IPSet" }, { - "$ref": "#/definitions/AWS_IAM_Group" + "$ref": "#/definitions/AWS_SSM_Association" }, { - "$ref": "#/definitions/AWS_IVS_RecordingConfiguration" + "$ref": "#/definitions/AWS_Pinpoint_APNSChannel" }, { - "$ref": "#/definitions/AWS_Greengrass_GroupVersion" + "$ref": "#/definitions/AWS_MediaLive_CloudWatchAlarmTemplate" }, { - "$ref": "#/definitions/AWS_GlobalAccelerator_Listener" + "$ref": "#/definitions/AWS_XRay_ResourcePolicy" }, { - "$ref": "#/definitions/AWS_Transfer_Workflow" + "$ref": "#/definitions/AWS_NetworkManager_SiteToSiteVpnAttachment" }, { - "$ref": "#/definitions/AWS_FraudDetector_Variable" + "$ref": "#/definitions/AWS_Panorama_ApplicationInstance" }, { - "$ref": "#/definitions/AWS_NetworkManager_Device" + "$ref": "#/definitions/AWS_CloudFront_MonitoringSubscription" }, { - "$ref": "#/definitions/AWS_Glue_UsageProfile" + "$ref": "#/definitions/AWS_PCAConnectorSCEP_Challenge" }, { - "$ref": "#/definitions/AWS_MediaTailor_ChannelPolicy" + "$ref": "#/definitions/AWS_EC2_TransitGatewayRouteTablePropagation" }, { - "$ref": "#/definitions/AWS_FMS_Policy" + "$ref": "#/definitions/AWS_Greengrass_ConnectorDefinition" }, { - "$ref": "#/definitions/AWS_EC2_SubnetRouteTableAssociation" + "$ref": "#/definitions/AWS_S3Express_AccessPoint" }, { - "$ref": "#/definitions/AWS_DAX_SubnetGroup" + "$ref": "#/definitions/AWS_Route53_DNSSEC" }, { - "$ref": "#/definitions/AWS_CodeStarConnections_Connection" + "$ref": "#/definitions/AWS_ApiGateway_BasePathMappingV2" }, { - "$ref": "#/definitions/AWS_ACMPCA_CertificateAuthorityActivation" + "$ref": "#/definitions/AWS_AppRunner_ObservabilityConfiguration" }, { - "$ref": "#/definitions/AWS_IVSChat_LoggingConfiguration" + "$ref": "#/definitions/AWS_EC2_ClientVpnRoute" }, { - "$ref": "#/definitions/AWS_Evidently_Launch" + "$ref": "#/definitions/AWS_DataPipeline_Pipeline" }, { - "$ref": "#/definitions/AWS_NetworkManager_CustomerGatewayAssociation" + "$ref": "#/definitions/AWS_CertificateManager_Account" }, { - "$ref": "#/definitions/AWS_MediaTailor_VodSource" + "$ref": "#/definitions/AWS_SecurityHub_AutomationRuleV2" }, { - "$ref": "#/definitions/AWS_ResourceExplorer2_View" + "$ref": "#/definitions/AWS_ServiceCatalog_AcceptedPortfolioShare" }, { - "$ref": "#/definitions/AWS_Timestream_Database" + "$ref": "#/definitions/AWS_Lex_BotAlias" }, { - "$ref": "#/definitions/AWS_SNS_Topic" + "$ref": "#/definitions/AWS_PinpointEmail_ConfigurationSet" }, { - "$ref": "#/definitions/AWS_IVS_StorageConfiguration" + "$ref": "#/definitions/AWS_EntityResolution_MatchingWorkflow" }, { - "$ref": "#/definitions/AWS_CloudTrail_Channel" + "$ref": "#/definitions/AWS_Amplify_App" }, { - "$ref": "#/definitions/AWS_RUM_AppMonitor" + "$ref": "#/definitions/AWS_DocDB_EventSubscription" }, { - "$ref": "#/definitions/AWS_QBusiness_WebExperience" + "$ref": "#/definitions/AWS_MediaConnect_Gateway" }, { - "$ref": "#/definitions/AWS_Wisdom_AIGuardrailVersion" + "$ref": "#/definitions/AWS_Notifications_ChannelAssociation" }, { - "$ref": "#/definitions/AWS_IAM_UserPolicy" + "$ref": "#/definitions/AWS_Pinpoint_InAppTemplate" }, { - "$ref": "#/definitions/AWS_SSO_ApplicationAssignment" + "$ref": "#/definitions/AWS_WAFv2_RegexPatternSet" }, { - "$ref": "#/definitions/AWS_Redshift_Integration" + "$ref": "#/definitions/AWS_FIS_TargetAccountConfiguration" }, { - "$ref": "#/definitions/AWS_Cassandra_Table" + "$ref": "#/definitions/AWS_PaymentCryptography_Key" }, { - "$ref": "#/definitions/AWS_Lex_BotAlias" + "$ref": "#/definitions/AWS_EC2_EIPAssociation" }, { - "$ref": "#/definitions/AWS_AmazonMQ_ConfigurationAssociation" + "$ref": "#/definitions/AWS_RDS_Integration" }, { - "$ref": "#/definitions/AWS_DynamoDB_Table" + "$ref": "#/definitions/AWS_ServiceDiscovery_Instance" }, { - "$ref": "#/definitions/AWS_MediaPackageV2_OriginEndpoint" + "$ref": "#/definitions/AWS_IoTFleetWise_Fleet" }, { - "$ref": "#/definitions/AWS_Kendra_Index" + "$ref": "#/definitions/AWS_DevOpsGuru_NotificationChannel" }, { - "$ref": "#/definitions/AWS_Logs_Delivery" + "$ref": "#/definitions/AWS_EMR_InstanceFleetConfig" }, { - "$ref": "#/definitions/AWS_IAM_GroupPolicy" + "$ref": "#/definitions/AWS_VpcLattice_ServiceNetworkVpcAssociation" }, { - "$ref": "#/definitions/AWS_SecurityHub_FindingAggregator" + "$ref": "#/definitions/AWS_Neptune_DBInstance" }, { - "$ref": "#/definitions/AWS_BCMDataExports_Export" + "$ref": "#/definitions/AWS_Lightsail_Certificate" }, { - "$ref": "#/definitions/AWS_ECR_RegistryPolicy" + "$ref": "#/definitions/AWS_Connect_SecurityProfile" }, { - "$ref": "#/definitions/AWS_Config_ConfigurationAggregator" + "$ref": "#/definitions/AWS_QBusiness_Retriever" }, { - "$ref": "#/definitions/AWS_DMS_ReplicationInstance" + "$ref": "#/definitions/AWS_Detective_Graph" }, { - "$ref": "#/definitions/AWS_ApiGateway_VpcLink" + "$ref": "#/definitions/AWS_S3Tables_Table" }, { - "$ref": "#/definitions/AWS_CE_AnomalySubscription" + "$ref": "#/definitions/AWS_Rekognition_Collection" }, { - "$ref": "#/definitions/AWS_GroundStation_Config" + "$ref": "#/definitions/AWS_AppConfig_Environment" }, { - "$ref": "#/definitions/AWS_MediaConnect_FlowSource" + "$ref": "#/definitions/AWS_Route53Resolver_ResolverEndpoint" }, { - "$ref": "#/definitions/AWS_Redshift_ClusterSecurityGroupIngress" + "$ref": "#/definitions/AWS_Notifications_NotificationHub" }, { - "$ref": "#/definitions/AWS_Connect_TaskTemplate" + "$ref": "#/definitions/AWS_AppFlow_Connector" }, { - "$ref": "#/definitions/AWS_CloudFront_MonitoringSubscription" + "$ref": "#/definitions/AWS_Location_APIKey" }, { - "$ref": "#/definitions/AWS_AmazonMQ_Configuration" + "$ref": "#/definitions/AWS_FMS_Policy" }, { - "$ref": "#/definitions/AWS_AppFlow_ConnectorProfile" + "$ref": "#/definitions/AWS_SecurityHub_AutomationRule" }, { - "$ref": "#/definitions/AWS_Backup_BackupSelection" + "$ref": "#/definitions/AWS_CloudFront_CachePolicy" }, { - "$ref": "#/definitions/AWS_PaymentCryptography_Alias" + "$ref": "#/definitions/AWS_IoTEvents_Input" }, { - "$ref": "#/definitions/AWS_Config_OrganizationConfigRule" + "$ref": "#/definitions/AWS_ApiGatewayV2_Integration" }, { - "$ref": "#/definitions/AWS_Shield_Protection" + "$ref": "#/definitions/AWS_EC2_TrafficMirrorTarget" }, { - "$ref": "#/definitions/AWS_IoT_MitigationAction" + "$ref": "#/definitions/AWS_ManagedBlockchain_Member" }, { - "$ref": "#/definitions/AWS_QBusiness_Permission" + "$ref": "#/definitions/AWS_Transfer_Server" }, { - "$ref": "#/definitions/AWS_CloudFormation_Stack" + "$ref": "#/definitions/AWS_ElasticLoadBalancing_LoadBalancer" }, { - "$ref": "#/definitions/AWS_Personalize_Solution" + "$ref": "#/definitions/AWS_ServiceCatalog_PortfolioPrincipalAssociation" }, { - "$ref": "#/definitions/AWS_Macie_CustomDataIdentifier" + "$ref": "#/definitions/AWS_Cognito_IdentityPoolRoleAttachment" }, { - "$ref": "#/definitions/AWS_RDS_OptionGroup" + "$ref": "#/definitions/AWS_LookoutMetrics_Alert" }, { - "$ref": "#/definitions/AWS_DocDB_EventSubscription" + "$ref": "#/definitions/AWS_EC2_InstanceConnectEndpoint" }, { - "$ref": "#/definitions/AWS_CloudFront_PublicKey" + "$ref": "#/definitions/AWS_CloudFront_OriginRequestPolicy" }, { - "$ref": "#/definitions/AWS_Macie_FindingsFilter" + "$ref": "#/definitions/AWS_CloudFormation_ResourceDefaultVersion" }, { - "$ref": "#/definitions/AWS_Greengrass_SubscriptionDefinitionVersion" + "$ref": "#/definitions/AWS_ServiceCatalog_ResourceUpdateConstraint" }, { - "$ref": "#/definitions/AWS_SSM_ResourceDataSync" + "$ref": "#/definitions/AWS_Config_OrganizationConfigRule" }, { - "$ref": "#/definitions/AWS_ResourceExplorer2_DefaultViewAssociation" + "$ref": "#/definitions/AWS_FMS_ResourceSet" }, { - "$ref": "#/definitions/AWS_WAFv2_LoggingConfiguration" + "$ref": "#/definitions/AWS_KafkaConnect_Connector" }, { - "$ref": "#/definitions/AWS_Route53_RecordSetGroup" + "$ref": "#/definitions/AWS_IoT_MitigationAction" }, { - "$ref": "#/definitions/AWS_WAF_Rule" + "$ref": "#/definitions/AWS_EC2_TransitGatewayConnectPeer" }, { - "$ref": "#/definitions/AWS_VpcLattice_ResourceConfiguration" + "$ref": "#/definitions/AWS_Events_Archive" }, { - "$ref": "#/definitions/AWS_PinpointEmail_DedicatedIpPool" + "$ref": "#/definitions/AWS_DMS_EventSubscription" }, { - "$ref": "#/definitions/AWS_LicenseManager_Grant" + "$ref": "#/definitions/AWS_LookoutVision_Project" }, { - "$ref": "#/definitions/AWS_NetworkManager_TransitGatewayPeering" + "$ref": "#/definitions/AWS_DataBrew_Job" }, { - "$ref": "#/definitions/AWS_KinesisVideo_SignalingChannel" + "$ref": "#/definitions/AWS_SES_Template" }, { - "$ref": "#/definitions/AWS_LookoutMetrics_AnomalyDetector" + "$ref": "#/definitions/AWS_DMS_InstanceProfile" }, { - "$ref": "#/definitions/AWS_WorkSpacesWeb_UserAccessLoggingSettings" + "$ref": "#/definitions/AWS_WorkSpacesWeb_IpAccessSettings" }, { - "$ref": "#/definitions/AWS_Lambda_Url" + "$ref": "#/definitions/AWS_Shield_Protection" }, { - "$ref": "#/definitions/AWS_VerifiedPermissions_IdentitySource" + "$ref": "#/definitions/AWS_QuickSight_Dashboard" }, { - "$ref": "#/definitions/AWS_EC2_ClientVpnEndpoint" + "$ref": "#/definitions/AWS_IoTEvents_DetectorModel" }, { - "$ref": "#/definitions/AWS_IoTTwinMaker_Scene" + "$ref": "#/definitions/AWS_Bedrock_DataSource" }, { - "$ref": "#/definitions/AWS_WAFRegional_ByteMatchSet" + "$ref": "#/definitions/AWS_Connect_Queue" }, { - "$ref": "#/definitions/AWS_Cognito_UserPoolUser" + "$ref": "#/definitions/AWS_MediaLive_SdiSource" }, { - "$ref": "#/definitions/AWS_DMS_InstanceProfile" + "$ref": "#/definitions/AWS_VpcLattice_Listener" }, { - "$ref": "#/definitions/AWS_NetworkFirewall_VpcEndpointAssociation" + "$ref": "#/definitions/AWS_VoiceID_Domain" }, { - "$ref": "#/definitions/AWS_IAM_InstanceProfile" + "$ref": "#/definitions/AWS_LakeFormation_TagAssociation" }, { - "$ref": "#/definitions/AWS_SES_ConfigurationSet" + "$ref": "#/definitions/AWS_EC2_VerifiedAccessEndpoint" }, { - "$ref": "#/definitions/AWS_IAM_AccessKey" + "$ref": "#/definitions/AWS_Batch_SchedulingPolicy" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastGroupMember" + "$ref": "#/definitions/AWS_ImageBuilder_ContainerRecipe" }, { - "$ref": "#/definitions/AWS_Greengrass_SubscriptionDefinition" + "$ref": "#/definitions/AWS_Connect_UserHierarchyStructure" }, { - "$ref": "#/definitions/AWS_ServiceCatalogAppRegistry_ResourceAssociation" + "$ref": "#/definitions/AWS_CodeArtifact_Domain" }, { - "$ref": "#/definitions/AWS_ECS_ClusterCapacityProviderAssociations" + "$ref": "#/definitions/AWS_IoT_JobTemplate" }, { - "$ref": "#/definitions/AWS_EC2_EIPAssociation" + "$ref": "#/definitions/AWS_CloudFront_RealtimeLogConfig" }, { - "$ref": "#/definitions/AWS_Proton_EnvironmentAccountConnection" + "$ref": "#/definitions/AWS_EC2_NetworkInsightsAnalysis" }, { - "$ref": "#/definitions/AWS_EC2_PlacementGroup" + "$ref": "#/definitions/AWS_EC2_RouteServerAssociation" }, { - "$ref": "#/definitions/AWS_Route53RecoveryControl_RoutingControl" + "$ref": "#/definitions/AWS_ConnectCampaigns_Campaign" }, { - "$ref": "#/definitions/AWS_EC2_VerifiedAccessGroup" + "$ref": "#/definitions/AWS_AppConfig_Deployment" }, { - "$ref": "#/definitions/AWS_IoT_BillingGroup" + "$ref": "#/definitions/AWS_AppRunner_VpcIngressConnection" }, { - "$ref": "#/definitions/AWS_OpsWorks_Stack" + "$ref": "#/definitions/AWS_IoTWireless_MulticastGroup" }, { - "$ref": "#/definitions/AWS_S3Tables_TableBucket" + "$ref": "#/definitions/AWS_RAM_ResourceShare" }, { - "$ref": "#/definitions/AWS_Connect_ContactFlowVersion" + "$ref": "#/definitions/AWS_IoTFleetWise_ModelManifest" }, { - "$ref": "#/definitions/AWS_GlobalAccelerator_CrossAccountAttachment" + "$ref": "#/definitions/AWS_IoT_CertificateProvider" }, { - "$ref": "#/definitions/AWS_IVS_PublicKey" + "$ref": "#/definitions/AWS_SupportApp_AccountAlias" }, { - "$ref": "#/definitions/AWS_Glue_CustomEntityType" + "$ref": "#/definitions/AWS_PCAConnectorAD_DirectoryRegistration" }, { - "$ref": "#/definitions/AWS_Synthetics_Canary" + "$ref": "#/definitions/AWS_MediaLive_EventBridgeRuleTemplateGroup" }, { - "$ref": "#/definitions/AWS_CodePipeline_Webhook" + "$ref": "#/definitions/AWS_EC2_TransitGateway" }, { - "$ref": "#/definitions/AWS_MediaTailor_PlaybackConfiguration" + "$ref": "#/definitions/AWS_Athena_DataCatalog" }, { - "$ref": "#/definitions/AWS_QuickSight_DataSource" + "$ref": "#/definitions/AWS_MSK_ClusterPolicy" }, { - "$ref": "#/definitions/AWS_RDS_DBProxy" + "$ref": "#/definitions/AWS_Detective_MemberInvitation" }, { - "$ref": "#/definitions/AWS_ECR_Repository" + "$ref": "#/definitions/AWS_DataBrew_Dataset" }, { - "$ref": "#/definitions/AWS_OpenSearchServerless_AccessPolicy" + "$ref": "#/definitions/AWS_Bedrock_ApplicationInferenceProfile" }, { - "$ref": "#/definitions/AWS_Bedrock_Guardrail" + "$ref": "#/definitions/AWS_Amplify_Branch" }, { - "$ref": "#/definitions/AWS_AppIntegrations_Application" + "$ref": "#/definitions/AWS_WAF_XssMatchSet" }, { - "$ref": "#/definitions/AWS_SES_ConfigurationSetEventDestination" + "$ref": "#/definitions/AWS_CloudFormation_TypeActivation" }, { - "$ref": "#/definitions/AWS_Pinpoint_APNSSandboxChannel" + "$ref": "#/definitions/AWS_XRay_SamplingRule" }, { - "$ref": "#/definitions/AWS_WAFRegional_SqlInjectionMatchSet" + "$ref": "#/definitions/AWS_RDS_DBProxy" }, { - "$ref": "#/definitions/AWS_RolesAnywhere_CRL" + "$ref": "#/definitions/AWS_VpcLattice_ServiceNetworkResourceAssociation" }, { - "$ref": "#/definitions/AWS_Neptune_DBParameterGroup" + "$ref": "#/definitions/AWS_SecurityHub_OrganizationConfiguration" }, { - "$ref": "#/definitions/AWS_Proton_ServiceTemplate" + "$ref": "#/definitions/AWS_IoTWireless_WirelessDeviceImportTask" }, { - "$ref": "#/definitions/AWS_DMS_DataMigration" + "$ref": "#/definitions/AWS_EC2_VPNGateway" }, { - "$ref": "#/definitions/AWS_SES_MailManagerTrafficPolicy" + "$ref": "#/definitions/AWS_S3_Bucket" }, { - "$ref": "#/definitions/AWS_ApplicationSignals_Discovery" + "$ref": "#/definitions/AWS_EMR_Step" }, { - "$ref": "#/definitions/AWS_Evidently_Project" + "$ref": "#/definitions/AWS_Chatbot_SlackChannelConfiguration" }, { - "$ref": "#/definitions/AWS_NetworkManager_DirectConnectGatewayAttachment" + "$ref": "#/definitions/AWS_ApiGateway_Deployment" }, { - "$ref": "#/definitions/AWS_AppTest_TestCase" + "$ref": "#/definitions/AWS_GroundStation_Config" }, { - "$ref": "#/definitions/AWS_Omics_AnnotationStore" + "$ref": "#/definitions/AWS_Lightsail_Instance" }, { - "$ref": "#/definitions/AWS_SageMaker_Pipeline" + "$ref": "#/definitions/AWS_IoT_ThingGroup" }, { - "$ref": "#/definitions/AWS_IoTAnalytics_Datastore" + "$ref": "#/definitions/AWS_DMS_ReplicationInstance" }, { - "$ref": "#/definitions/AWS_Deadline_QueueLimitAssociation" + "$ref": "#/definitions/AWS_CustomerProfiles_EventTrigger" }, { - "$ref": "#/definitions/AWS_Backup_BackupPlan" + "$ref": "#/definitions/AWS_Logs_QueryDefinition" }, { - "$ref": "#/definitions/AWS_CloudFormation_TypeActivation" + "$ref": "#/definitions/AWS_WorkSpacesWeb_NetworkSettings" }, { - "$ref": "#/definitions/AWS_Kinesis_ResourcePolicy" + "$ref": "#/definitions/AWS_IoTWireless_WirelessDevice" }, { - "$ref": "#/definitions/AWS_CloudFormation_ResourceVersion" + "$ref": "#/definitions/AWS_RolesAnywhere_Profile" }, { - "$ref": "#/definitions/AWS_SageMaker_Workteam" + "$ref": "#/definitions/AWS_AutoScaling_ScalingPolicy" }, { - "$ref": "#/definitions/AWS_VpcLattice_Rule" + "$ref": "#/definitions/AWS_Deadline_LicenseEndpoint" }, { - "$ref": "#/definitions/AWS_DataPipeline_Pipeline" + "$ref": "#/definitions/AWS_Batch_ServiceEnvironment" }, { - "$ref": "#/definitions/AWS_RDS_GlobalCluster" + "$ref": "#/definitions/AWS_Greengrass_SubscriptionDefinition" }, { - "$ref": "#/definitions/AWS_LookoutMetrics_Alert" + "$ref": "#/definitions/AWS_Greengrass_FunctionDefinitionVersion" }, { - "$ref": "#/definitions/AWS_Budgets_BudgetsAction" + "$ref": "#/definitions/AWS_GuardDuty_ThreatIntelSet" }, { - "$ref": "#/definitions/AWS_EC2_LocalGatewayRoute" + "$ref": "#/definitions/AWS_CE_AnomalySubscription" }, { - "$ref": "#/definitions/AWS_SES_MailManagerIngressPoint" + "$ref": "#/definitions/AWS_CustomerProfiles_CalculatedAttributeDefinition" }, { - "$ref": "#/definitions/AWS_MSK_Cluster" + "$ref": "#/definitions/AWS_Route53RecoveryReadiness_ReadinessCheck" }, { - "$ref": "#/definitions/AWS_Route53Profiles_ProfileAssociation" + "$ref": "#/definitions/AWS_BCMDataExports_Export" }, { - "$ref": "#/definitions/AWS_EC2_VPCEndpointService" + "$ref": "#/definitions/AWS_Omics_WorkflowVersion" }, { - "$ref": "#/definitions/AWS_ApplicationAutoScaling_ScalableTarget" + "$ref": "#/definitions/AWS_ApiGateway_VpcLink" }, { - "$ref": "#/definitions/AWS_CodeStar_GitHubRepository" + "$ref": "#/definitions/AWS_MediaPackageV2_OriginEndpointPolicy" }, { - "$ref": "#/definitions/AWS_Invoicing_InvoiceUnit" + "$ref": "#/definitions/AWS_Shield_DRTAccess" }, { - "$ref": "#/definitions/AWS_Connect_EvaluationForm" + "$ref": "#/definitions/AWS_CloudFront_KeyValueStore" }, { - "$ref": "#/definitions/AWS_ApiGateway_DocumentationPart" + "$ref": "#/definitions/AWS_ApiGateway_BasePathMapping" }, { - "$ref": "#/definitions/AWS_Cassandra_Keyspace" + "$ref": "#/definitions/AWS_SageMaker_FeatureGroup" }, { - "$ref": "#/definitions/AWS_ServiceCatalog_ServiceActionAssociation" + "$ref": "#/definitions/AWS_GreengrassV2_Deployment" }, { - "$ref": "#/definitions/AWS_Lightsail_Certificate" + "$ref": "#/definitions/AWS_LakeFormation_DataCellsFilter" }, { - "$ref": "#/definitions/AWS_Route53Resolver_ResolverRuleAssociation" + "$ref": "#/definitions/AWS_Glue_MLTransform" }, { - "$ref": "#/definitions/AWS_FraudDetector_Outcome" + "$ref": "#/definitions/AWS_AppFlow_Flow" }, { - "$ref": "#/definitions/AWS_EC2_TransitGatewayMulticastDomain" + "$ref": "#/definitions/AWS_Pinpoint_BaiduChannel" }, { - "$ref": "#/definitions/AWS_IVS_Channel" + "$ref": "#/definitions/AWS_KafkaConnect_CustomPlugin" }, { - "$ref": "#/definitions/AWS_EC2_VPCEndpoint" + "$ref": "#/definitions/AWS_EKS_PodIdentityAssociation" }, { - "$ref": "#/definitions/AWS_Logs_Destination" + "$ref": "#/definitions/AWS_NetworkManager_CoreNetwork" }, { - "$ref": "#/definitions/AWS_Signer_ProfilePermission" + "$ref": "#/definitions/AWS_Connect_EvaluationForm" }, { - "$ref": "#/definitions/AWS_Connect_SecurityProfile" + "$ref": "#/definitions/AWS_Inspector_AssessmentTemplate" }, { - "$ref": "#/definitions/AWS_BackupGateway_Hypervisor" + "$ref": "#/definitions/AWS_EC2_VPCEndpointServicePermissions" }, { - "$ref": "#/definitions/AWS_OpsWorks_Volume" + "$ref": "#/definitions/AWS_IoT_SoftwarePackageVersion" }, { - "$ref": "#/definitions/AWS_ServiceDiscovery_HttpNamespace" + "$ref": "#/definitions/AWS_Route53RecoveryControl_Cluster" }, { - "$ref": "#/definitions/AWS_Lightsail_Bucket" + "$ref": "#/definitions/AWS_CodePipeline_Pipeline" }, { - "$ref": "#/definitions/AWS_WAFRegional_SizeConstraintSet" + "$ref": "#/definitions/AWS_CustomerProfiles_Integration" }, { - "$ref": "#/definitions/AWS_RoboMaker_Robot" + "$ref": "#/definitions/AWS_EC2_EC2Fleet" }, { - "$ref": "#/definitions/AWS_Kendra_DataSource" + "$ref": "#/definitions/AWS_Logs_DeliverySource" }, { - "$ref": "#/definitions/AWS_EMRContainers_VirtualCluster" + "$ref": "#/definitions/AWS_DeviceFarm_DevicePool" }, { - "$ref": "#/definitions/AWS_S3Express_DirectoryBucket" + "$ref": "#/definitions/AWS_DeviceFarm_VPCEConfiguration" }, { - "$ref": "#/definitions/AWS_DeviceFarm_Project" + "$ref": "#/definitions/AWS_GameLiftStreams_StreamGroup" }, { - "$ref": "#/definitions/AWS_GameLiftStreams_StreamGroup" + "$ref": "#/definitions/AWS_DeviceFarm_Project" }, { "$ref": "#/definitions/AWS_DeviceFarm_TestGridProject" }, { - "$ref": "#/definitions/AWS_GameLiftStreams_Application" + "$ref": "#/definitions/AWS_DeviceFarm_NetworkProfile" }, { - "$ref": "#/definitions/AWS_DeviceFarm_InstanceProfile" + "$ref": "#/definitions/AWS_EC2_IpPoolRouteTableAssociation" }, { - "$ref": "#/definitions/AWS_DeviceFarm_DevicePool" + "$ref": "#/definitions/AWS_GameLiftStreams_Application" }, { - "$ref": "#/definitions/AWS_DeviceFarm_VPCEConfiguration" + "$ref": "#/definitions/AWS_DeviceFarm_InstanceProfile" }, { - "$ref": "#/definitions/AWS_DeviceFarm_NetworkProfile" + "$ref": "#/definitions/AWS_IoT_EncryptionConfiguration" } ] } diff --git a/server/schema/resources/aws-accessanalyzer-analyzer.json b/server/schema/resources/aws-accessanalyzer-analyzer.json index ff661705..e8c1d876 100644 --- a/server/schema/resources/aws-accessanalyzer-analyzer.json +++ b/server/schema/resources/aws-accessanalyzer-analyzer.json @@ -142,6 +142,69 @@ "additionalProperties": false, "markdownDescription": "The criteria for an analysis rule for an analyzer.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "InternalAccessAnalysisRuleCriteria": { + "description": "The criteria for an analysis rule for an internal access analyzer.", + "type": "object", + "properties": { + "AccountIds": { + "description": "A list of AWS account IDs to apply to the internal access analysis rule criteria. Account IDs can only be applied to the analysis rule criteria for organization-level analyzers and cannot include the organization owner account.", + "type": "array", + "insertionOrder": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "A list of AWS account IDs to apply to the internal access analysis rule criteria. Account IDs can only be applied to the analysis rule criteria for organization-level analyzers and cannot include the organization owner account.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ResourceArns": { + "description": "A list of resource ARNs to apply to the internal access analysis rule criteria. The analyzer will only generate findings for resources that match these ARNs.", + "type": "array", + "insertionOrder": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "A list of resource ARNs to apply to the internal access analysis rule criteria. The analyzer will only generate findings for resources that match these ARNs.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ResourceTypes": { + "description": "A list of resource types to apply to the internal access analysis rule criteria. The analyzer will only generate findings for resources of these types.", + "type": "array", + "insertionOrder": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "A list of resource types to apply to the internal access analysis rule criteria. The analyzer will only generate findings for resources of these types.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "The criteria for an analysis rule for an internal access analyzer.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InternalAccessConfiguration": { + "description": "Specifies the configuration of an internal access analyzer for an AWS organization or account. This configuration determines how the analyzer evaluates internal access within your AWS environment.", + "type": "object", + "properties": { + "InternalAccessAnalysisRule": { + "description": "Contains information about analysis rules for the internal access analyzer. Analysis rules determine which entities will generate findings based on the criteria you define when you create the rule.", + "type": "object", + "properties": { + "Inclusions": { + "description": "A list of rules for the internal access analyzer containing criteria to include in analysis. Only resources that meet the rule criteria will generate findings.", + "type": "array", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/InternalAccessAnalysisRuleCriteria" + }, + "markdownDescription": "A list of rules for the internal access analyzer containing criteria to include in analysis. Only resources that meet the rule criteria will generate findings.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "Contains information about analysis rules for the internal access analyzer. Analysis rules determine which entities will generate findings based on the criteria you define when you create the rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "Specifies the configuration of an internal access analyzer for an AWS organization or account. This configuration determines how the analyzer evaluates internal access within your AWS environment.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "UnusedAccessConfiguration": { "description": "The Configuration for Unused Access Analyzer", "type": "object", @@ -210,11 +273,11 @@ "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "Type": { - "description": "The type of the analyzer, must be one of ACCOUNT, ORGANIZATION, ACCOUNT_UNUSED_ACCESS or ORGANIZATION_UNUSED_ACCESS", + "description": "The type of the analyzer, must be one of ACCOUNT, ORGANIZATION, ACCOUNT_INTERNAL_ACCESS, ORGANIZATION_INTERNAL_ACCESS, ACCOUNT_UNUSED_ACCESS and ORGANIZATION_UNUSED_ACCESS", "type": "string", "minLength": 0, "maxLength": 1024, - "markdownDescription": "The type of the analyzer, must be one of ACCOUNT, ORGANIZATION, ACCOUNT_UNUSED_ACCESS or ORGANIZATION_UNUSED_ACCESS\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nUpdate requires: Replacement\n" + "markdownDescription": "The type of the analyzer, must be one of ACCOUNT, ORGANIZATION, ACCOUNT_INTERNAL_ACCESS, ORGANIZATION_INTERNAL_ACCESS, ACCOUNT_UNUSED_ACCESS and ORGANIZATION_UNUSED_ACCESS\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nUpdate requires: Replacement\n" }, "AnalyzerConfiguration": { "description": "The configuration for the analyzer", @@ -222,6 +285,9 @@ "properties": { "UnusedAccessConfiguration": { "$ref": "#/definitions/UnusedAccessConfiguration" + }, + "InternalAccessConfiguration": { + "$ref": "#/definitions/InternalAccessConfiguration" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-aiops-investigationgroup.json b/server/schema/resources/aws-aiops-investigationgroup.json new file mode 100644 index 00000000..e2dff899 --- /dev/null +++ b/server/schema/resources/aws-aiops-investigationgroup.json @@ -0,0 +1,302 @@ +{ + "typeName": "AWS::AIOps::InvestigationGroup", + "description": "Definition of AWS::AIOps::InvestigationGroup Resource Type", + "primaryIdentifier": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "readOnlyProperties": [ + "/properties/CreatedBy", + "/properties/CreatedAt", + "/properties/LastModifiedBy", + "/properties/LastModifiedAt", + "/properties/Arn" + ], + "createOnlyProperties": [ + "/properties/Name", + "/properties/RetentionInDays" + ], + "definitions": { + "RoleArn": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "description": "The Investigation Role's ARN.", + "markdownDescription": "The Investigation Role's ARN.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "StringWithPatternAndLengthLimits": { + "type": "string", + "maxLength": 512, + "minLength": 1, + "description": "User friendly name for resources.", + "markdownDescription": "User friendly name for resources.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + }, + "Timestamp": { + "type": "string", + "description": "The timestamp value.", + "markdownDescription": "The timestamp value.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "InvestigationGroupArn": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "description": "The Investigation Group's ARN.", + "markdownDescription": "The Investigation Group's ARN.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "ChatbotNotificationChannel": { + "type": "object", + "properties": { + "SNSTopicArn": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "ChatConfigurationArns": { + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CrossAccountConfiguration": { + "type": "object", + "properties": { + "SourceRoleArn": { + "$ref": "#/definitions/RoleArn" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EncryptionConfigMap": { + "type": "object", + "properties": { + "EncryptionConfigurationType": { + "type": "string", + "maxLength": 128, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "KmsKeyId": { + "type": "string", + "maxLength": 256, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "maxLength": 128, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "maxLength": 256, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "RoleArn": { + "$ref": "#/definitions/RoleArn" + }, + "Name": { + "$ref": "#/definitions/StringWithPatternAndLengthLimits" + }, + "CreatedBy": { + "$ref": "#/definitions/StringWithPatternAndLengthLimits" + }, + "CreatedAt": { + "$ref": "#/definitions/Timestamp" + }, + "LastModifiedBy": { + "$ref": "#/definitions/StringWithPatternAndLengthLimits" + }, + "LastModifiedAt": { + "$ref": "#/definitions/StringWithPatternAndLengthLimits" + }, + "Arn": { + "$ref": "#/definitions/InvestigationGroupArn" + }, + "RetentionInDays": { + "type": "integer", + "description": "The number of days to retain the investigation group", + "markdownDescription": "The number of days to retain the investigation group\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "EncryptionConfig": { + "$ref": "#/definitions/EncryptionConfigMap" + }, + "InvestigationGroupPolicy": { + "type": "string", + "description": "Investigation Group policy", + "markdownDescription": "Investigation Group policy\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "IsCloudTrailEventHistoryEnabled": { + "type": "boolean", + "description": "Flag to enable cloud trail history", + "markdownDescription": "Flag to enable cloud trail history\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "TagKeyBoundaries": { + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "type": "string", + "maxLength": 200, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 200 \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ChatbotNotificationChannels": { + "description": "An array of key-value pairs of notification channels to apply to this resource.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/ChatbotNotificationChannel" + }, + "markdownDescription": "An array of key-value pairs of notification channels to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "CrossAccountConfigurations": { + "description": "An array of cross account configurations.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CrossAccountConfiguration" + }, + "markdownDescription": "An array of cross account configurations.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "aiops:TagResource", + "aiops:UntagResource", + "aiops:ListTagsForResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "aiops:CreateInvestigationGroup", + "aiops:GetInvestigationGroup", + "aiops:GetInvestigationGroupPolicy", + "aiops:PutInvestigationGroupPolicy", + "aiops:TagResource", + "aiops:ListTagsForResource", + "iam:PassRole", + "kms:DescribeKey", + "kms:ListAliases", + "kms:Decrypt", + "kms:Encrypt", + "kms:GenerateDataKey" + ] + }, + "read": { + "permissions": [ + "aiops:GetInvestigationGroup", + "aiops:GetInvestigationGroupPolicy", + "aiops:ListTagsForResource", + "kms:DescribeKey", + "kms:ListAliases", + "kms:Decrypt", + "kms:Encrypt" + ] + }, + "update": { + "permissions": [ + "aiops:GetInvestigationGroup", + "aiops:UpdateInvestigationGroup", + "aiops:GetInvestigationGroupPolicy", + "aiops:PutInvestigationGroupPolicy", + "aiops:DeleteInvestigationGroupPolicy", + "aiops:TagResource", + "aiops:UntagResource", + "aiops:ListTagsForResource", + "iam:PassRole", + "kms:DescribeKey", + "kms:ListAliases", + "kms:Decrypt", + "kms:Encrypt", + "kms:GenerateDataKey" + ] + }, + "delete": { + "permissions": [ + "aiops:DeleteInvestigationGroup", + "aiops:GetInvestigationGroup", + "aiops:DeleteInvestigationGroupPolicy", + "aiops:GetInvestigationGroupPolicy", + "aiops:UntagResource", + "kms:DescribeKey", + "kms:ListAliases" + ] + }, + "list": { + "permissions": [ + "aiops:ListInvestigationGroups", + "kms:DescribeKey", + "kms:ListAliases" + ] + } + }, + "additionalProperties": false, + "attributes": { + "CreatedBy": { + "$ref": "#/definitions/StringWithPatternAndLengthLimits" + }, + "CreatedAt": { + "$ref": "#/definitions/Timestamp" + }, + "LastModifiedBy": { + "$ref": "#/definitions/StringWithPatternAndLengthLimits" + }, + "LastModifiedAt": { + "$ref": "#/definitions/StringWithPatternAndLengthLimits" + }, + "Arn": { + "$ref": "#/definitions/InvestigationGroupArn" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-amazonmq-broker.json b/server/schema/resources/aws-amazonmq-broker.json index 442ad0ec..e580a453 100644 --- a/server/schema/resources/aws-amazonmq-broker.json +++ b/server/schema/resources/aws-amazonmq-broker.json @@ -112,6 +112,15 @@ "Logs": { "$ref": "#/definitions/LogList" }, + "ConsoleURLs": { + "type": "array", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, "ConfigurationId": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" @@ -256,6 +265,10 @@ "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, + "ConsoleAccess": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, "Username": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" @@ -269,14 +282,6 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "ConsoleAccess": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "JolokiaApiAccess": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, "Password": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" @@ -392,6 +397,7 @@ ], "readOnlyProperties": [ "/properties/IpAddresses", + "/properties/ConsoleURLs", "/properties/Id", "/properties/MqttEndpoints", "/properties/OpenWireEndpoints", @@ -434,6 +440,15 @@ "type": "integer", "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" }, + "ConsoleURLs": { + "type": "array", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, "ConfigurationId": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" diff --git a/server/schema/resources/aws-amazonmq-configurationassociation.json b/server/schema/resources/aws-amazonmq-configurationassociation.json index f6e348ab..8f1c17d3 100644 --- a/server/schema/resources/aws-amazonmq-configurationassociation.json +++ b/server/schema/resources/aws-amazonmq-configurationassociation.json @@ -5,11 +5,13 @@ "properties": { "Id": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "description": "The ID of the ConfigurationAssociation Resource", + "markdownDescription": "The ID of the ConfigurationAssociation Resource\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "Broker": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "description": "ID of the Broker that the configuration should be applied to", + "markdownDescription": "ID of the Broker that the configuration should be applied to\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "Configuration": { "$ref": "#/definitions/ConfigurationId" @@ -22,11 +24,13 @@ "properties": { "Revision": { "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "description": "Revision of the Configuration to apply to a Broker", + "markdownDescription": "Revision of the Configuration to apply to a Broker\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, "Id": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "description": "ID of the Configuration to apply to a Broker", + "markdownDescription": "ID of the Configuration to apply to a Broker\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, "required": [ @@ -36,23 +40,48 @@ "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, + "tagging": { + "taggable": false + }, "required": [ "Configuration", "Broker" ], - "createOnlyProperties": [ - "/properties/Broker" - ], "primaryIdentifier": [ "/properties/Id" ], + "createOnlyProperties": [ + "/properties/Broker" + ], "readOnlyProperties": [ "/properties/Id" ], + "handlers": { + "create": { + "permissions": [ + "mq:DescribeBroker", + "mq:UpdateBroker", + "mq:RebootBroker" + ] + }, + "update": { + "permissions": [ + "mq:UpdateBroker", + "mq:RebootBroker" + ] + }, + "delete": { + "permissions": [ + "mq:UpdateBroker", + "mq:RebootBroker" + ] + } + }, "attributes": { "Id": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "description": "The ID of the ConfigurationAssociation Resource", + "markdownDescription": "The ID of the ConfigurationAssociation Resource\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-amplify-app.json b/server/schema/resources/aws-amplify-app.json index 7505bb64..239ce9a2 100644 --- a/server/schema/resources/aws-amplify-app.json +++ b/server/schema/resources/aws-amplify-app.json @@ -122,6 +122,9 @@ "$ref": "#/definitions/Tag" }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "JobConfig": { + "$ref": "#/definitions/JobConfig" } }, "definitions": { @@ -235,6 +238,25 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "JobConfig": { + "type": "object", + "additionalProperties": false, + "properties": { + "BuildComputeType": { + "type": "string", + "enum": [ + "STANDARD_8GB", + "LARGE_16GB", + "XLARGE_72GB" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: STANDARD_8GB | LARGE_16GB | XLARGE_72GB \nUpdate requires: No interruption\n" + } + }, + "required": [ + "BuildComputeType" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "CustomRule": { "type": "object", "additionalProperties": false, diff --git a/server/schema/resources/aws-apigateway-restapi.json b/server/schema/resources/aws-apigateway-restapi.json index 01279658..a394fe96 100644 --- a/server/schema/resources/aws-apigateway-restapi.json +++ b/server/schema/resources/aws-apigateway-restapi.json @@ -133,10 +133,6 @@ "type": "object", "properties": { "Bucket": { - "relationshipRef": { - "typeName": "AWS::S3::Bucket", - "propertyPath": "/properties/BucketName" - }, "description": "The name of the S3 bucket where the OpenAPI file is stored.", "type": "string", "markdownDescription": "The name of the S3 bucket where the OpenAPI file is stored.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" diff --git a/server/schema/resources/aws-appconfig-configurationprofile.json b/server/schema/resources/aws-appconfig-configurationprofile.json index 5b21ad06..14ab5265 100644 --- a/server/schema/resources/aws-appconfig-configurationprofile.json +++ b/server/schema/resources/aws-appconfig-configurationprofile.json @@ -146,7 +146,7 @@ "KmsKeyIdentifier": { "description": "The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.", "type": "string", - "markdownDescription": "The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.\n\n---\n\nRequired: No \nType: String \nPattern: ^[\\da-f]{8}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{12}|alias/[a-zA-Z0-9/_-]{1,250}|arn:aws[a-zA-Z-]*:kms:[a-z]{2}(-gov|-iso(b?))?-[a-z]+-\\d{1}:\\d{12}:(key/[0-9a-f-]{36}|alias/[a-zA-Z0-9/_-]{1,250})$ \nUpdate requires: No interruption\n" + "markdownDescription": "The AWS Key Management Service key identifier (key ID, key alias, or key ARN) provided when the resource was created or updated.\n\n---\n\nRequired: No \nType: String \nPattern: ^[\\da-f]{8}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{4}-[\\da-f]{12}|alias/[a-zA-Z0-9/_-]{1,250}|arn:aws[a-zA-Z-]*:kms:((eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1})?:(key/[0-9a-f-]{36}|alias/[a-zA-Z0-9/_-]{1,250})$ \nUpdate requires: No interruption\n" }, "Description": { "minLength": 0, @@ -160,7 +160,7 @@ "description": "The Amazon Resource Name of the AWS Key Management Service key to encrypt new configuration data versions in the AWS AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an AWS KMS key for that particular service.", "type": "string", "maxLength": 2048, - "markdownDescription": "The Amazon Resource Name of the AWS Key Management Service key to encrypt new configuration data versions in the AWS AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an AWS KMS key for that particular service.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: arn:(aws[a-zA-Z-]*)?:[a-z]+:([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1})?:(\\d{12})?:[a-zA-Z0-9-_/:.]+ \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The Amazon Resource Name of the AWS Key Management Service key to encrypt new configuration data versions in the AWS AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an AWS KMS key for that particular service.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: arn:(aws[a-zA-Z-]*)?:[a-z]+:((eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1})?:(\\d{12})?:[a-zA-Z0-9-_/:.]+ \nUpdate requires: No interruption\nRead only property: Yes" }, "Validators": { "maxItems": 2, @@ -178,7 +178,7 @@ "description": "The ARN of an IAM role with permission to access the configuration at the specified LocationUri.", "type": "string", "maxLength": 2048, - "markdownDescription": "The ARN of an IAM role with permission to access the configuration at the specified LocationUri.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^((arn):(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):(iam)::\\d{12}:role[/].*)$ \nUpdate requires: No interruption\n" + "markdownDescription": "The ARN of an IAM role with permission to access the configuration at the specified LocationUri.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^((arn):(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov|aws-eusc):(iam)::\\d{12}:role[/].*)$ \nUpdate requires: No interruption\n" }, "DeletionProtectionCheck": { "description": "On resource deletion this controls whether the Deletion Protection check should be applied, bypassed, or (the default) whether the behavior should be controlled by the account-level Deletion Protection setting. See https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html", @@ -224,7 +224,7 @@ "description": "The Amazon Resource Name of the AWS Key Management Service key to encrypt new configuration data versions in the AWS AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an AWS KMS key for that particular service.", "type": "string", "maxLength": 2048, - "markdownDescription": "The Amazon Resource Name of the AWS Key Management Service key to encrypt new configuration data versions in the AWS AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an AWS KMS key for that particular service.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: arn:(aws[a-zA-Z-]*)?:[a-z]+:([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\\d{1})?:(\\d{12})?:[a-zA-Z0-9-_/:.]+ \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The Amazon Resource Name of the AWS Key Management Service key to encrypt new configuration data versions in the AWS AppConfig hosted configuration store. This attribute is only used for hosted configuration types. To encrypt data managed in other configuration stores, see the documentation for how to specify an AWS KMS key for that particular service.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: arn:(aws[a-zA-Z-]*)?:[a-z]+:((eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1})?:(\\d{12})?:[a-zA-Z0-9-_/:.]+ \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-appconfig-deployment.json b/server/schema/resources/aws-appconfig-deployment.json index 1e5b1c84..bcbfe661 100644 --- a/server/schema/resources/aws-appconfig-deployment.json +++ b/server/schema/resources/aws-appconfig-deployment.json @@ -13,7 +13,8 @@ }, "typeName": "AWS::AppConfig::Deployment", "readOnlyProperties": [ - "/properties/DeploymentNumber" + "/properties/DeploymentNumber", + "/properties/State" ], "description": "Resource Type definition for AWS::AppConfig::Deployment", "createOnlyProperties": [ @@ -156,6 +157,20 @@ "type": "string", "markdownDescription": "The configuration version to deploy. If deploying an AWS AppConfig hosted configuration version, you can specify either the version number or version label. For all other configurations, you must specify the version number.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, + "State": { + "description": "The state of the deployment.", + "type": "string", + "enum": [ + "BAKING", + "VALIDATING", + "DEPLOYING", + "COMPLETE", + "ROLLING_BACK", + "ROLLED_BACK", + "REVERTED" + ], + "markdownDescription": "The state of the deployment.\n\n---\n\nRequired: No \nType: String \nAllowed Values: BAKING | VALIDATING | DEPLOYING | COMPLETE | ROLLING_BACK | ROLLED_BACK | REVERTED \nUpdate requires: No interruption\nRead only property: Yes" + }, "DeploymentNumber": { "description": "The sequence number of the deployment.", "type": "string", @@ -186,6 +201,20 @@ } }, "attributes": { + "State": { + "description": "The state of the deployment.", + "type": "string", + "enum": [ + "BAKING", + "VALIDATING", + "DEPLOYING", + "COMPLETE", + "ROLLING_BACK", + "ROLLED_BACK", + "REVERTED" + ], + "markdownDescription": "The state of the deployment.\n\n---\n\nRequired: No \nType: String \nAllowed Values: BAKING | VALIDATING | DEPLOYING | COMPLETE | ROLLING_BACK | ROLLED_BACK | REVERTED \nUpdate requires: No interruption\nRead only property: Yes" + }, "DeploymentNumber": { "description": "The sequence number of the deployment.", "type": "string", diff --git a/server/schema/resources/aws-appconfig-environment.json b/server/schema/resources/aws-appconfig-environment.json index 8bbb1237..f8c2183a 100644 --- a/server/schema/resources/aws-appconfig-environment.json +++ b/server/schema/resources/aws-appconfig-environment.json @@ -85,10 +85,6 @@ "type": "object", "properties": { "AlarmArn": { - "relationshipRef": { - "typeName": "AWS::CloudWatch::Alarm", - "propertyPath": "/properties/Arn" - }, "minLength": 1, "description": "Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.", "type": "string", @@ -96,15 +92,11 @@ "markdownDescription": "Amazon Resource Name (ARN) of the Amazon CloudWatch alarm.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, "AlarmRoleArn": { - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, "minLength": 20, "description": "ARN of an AWS Identity and Access Management (IAM) role for AWS AppConfig to monitor AlarmArn.", "type": "string", "maxLength": 2048, - "markdownDescription": "ARN of an AWS Identity and Access Management (IAM) role for AWS AppConfig to monitor AlarmArn.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^((arn):(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):(iam)::\\d{12}:role[/].*)$ \nUpdate requires: No interruption\n" + "markdownDescription": "ARN of an AWS Identity and Access Management (IAM) role for AWS AppConfig to monitor AlarmArn.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" } }, "required": [ diff --git a/server/schema/resources/aws-applicationinsights-application.json b/server/schema/resources/aws-applicationinsights-application.json index 33419109..47319915 100644 --- a/server/schema/resources/aws-applicationinsights-application.json +++ b/server/schema/resources/aws-applicationinsights-application.json @@ -1,6 +1,6 @@ { "typeName": "AWS::ApplicationInsights::Application", - "description": "Resource schema for AWS::ApplicationInsights::Application", + "description": "Resource Type definition for AWS::ApplicationInsights::Application", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-applicationinsights.git", "properties": { "ResourceGroupName": { @@ -239,7 +239,7 @@ "Tier": { "description": "The tier of the application component.", "type": "string", - "markdownDescription": "The tier of the application component.\n\n---\n\nRequired: Conditional \nType: String \nPattern: ^[A-Z][[A-Z]_]*$ \nUpdate requires: No interruption\n" + "markdownDescription": "The tier of the application component.\n\n---\n\nRequired: Conditional \nType: String \nPattern: ^[A-Z][A-Z_]*$ \nUpdate requires: No interruption\n" }, "ComponentConfigurationMode": { "description": "The component monitoring configuration mode.", @@ -593,7 +593,7 @@ "LogType": { "description": "The log type decides the log patterns against which Application Insights analyzes the log.", "type": "string", - "markdownDescription": "The log type decides the log patterns against which Application Insights analyzes the log.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[A-Z][[A-Z]_]*$ \nUpdate requires: No interruption\n" + "markdownDescription": "The log type decides the log patterns against which Application Insights analyzes the log.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[A-Z][A-Z_]*$ \nUpdate requires: No interruption\n" }, "Encoding": { "description": "The type of encoding of the logs to be monitored.", @@ -785,23 +785,16 @@ "create": { "permissions": [ "applicationinsights:CreateApplication", - "applicationinsights:DescribeApplication", + "applicationinsights:Describe*", "applicationinsights:CreateComponent", - "applicationinsights:DescribeComponent", "applicationinsights:CreateLogPattern", - "applicationinsights:DescribeLogPattern", - "applicationinsights:DescribeComponentConfigurationRecommendation", "applicationinsights:UpdateComponentConfiguration", "applicationinsights:ListComponents", "applicationinsights:TagResource", - "ec2:DescribeInstances", - "ec2:DescribeVolumes", - "rds:DescribeDBInstances", - "rds:DescribeDBClusters", + "ec2:Describe*", + "rds:Describe*", "sqs:ListQueues", - "elasticloadbalancing:DescribeLoadBalancers", - "elasticloadbalancing:DescribeTargetGroups", - "elasticloadbalancing:DescribeTargetHealth", + "elasticloadbalancing:Describe*", "autoscaling:DescribeAutoScalingGroups", "lambda:ListFunctions", "dynamodb:ListTables", @@ -809,49 +802,37 @@ "sns:ListTopics", "states:ListStateMachines", "apigateway:GET", - "ecs:ListClusters", + "ecs:List*", "ecs:DescribeTaskDefinition", - "ecs:ListServices", - "ecs:ListTasks", - "eks:ListClusters", - "eks:ListNodegroups", + "eks:List*", "fsx:DescribeFileSystems", + "route53:List*", + "route53resolver:List*", "logs:DescribeLogGroups", + "resource-explorer:ListResources", "elasticfilesystem:DescribeFileSystems" ], "timeoutInMinutes": 600 }, "read": { "permissions": [ - "applicationinsights:DescribeApplication", - "applicationinsights:ListTagsForResource", - "applicationinsights:DescribeComponent", - "applicationinsights:ListComponents", - "applicationinsights:DescribeLogPattern", - "applicationinsights:ListLogPatterns", - "applicationinsights:ListLogPatternSets" + "applicationinsights:Describe*", + "applicationinsights:List*" ] }, "update": { "permissions": [ "applicationinsights:CreateApplication", - "applicationinsights:DescribeApplication", + "applicationinsights:Describe*", "applicationinsights:UpdateApplication", "applicationinsights:TagResource", "applicationinsights:UntagResource", - "applicationinsights:ListTagsForResource", + "applicationinsights:List*", "applicationinsights:CreateComponent", - "applicationinsights:DescribeComponent", "applicationinsights:DeleteComponent", - "applicationinsights:ListComponents", "applicationinsights:CreateLogPattern", "applicationinsights:DeleteLogPattern", - "applicationinsights:DescribeLogPattern", - "applicationinsights:ListLogPatterns", - "applicationinsights:ListLogPatternSets", "applicationinsights:UpdateLogPattern", - "applicationinsights:DescribeComponentConfiguration", - "applicationinsights:DescribeComponentConfigurationRecommendation", "applicationinsights:UpdateComponentConfiguration" ], "timeoutInMinutes": 600 @@ -864,14 +845,8 @@ }, "list": { "permissions": [ - "applicationinsights:ListApplications", - "applicationinsights:DescribeApplication", - "applicationinsights:ListTagsForResource", - "applicationinsights:DescribeComponent", - "applicationinsights:ListComponents", - "applicationinsights:DescribeLogPattern", - "applicationinsights:ListLogPatterns", - "applicationinsights:ListLogPatternSets" + "applicationinsights:List*", + "applicationinsights:Describe*" ] } }, diff --git a/server/schema/resources/aws-appstream-appblock.json b/server/schema/resources/aws-appstream-appblock.json index e8fa7cff..b24527bd 100644 --- a/server/schema/resources/aws-appstream-appblock.json +++ b/server/schema/resources/aws-appstream-appblock.json @@ -143,9 +143,14 @@ "tagging": { "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "appstream:TagResource", + "appstream:ListTagsForResource", + "appstream:UntagResource" + ] }, "primaryIdentifier": [ "/properties/Arn" @@ -163,9 +168,6 @@ "/properties/Arn", "/properties/CreatedTime" ], - "writeOnlyProperties": [ - "/properties/Tags" - ], "deprecatedProperties": [ "/properties/Tags/TagKey", "/properties/Tags/TagValue" @@ -182,12 +184,21 @@ }, "read": { "permissions": [ - "appstream:DescribeAppBlocks" + "appstream:DescribeAppBlocks", + "appstream:ListTagsForResource" ] }, "delete": { "permissions": [ - "appstream:DeleteAppBlock" + "appstream:DeleteAppBlock", + "appstream:DescribeAppBlocks" + ] + }, + "update": { + "permissions": [ + "appstream:DescribeAppBlocks", + "appstream:TagResource", + "appstream:UntagResource" ] } }, diff --git a/server/schema/resources/aws-appstream-appblockbuilder.json b/server/schema/resources/aws-appstream-appblockbuilder.json index cbb5e8d0..7832e229 100644 --- a/server/schema/resources/aws-appstream-appblockbuilder.json +++ b/server/schema/resources/aws-appstream-appblockbuilder.json @@ -158,7 +158,6 @@ "/properties/CreatedTime" ], "writeOnlyProperties": [ - "/properties/Tags", "/properties/AppBlockArns" ], "primaryIdentifier": [ @@ -169,7 +168,12 @@ "tagOnCreate": true, "tagUpdatable": true, "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "appstream:ListTagsForResource", + "appstream:TagResource", + "appstream:UntagResource" + ] }, "handlers": { "create": { @@ -180,12 +184,14 @@ "appstream:AssociateAppBlockBuilderAppBlock", "appstream:DescribeAppBlockBuilderAppBlockAssociations", "appstream:TagResource", + "appstream:ListTagsForResource", "iam:PassRole" ] }, "read": { "permissions": [ - "appstream:DescribeAppBlockBuilders" + "appstream:DescribeAppBlockBuilders", + "appstream:ListTagsForResource" ] }, "update": { diff --git a/server/schema/resources/aws-appstream-application.json b/server/schema/resources/aws-appstream-application.json index 9fdc61f9..4040375f 100644 --- a/server/schema/resources/aws-appstream-application.json +++ b/server/schema/resources/aws-appstream-application.json @@ -151,9 +151,14 @@ "tagging": { "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "appstream:TagResource", + "appstream:ListTagsForResource", + "appstream:UntagResource" + ] }, "required": [ "Name", @@ -173,7 +178,6 @@ "/properties/CreatedTime" ], "writeOnlyProperties": [ - "/properties/Tags", "/properties/AttributesToDelete" ], "deprecatedProperties": [ @@ -193,18 +197,23 @@ }, "read": { "permissions": [ - "appstream:DescribeApplications" + "appstream:DescribeApplications", + "appstream:ListTagsForResource" ] }, "update": { "permissions": [ "appstream:UpdateApplication", + "appstream:DescribeApplications", + "appstream:TagResource", + "appstream:UntagResource", "s3:GetObject" ] }, "delete": { "permissions": [ - "appstream:DeleteApplication" + "appstream:DeleteApplication", + "appstream:DescribeApplications" ] } }, diff --git a/server/schema/resources/aws-arcregionswitch-plan.json b/server/schema/resources/aws-arcregionswitch-plan.json new file mode 100644 index 00000000..4360639a --- /dev/null +++ b/server/schema/resources/aws-arcregionswitch-plan.json @@ -0,0 +1,1315 @@ +{ + "typeName": "AWS::ARCRegionSwitch::Plan", + "description": "Represents a plan that specifies Regions, IAM roles, and workflows of logic required to perform the desired change to your multi-Region application", + "definitions": { + "AlarmCondition": { + "type": "string", + "enum": [ + "red", + "green" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: red | green \nUpdate requires: No interruption\n" + }, + "AlarmType": { + "type": "string", + "enum": [ + "applicationHealth", + "trigger" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: applicationHealth | trigger \nUpdate requires: No interruption\n" + }, + "ArcRoutingControlConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RegionAndRoutingControls": { + "$ref": "#/definitions/RegionAndRoutingControls" + } + }, + "required": [ + "RegionAndRoutingControls" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ArcRoutingControlState": { + "type": "object", + "properties": { + "RoutingControlArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "State": { + "$ref": "#/definitions/RoutingControlStateChange" + } + }, + "required": [ + "RoutingControlArn", + "State" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Asg": { + "type": "object", + "properties": { + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws:autoscaling:[a-z0-9-]+:\\d{12}:autoScalingGroup:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}:autoScalingGroupName/[\\S\\s]{1,255}$ \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AssociatedAlarm": { + "type": "object", + "properties": { + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ResourceIdentifier": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "AlarmType": { + "$ref": "#/definitions/AlarmType" + } + }, + "required": [ + "AlarmType", + "ResourceIdentifier" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AssociatedAlarmMap": { + "type": "object", + "patternProperties": { + ".+": { + "$ref": "#/definitions/AssociatedAlarm" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CustomActionLambdaConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "Lambdas": { + "type": "array", + "items": { + "$ref": "#/definitions/Lambdas" + }, + "maxItems": 2, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "RetryIntervalMinutes": { + "type": "number", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + }, + "RegionToRun": { + "$ref": "#/definitions/RegionToRunIn" + }, + "Ungraceful": { + "$ref": "#/definitions/LambdaUngraceful" + } + }, + "required": [ + "Lambdas", + "RegionToRun", + "RetryIntervalMinutes" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Ec2AsgCapacityIncreaseConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "Asgs": { + "type": "array", + "items": { + "$ref": "#/definitions/Asg" + }, + "maxItems": 2, + "minItems": 2, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Ungraceful": { + "$ref": "#/definitions/Ec2Ungraceful" + }, + "TargetPercent": { + "type": "number", + "default": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "CapacityMonitoringApproach": { + "allOf": [ + { + "$ref": "#/definitions/Ec2AsgCapacityMonitoringApproach" + }, + { + "default": "sampledMaxInLast24Hours" + } + ] + } + }, + "required": [ + "Asgs" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Ec2AsgCapacityMonitoringApproach": { + "type": "string", + "enum": [ + "sampledMaxInLast24Hours", + "autoscalingMaxInLast24Hours" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: sampledMaxInLast24Hours | autoscalingMaxInLast24Hours \nUpdate requires: No interruption\n" + }, + "Ec2Ungraceful": { + "type": "object", + "properties": { + "MinimumSuccessPercentage": { + "type": "number", + "maximum": 99, + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + } + }, + "required": [ + "MinimumSuccessPercentage" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EcsCapacityIncreaseConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "Services": { + "type": "array", + "items": { + "$ref": "#/definitions/Service" + }, + "maxItems": 2, + "minItems": 2, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Ungraceful": { + "$ref": "#/definitions/EcsUngraceful" + }, + "TargetPercent": { + "type": "number", + "default": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "CapacityMonitoringApproach": { + "allOf": [ + { + "$ref": "#/definitions/EcsCapacityMonitoringApproach" + }, + { + "default": "sampledMaxInLast24Hours" + } + ] + } + }, + "required": [ + "Services" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EcsCapacityMonitoringApproach": { + "type": "string", + "enum": [ + "sampledMaxInLast24Hours", + "containerInsightsMaxInLast24Hours" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: sampledMaxInLast24Hours | containerInsightsMaxInLast24Hours \nUpdate requires: No interruption\n" + }, + "EcsUngraceful": { + "type": "object", + "properties": { + "MinimumSuccessPercentage": { + "type": "number", + "maximum": 99, + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + } + }, + "required": [ + "MinimumSuccessPercentage" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EksCapacityMonitoringApproach": { + "type": "string", + "enum": [ + "sampledMaxInLast24Hours" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: sampledMaxInLast24Hours \nUpdate requires: No interruption\n" + }, + "EksCluster": { + "type": "object", + "properties": { + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ClusterArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[a-zA-Z-]*:eks:[a-z0-9-]+:\\d{12}:cluster/[a-zA-Z0-9][a-zA-Z0-9-_]{0,99}$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ClusterArn" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EksResourceScalingConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "KubernetesResourceType": { + "$ref": "#/definitions/KubernetesResourceType" + }, + "ScalingResources": { + "type": "array", + "items": { + "$ref": "#/definitions/KubernetesScalingApplication" + }, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "EksClusters": { + "type": "array", + "items": { + "$ref": "#/definitions/EksCluster" + }, + "minItems": 2, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Ungraceful": { + "$ref": "#/definitions/EksResourceScalingUngraceful" + }, + "TargetPercent": { + "type": "number", + "default": 100, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "CapacityMonitoringApproach": { + "allOf": [ + { + "$ref": "#/definitions/EksCapacityMonitoringApproach" + }, + { + "default": "sampledMaxInLast24Hours" + } + ] + } + }, + "required": [ + "KubernetesResourceType" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EksResourceScalingUngraceful": { + "type": "object", + "properties": { + "MinimumSuccessPercentage": { + "type": "number", + "maximum": 99, + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + } + }, + "required": [ + "MinimumSuccessPercentage" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ExecutionApprovalConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "ApprovalRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ApprovalRole" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ExecutionBlockConfiguration": { + "oneOf": [ + { + "type": "object", + "title": "CustomActionLambdaConfig", + "properties": { + "CustomActionLambdaConfig": { + "$ref": "#/definitions/CustomActionLambdaConfiguration" + } + }, + "required": [ + "CustomActionLambdaConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "Ec2AsgCapacityIncreaseConfig", + "properties": { + "Ec2AsgCapacityIncreaseConfig": { + "$ref": "#/definitions/Ec2AsgCapacityIncreaseConfiguration" + } + }, + "required": [ + "Ec2AsgCapacityIncreaseConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "ExecutionApprovalConfig", + "properties": { + "ExecutionApprovalConfig": { + "$ref": "#/definitions/ExecutionApprovalConfiguration" + } + }, + "required": [ + "ExecutionApprovalConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "ArcRoutingControlConfig", + "properties": { + "ArcRoutingControlConfig": { + "$ref": "#/definitions/ArcRoutingControlConfiguration" + } + }, + "required": [ + "ArcRoutingControlConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "GlobalAuroraConfig", + "properties": { + "GlobalAuroraConfig": { + "$ref": "#/definitions/GlobalAuroraConfiguration" + } + }, + "required": [ + "GlobalAuroraConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "ParallelConfig", + "properties": { + "ParallelConfig": { + "$ref": "#/definitions/ParallelExecutionBlockConfiguration" + } + }, + "required": [ + "ParallelConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "RegionSwitchPlanConfig", + "properties": { + "RegionSwitchPlanConfig": { + "$ref": "#/definitions/RegionSwitchPlanConfiguration" + } + }, + "required": [ + "RegionSwitchPlanConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "EcsCapacityIncreaseConfig", + "properties": { + "EcsCapacityIncreaseConfig": { + "$ref": "#/definitions/EcsCapacityIncreaseConfiguration" + } + }, + "required": [ + "EcsCapacityIncreaseConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "EksResourceScalingConfig", + "properties": { + "EksResourceScalingConfig": { + "$ref": "#/definitions/EksResourceScalingConfiguration" + } + }, + "required": [ + "EksResourceScalingConfig" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "Route53HealthCheckConfig", + "properties": { + "Route53HealthCheckConfig": { + "$ref": "#/definitions/Route53HealthCheckConfiguration" + } + }, + "required": [ + "Route53HealthCheckConfig" + ], + "additionalProperties": false + } + ] + }, + "ExecutionBlockType": { + "type": "string", + "enum": [ + "CustomActionLambda", + "ManualApproval", + "AuroraGlobalDatabase", + "EC2AutoScaling", + "ARCRoutingControl", + "ARCRegionSwitchPlan", + "Parallel", + "ECSServiceScaling", + "EKSResourceScaling", + "Route53HealthCheck" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: CustomActionLambda | ManualApproval | AuroraGlobalDatabase | EC2AutoScaling | ARCRoutingControl | ARCRegionSwitchPlan | Parallel | ECSServiceScaling | EKSResourceScaling | Route53HealthCheck \nUpdate requires: No interruption\n" + }, + "GlobalAuroraConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Behavior": { + "allOf": [ + { + "$ref": "#/definitions/GlobalAuroraDefaultBehavior" + }, + { + "default": "switchoverOnly" + } + ] + }, + "Ungraceful": { + "$ref": "#/definitions/GlobalAuroraUngraceful" + }, + "GlobalClusterIdentifier": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "DatabaseClusterArns": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Behavior", + "DatabaseClusterArns", + "GlobalClusterIdentifier" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "GlobalAuroraDefaultBehavior": { + "type": "string", + "enum": [ + "switchoverOnly", + "failover" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: switchoverOnly | failover \nUpdate requires: No interruption\n" + }, + "GlobalAuroraUngraceful": { + "type": "object", + "properties": { + "Ungraceful": { + "$ref": "#/definitions/GlobalAuroraUngracefulBehavior" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "GlobalAuroraUngracefulBehavior": { + "type": "string", + "enum": [ + "failover" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: failover \nUpdate requires: No interruption\n" + }, + "HealthCheckIds": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "RecordNames": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Regions": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "HostedZoneIds": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "KubernetesResourceType": { + "type": "object", + "properties": { + "ApiVersion": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Kind": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ApiVersion", + "Kind" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "KubernetesScalingApplication": { + "type": "object", + "patternProperties": { + ".+": { + "$ref": "#/definitions/RegionalScalingResource" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "KubernetesScalingResource": { + "type": "object", + "properties": { + "Namespace": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$ \nUpdate requires: No interruption\n" + }, + "Name": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "HpaName": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Name", + "Namespace" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "LambdaUngraceful": { + "type": "object", + "properties": { + "Behavior": { + "allOf": [ + { + "$ref": "#/definitions/LambdaUngracefulBehavior" + }, + { + "default": "skip" + } + ] + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "LambdaUngracefulBehavior": { + "type": "string", + "enum": [ + "skip" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: skip \nUpdate requires: No interruption\n" + }, + "Lambdas": { + "type": "object", + "properties": { + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ParallelExecutionBlockConfiguration": { + "type": "object", + "properties": { + "Steps": { + "type": "array", + "items": { + "$ref": "#/definitions/Step" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Steps" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RecoveryApproach": { + "type": "string", + "enum": [ + "activeActive", + "activePassive" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: activeActive | activePassive \nUpdate requires: No interruption\n" + }, + "RegionAndRoutingControls": { + "type": "object", + "patternProperties": { + ".+": { + "type": "array", + "items": { + "$ref": "#/definitions/ArcRoutingControlState" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RegionSwitchPlanConfiguration": { + "type": "object", + "properties": { + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[a-zA-Z-]*:arc-region-switch::[0-9]{12}:plan/([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,30}[a-zA-Z0-9])?):([a-z0-9]{6})$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Arn" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RegionToRunIn": { + "type": "string", + "enum": [ + "activatingRegion", + "deactivatingRegion" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: activatingRegion | deactivatingRegion \nUpdate requires: No interruption\n" + }, + "RegionalScalingResource": { + "type": "object", + "patternProperties": { + "^[a-z]{2}-[a-z-]+-\\d+$": { + "$ref": "#/definitions/KubernetesScalingResource" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Route53HealthCheckConfiguration": { + "type": "object", + "properties": { + "TimeoutMinutes": { + "type": "number", + "default": 60, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "HostedZoneId": { + "type": "string", + "maxLength": 32, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 32 \nUpdate requires: No interruption\n" + }, + "RecordName": { + "type": "string", + "maxLength": 1024, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "RecordSets": { + "type": "array", + "items": { + "$ref": "#/definitions/Route53ResourceRecordSet" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "HostedZoneId", + "RecordName" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Route53ResourceRecordSet": { + "type": "object", + "properties": { + "RecordSetIdentifier": { + "type": "string", + "maxLength": 1024, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "Region": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-z]{2}-[a-z-]+-\\d+$ \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RoutingControlStateChange": { + "type": "string", + "enum": [ + "On", + "Off" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: On | Off \nUpdate requires: No interruption\n" + }, + "Service": { + "type": "object", + "properties": { + "CrossAccountRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ClusterArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws:ecs:[a-z0-9-]+:\\d{12}:cluster/[a-zA-Z0-9_-]{1,255}$ \nUpdate requires: No interruption\n" + }, + "ServiceArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws:ecs:[a-z0-9-]+:\\d{12}:service/[a-zA-Z0-9_-]+/[a-zA-Z0-9_-]{1,255}$ \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Step": { + "type": "object", + "properties": { + "Name": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Description": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ExecutionBlockConfiguration": { + "$ref": "#/definitions/ExecutionBlockConfiguration" + }, + "ExecutionBlockType": { + "$ref": "#/definitions/ExecutionBlockType" + } + }, + "required": [ + "ExecutionBlockConfiguration", + "ExecutionBlockType", + "Name" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "object", + "maxProperties": 200, + "minProperties": 0, + "patternProperties": { + ".+": { + "type": "string", + "maxLength": 256, + "minLength": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Trigger": { + "type": "object", + "properties": { + "Description": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TargetRegion": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-z]{2}-[a-z-]+-\\d+$ \nUpdate requires: No interruption\n" + }, + "Action": { + "$ref": "#/definitions/WorkflowTargetAction" + }, + "Conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/TriggerCondition" + }, + "maxItems": 10, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "MinDelayMinutesBetweenExecutions": { + "type": "number", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Action", + "Conditions", + "MinDelayMinutesBetweenExecutions", + "TargetRegion" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TriggerCondition": { + "type": "object", + "properties": { + "AssociatedAlarmName": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Condition": { + "$ref": "#/definitions/AlarmCondition" + } + }, + "required": [ + "AssociatedAlarmName", + "Condition" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Workflow": { + "type": "object", + "properties": { + "Steps": { + "type": "array", + "items": { + "$ref": "#/definitions/Step" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "WorkflowTargetAction": { + "$ref": "#/definitions/WorkflowTargetAction" + }, + "WorkflowTargetRegion": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-z]{2}-[a-z-]+-\\d+$ \nUpdate requires: No interruption\n" + }, + "WorkflowDescription": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "WorkflowTargetAction" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "WorkflowTargetAction": { + "type": "string", + "enum": [ + "activate", + "deactivate" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: activate | deactivate \nUpdate requires: No interruption\n" + }, + "HealthCheckState": { + "type": "object", + "properties": { + "HealthCheckId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Region": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Route53HealthChecks": { + "type": "array", + "items": { + "$ref": "#/definitions/HealthCheckState" + }, + "maxItems": 2, + "minItems": 2, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "properties": { + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z-]*:arc-region-switch::[0-9]{12}:plan/([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,30}[a-zA-Z0-9])?):([a-z0-9]{6})$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AssociatedAlarms": { + "$ref": "#/definitions/AssociatedAlarmMap" + }, + "Description": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ExecutionRole": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[a-zA-Z0-9-]*:iam::[0-9]{12}:role/.+$ \nUpdate requires: No interruption\n" + }, + "Name": { + "type": "string", + "maxLength": 32, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 32 \nPattern: ^[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,30}[a-zA-Z0-9])?$ \nUpdate requires: Replacement\n" + }, + "Owner": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^\\d{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "PrimaryRegion": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-z]{2}-[a-z-]+-\\d+$ \nUpdate requires: Replacement\n" + }, + "RecoveryApproach": { + "$ref": "#/definitions/RecoveryApproach" + }, + "RecoveryTimeObjectiveMinutes": { + "type": "number", + "maximum": 10080, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "Regions": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-z]{2}-[a-z-]+-\\d+$ \nUpdate requires: No interruption\n" + }, + "maxItems": 2, + "minItems": 2, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: Replacement\n" + }, + "Tags": { + "$ref": "#/definitions/Tags" + }, + "Triggers": { + "type": "array", + "items": { + "$ref": "#/definitions/Trigger" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Version": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Workflows": { + "type": "array", + "items": { + "$ref": "#/definitions/Workflow" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "HealthChecksForPlan": { + "type": "object", + "patternProperties": { + ".+": { + "$ref": "#/definitions/Route53HealthChecks" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Route53HealthChecks": { + "type": "object", + "properties": { + "HealthCheckIds": { + "$ref": "#/definitions/HealthCheckIds" + }, + "RecordNames": { + "$ref": "#/definitions/RecordNames" + }, + "Regions": { + "$ref": "#/definitions/Regions" + }, + "HostedZoneIds": { + "$ref": "#/definitions/HostedZoneIds" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "required": [ + "ExecutionRole", + "Name", + "RecoveryApproach", + "Regions", + "Workflows" + ], + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Owner", + "/properties/Version", + "/properties/HealthChecksForPlan", + "/properties/Route53HealthChecks" + ], + "createOnlyProperties": [ + "/properties/Name", + "/properties/PrimaryRegion", + "/properties/RecoveryApproach", + "/properties/Regions" + ], + "deprecatedProperties": [ + "/properties/HealthChecksForPlan" + ], + "primaryIdentifier": [ + "/properties/Arn" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "arc-region-switch:TagResource", + "arc-region-switch:UntagResource", + "arc-region-switch:ListTagsForResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "arc-region-switch:CreatePlan", + "arc-region-switch:GetPlan", + "arc-region-switch:ListRoute53HealthChecks", + "arc-region-switch:ListTagsForResource", + "arc-region-switch:TagResource", + "iam:PassRole" + ] + }, + "read": { + "permissions": [ + "arc-region-switch:GetPlan", + "arc-region-switch:ListRoute53HealthChecks", + "arc-region-switch:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "arc-region-switch:GetPlan", + "arc-region-switch:ListRoute53HealthChecks", + "arc-region-switch:ListTagsForResource", + "arc-region-switch:TagResource", + "arc-region-switch:UntagResource", + "arc-region-switch:UpdatePlan", + "iam:PassRole" + ] + }, + "delete": { + "permissions": [ + "arc-region-switch:DeletePlan", + "arc-region-switch:GetPlan" + ] + }, + "list": { + "permissions": [ + "arc-region-switch:ListPlans" + ] + } + }, + "additionalProperties": false, + "attributes": { + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[a-zA-Z-]*:arc-region-switch::[0-9]{12}:plan/([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,30}[a-zA-Z0-9])?):([a-z0-9]{6})$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Owner": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^\\d{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Version": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "HealthChecksForPlan": { + "type": "object", + "patternProperties": { + ".+": { + "$ref": "#/definitions/Route53HealthChecks" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Route53HealthChecks": { + "type": "object", + "properties": { + "HealthCheckIds": { + "$ref": "#/definitions/HealthCheckIds" + }, + "RecordNames": { + "$ref": "#/definitions/RecordNames" + }, + "Regions": { + "$ref": "#/definitions/Regions" + }, + "HostedZoneIds": { + "$ref": "#/definitions/HostedZoneIds" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-athena-workgroup.json b/server/schema/resources/aws-athena-workgroup.json index 464f70e7..3b7c807c 100644 --- a/server/schema/resources/aws-athena-workgroup.json +++ b/server/schema/resources/aws-athena-workgroup.json @@ -123,6 +123,17 @@ "additionalProperties": false, "markdownDescription": "If query results are encrypted in Amazon S3, indicates the encryption option used (for example, SSE-KMS or CSE-KMS) and key information.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ManagedStorageEncryptionConfiguration": { + "description": "Indicates the encryption configuration for Athena Managed Storage. If not setting this field, Managed Storage will encrypt the query results with Athena's encryption key", + "type": "object", + "properties": { + "KmsKey": { + "$ref": "#/definitions/KmsKey" + } + }, + "additionalProperties": false, + "markdownDescription": "Indicates the encryption configuration for Athena Managed Storage. If not setting this field, Managed Storage will encrypt the query results with Athena's encryption key\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "RemoveEncryptionConfiguration": { "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" @@ -246,6 +257,21 @@ "additionalProperties": false, "markdownDescription": "The result configuration information about the queries in this workgroup that will be updated. Includes the updated results location and an updated option for encrypting query results. \n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ManagedQueryResultsConfiguration": { + "description": "The configuration for the managed query results and encryption option. ResultConfiguration and ManagedQueryResultsConfiguration cannot be set at the same time", + "type": "object", + "properties": { + "EncryptionConfiguration": { + "$ref": "#/definitions/ManagedStorageEncryptionConfiguration" + }, + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "The configuration for the managed query results and encryption option. ResultConfiguration and ManagedQueryResultsConfiguration cannot be set at the same time\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "WorkGroupConfiguration": { "type": "object", "properties": { @@ -275,6 +301,9 @@ }, "CustomerContentEncryptionConfiguration": { "$ref": "#/definitions/CustomerContentEncryptionConfiguration" + }, + "ManagedQueryResultsConfiguration": { + "$ref": "#/definitions/ManagedQueryResultsConfiguration" } }, "additionalProperties": false, @@ -316,6 +345,9 @@ }, "RemoveCustomerContentEncryptionConfiguration": { "$ref": "#/definitions/RemoveCustomerContentEncryptionConfiguration" + }, + "ManagedQueryResultsConfiguration": { + "$ref": "#/definitions/ManagedQueryResultsConfiguration" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-autoscaling-autoscalinggroup.json b/server/schema/resources/aws-autoscaling-autoscalinggroup.json index 33c93c3c..eaaea43b 100644 --- a/server/schema/resources/aws-autoscaling-autoscalinggroup.json +++ b/server/schema/resources/aws-autoscaling-autoscalinggroup.json @@ -325,7 +325,7 @@ "markdownDescription": "Specify an instance family to use as the baseline reference for CPU performance. All instance types that All instance types that match your specified attributes will be compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture differences. \n Currently only one instance family can be specified in the list.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "LaunchTemplate": { - "description": "Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.\n ``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.", + "description": "Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.\n ``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.", "additionalProperties": false, "type": "object", "properties": { @@ -348,10 +348,10 @@ "required": [ "LaunchTemplateSpecification" ], - "markdownDescription": "Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.\n ``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Use this structure to specify the launch templates and instance types (overrides) for a mixed instances policy.\n ``LaunchTemplate`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "LaunchTemplateOverrides": { - "description": "Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:\n + Override the instance type that is specified in the launch template.\n + Use multiple instance types.\n \n Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group.\n After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used.\n ``LaunchTemplateOverrides`` is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.", + "description": "Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:\n + Override the instance type that is specified in the launch template.\n + Use multiple instance types.\n \n Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group.\n After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used.\n ``LaunchTemplateOverrides`` is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.", "additionalProperties": false, "type": "object", "properties": { @@ -371,12 +371,12 @@ "markdownDescription": "The instance requirements. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.\n You can specify up to four separate sets of instance requirements per Auto Scaling group. This is useful for provisioning instances from different Amazon Machine Images (AMIs) in the same Auto Scaling group. To do this, create the AMIs and create a new launch template for each AMI. Then, create a compatible set of instance requirements for each launch template. \n If you specify ``InstanceRequirements``, you can't specify ``InstanceType``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "InstanceType": { - "description": "The instance type, such as ``m3.xlarge``. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.\n You can specify up to 40 instance types per Auto Scaling group.", + "description": "The instance type, such as ``m3.xlarge``. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide*.\n You can specify up to 40 instance types per Auto Scaling group.", "type": "string", - "markdownDescription": "The instance type, such as ``m3.xlarge``. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.\n You can specify up to 40 instance types per Auto Scaling group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The instance type, such as ``m3.xlarge``. You must specify an instance type that is supported in your requested Region and Availability Zones. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide*.\n You can specify up to 40 instance types per Auto Scaling group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:\n + Override the instance type that is specified in the launch template.\n + Use multiple instance types.\n \n Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group.\n After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used.\n ``LaunchTemplateOverrides`` is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Use this structure to let Amazon EC2 Auto Scaling do the following when the Auto Scaling group has a mixed instances policy:\n + Override the instance type that is specified in the launch template.\n + Use multiple instance types.\n \n Specify the instance types that you want, or define your instance requirements instead and let Amazon EC2 Auto Scaling provision the available instance types that meet your requirements. This can provide Amazon EC2 Auto Scaling with a larger selection of instance types to choose from when fulfilling Spot and On-Demand capacities. You can view which instance types are matched before you apply the instance requirements to your Auto Scaling group.\n After you define your instance requirements, you don't have to keep updating these settings to get new EC2 instance types automatically. Amazon EC2 Auto Scaling uses the instance requirements of the Auto Scaling group to determine whether a new EC2 instance type can be used.\n ``LaunchTemplateOverrides`` is a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "CpuPerformanceFactorRequest": { "description": "The CPU performance to consider, using an instance family as the baseline reference.", @@ -392,7 +392,7 @@ "markdownDescription": "The CPU performance to consider, using an instance family as the baseline reference.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "MixedInstancesPolicy": { - "description": "Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.\n A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.\n There are key differences between Spot Instances and On-Demand Instances:\n + The price for Spot Instances varies based on demand\n + Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes\n \n When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group. \n ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.", + "description": "Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.\n A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.\n There are key differences between Spot Instances and On-Demand Instances:\n + The price for Spot Instances varies based on demand\n + Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes\n \n When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group. \n ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.", "additionalProperties": false, "type": "object", "properties": { @@ -410,7 +410,7 @@ "required": [ "LaunchTemplate" ], - "markdownDescription": "Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.\n A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.\n There are key differences between Spot Instances and On-Demand Instances:\n + The price for Spot Instances varies based on demand\n + Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes\n \n When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group. \n ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Use this structure to launch multiple instance types and On-Demand Instances and Spot Instances within a single Auto Scaling group.\n A mixed instances policy contains information that Amazon EC2 Auto Scaling can use to launch instances and help optimize your costs. For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n You can create a mixed instances policy for new and existing Auto Scaling groups. You must use a launch template to configure the policy. You cannot use a launch configuration.\n There are key differences between Spot Instances and On-Demand Instances:\n + The price for Spot Instances varies based on demand\n + Amazon EC2 can terminate an individual Spot Instance as the availability of, or price for, Spot Instances changes\n \n When a Spot Instance is terminated, Amazon EC2 Auto Scaling group attempts to launch a replacement instance to maintain the desired capacity for the group. \n ``MixedInstancesPolicy`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "CapacityReservationIds": { "uniqueItems": true, @@ -461,7 +461,7 @@ "markdownDescription": "A structure that specifies a tag for the ``Tags`` property of [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.\n For more information, see [Tag Auto Scaling groups and instances](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-tagging.html) in the *Amazon EC2 Auto Scaling User Guide*. You can find a sample template snippet in the [Examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples) section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.\n CloudFormation adds the following tags to all Auto Scaling groups and associated instances: \n + aws:cloudformation:stack-name\n + aws:cloudformation:stack-id\n + aws:cloudformation:logical-id\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "LaunchTemplateSpecification": { - "description": "Specifies a launch template to use when provisioning EC2 instances for an Auto Scaling group.\n You must specify the following:\n + The ID or the name of the launch template, but not both.\n + The version of the launch template.\n \n ``LaunchTemplateSpecification`` is property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. It is also a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) and [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property types.\n For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For examples of launch templates, see [Create launch templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-launch-templates.html).", + "description": "Specifies a launch template to use when provisioning EC2 instances for an Auto Scaling group.\n You must specify the following:\n + The ID or the name of the launch template, but not both.\n + The version of the launch template.\n \n ``LaunchTemplateSpecification`` is property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. It is also a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) and [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property types.\n For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For examples of launch templates, see [Create launch templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-launch-templates.html).", "additionalProperties": false, "type": "object", "properties": { @@ -484,10 +484,10 @@ "required": [ "Version" ], - "markdownDescription": "Specifies a launch template to use when provisioning EC2 instances for an Auto Scaling group.\n You must specify the following:\n + The ID or the name of the launch template, but not both.\n + The version of the launch template.\n \n ``LaunchTemplateSpecification`` is property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. It is also a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) and [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property types.\n For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For examples of launch templates, see [Create launch templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-launch-templates.html).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies a launch template to use when provisioning EC2 instances for an Auto Scaling group.\n You must specify the following:\n + The ID or the name of the launch template, but not both.\n + The version of the launch template.\n \n ``LaunchTemplateSpecification`` is property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource. It is also a property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) and [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property types.\n For information about creating a launch template, see [AWS::EC2::LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html) and [Create a launch template for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) in the *Amazon EC2 Auto Scaling User Guide*.\n For examples of launch templates, see [Create launch templates](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-launch-templates.html).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "InstancesDistribution": { - "description": "Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.\n For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n ``InstancesDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.", + "description": "Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.\n For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n ``InstancesDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.", "additionalProperties": false, "type": "object", "properties": { @@ -522,7 +522,7 @@ "markdownDescription": "The maximum price per unit hour that you are willing to pay for a Spot Instance. If your maximum price is lower than the Spot price for the instance types that you selected, your Spot Instances are not launched. We do not recommend specifying a maximum price because it can lead to increased interruptions. When Spot Instances launch, you pay the current Spot price. To remove a maximum price that you previously set, include the property but specify an empty string (\"\") for the value.\n If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify one.\n Valid Range: Minimum value of 0.001\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.\n For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n ``InstancesDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Use this structure to specify the distribution of On-Demand Instances and Spot Instances and the allocation strategies used to fulfill On-Demand and Spot capacities for a mixed instances policy.\n For more information, see [Auto Scaling groups with multiple instance types and purchase options](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html) in the *Amazon EC2 Auto Scaling User Guide*.\n ``InstancesDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup MixedInstancesPolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-mixedinstancespolicy.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "AcceleratorCountRequest": { "description": "``AcceleratorCountRequest`` is a property of the ``InstanceRequirements`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplateOverrides](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html) property type that describes the minimum and maximum number of accelerators for an instance type.", @@ -548,13 +548,13 @@ "type": "object", "properties": { "CapacityDistributionStrategy": { - "description": "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.", + "description": "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.", "type": "string", "enum": [ "balanced-best-effort", "balanced-only" ], - "markdownDescription": "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.\n\n---\n\nRequired: No \nType: String \nAllowed Values: balanced-best-effort | balanced-only \nUpdate requires: No interruption\n" + "markdownDescription": "If launches fail in an Availability Zone, the following strategies are available. The default is ``balanced-best-effort``. \n + ``balanced-only`` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n + ``balanced-best-effort`` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.\n\n---\n\nRequired: No \nType: String \nAllowed Values: balanced-best-effort | balanced-only \nUpdate requires: No interruption\n" } }, "markdownDescription": "``AvailabilityZoneDistribution`` is a property of the [AWS::AutoScaling::AutoScalingGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html) resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -578,14 +578,14 @@ }, "NotificationTypes": { "uniqueItems": false, - "description": "A list of event types that send a notification. Event types can include any of the following types. \n *Allowed values*:\n + ``autoscaling:EC2_INSTANCE_LAUNCH`` \n + ``autoscaling:EC2_INSTANCE_LAUNCH_ERROR`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE_ERROR`` \n + ``autoscaling:TEST_NOTIFICATION``", + "description": "A list of event types that send a notification. Event types can include any of the following types. \n *Allowed values*:\n + ``autoscaling:EC2_INSTANCE_LAUNCH`` \n + ``autoscaling:EC2_INSTANCE_LAUNCH_ERROR`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE_ERROR`` \n + ``autoscaling:TEST_NOTIFICATION``", "insertionOrder": false, "type": "array", "items": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "markdownDescription": "A list of event types that send a notification. Event types can include any of the following types. \n *Allowed values*:\n + ``autoscaling:EC2_INSTANCE_LAUNCH`` \n + ``autoscaling:EC2_INSTANCE_LAUNCH_ERROR`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE_ERROR`` \n + ``autoscaling:TEST_NOTIFICATION``\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "A list of event types that send a notification. Event types can include any of the following types. \n *Allowed values*:\n + ``autoscaling:EC2_INSTANCE_LAUNCH`` \n + ``autoscaling:EC2_INSTANCE_LAUNCH_ERROR`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE`` \n + ``autoscaling:EC2_INSTANCE_TERMINATE_ERROR`` \n + ``autoscaling:TEST_NOTIFICATION``\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ @@ -710,14 +710,14 @@ "type": "object", "properties": { "Type": { - "description": "Provides additional context for the value of ``Identifier``.\n The following lists the valid values:\n + ``elb`` if ``Identifier`` is the name of a Classic Load Balancer.\n + ``elbv2`` if ``Identifier`` is the ARN of an Application Load Balancer, Gateway Load Balancer, or Network Load Balancer target group.\n + ``vpc-lattice`` if ``Identifier`` is the ARN of a VPC Lattice target group.\n \n Required if the identifier is the name of a Classic Load Balancer.", + "description": "Provides additional context for the value of ``Identifier``.\n The following lists the valid values:\n + ``elb`` if ``Identifier`` is the name of a Classic Load Balancer.\n + ``elbv2`` if ``Identifier`` is the ARN of an Application Load Balancer, Gateway Load Balancer, or Network Load Balancer target group.\n + ``vpc-lattice`` if ``Identifier`` is the ARN of a VPC Lattice target group.\n \n Required if the identifier is the name of a Classic Load Balancer.", "type": "string", - "markdownDescription": "Provides additional context for the value of ``Identifier``.\n The following lists the valid values:\n + ``elb`` if ``Identifier`` is the name of a Classic Load Balancer.\n + ``elbv2`` if ``Identifier`` is the ARN of an Application Load Balancer, Gateway Load Balancer, or Network Load Balancer target group.\n + ``vpc-lattice`` if ``Identifier`` is the ARN of a VPC Lattice target group.\n \n Required if the identifier is the name of a Classic Load Balancer.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "Provides additional context for the value of ``Identifier``.\n The following lists the valid values:\n + ``elb`` if ``Identifier`` is the name of a Classic Load Balancer.\n + ``elbv2`` if ``Identifier`` is the ARN of an Application Load Balancer, Gateway Load Balancer, or Network Load Balancer target group.\n + ``vpc-lattice`` if ``Identifier`` is the ARN of a VPC Lattice target group.\n \n Required if the identifier is the name of a Classic Load Balancer.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "Identifier": { - "description": "Identifies the traffic source.\n For Application Load Balancers, Gateway Load Balancers, Network Load Balancers, and VPC Lattice, this will be the Amazon Resource Name (ARN) for a target group in this account and Region. For Classic Load Balancers, this will be the name of the Classic Load Balancer in this account and Region.\n For example: \n + Application Load Balancer ARN: ``arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/1234567890123456`` \n + Classic Load Balancer name: ``my-classic-load-balancer`` \n + VPC Lattice ARN: ``arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1234567890123456`` \n \n To get the ARN of a target group for a Application Load Balancer, Gateway Load Balancer, or Network Load Balancer, or the name of a Classic Load Balancer, use the Elastic Load Balancing [DescribeTargetGroups](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) and [DescribeLoadBalancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html) API operations.\n To get the ARN of a target group for VPC Lattice, use the VPC Lattice [GetTargetGroup](https://docs.aws.amazon.com/vpc-lattice/latest/APIReference/API_GetTargetGroup.html) API operation.", + "description": "Identifies the traffic source.\n For Application Load Balancers, Gateway Load Balancers, Network Load Balancers, and VPC Lattice, this will be the Amazon Resource Name (ARN) for a target group in this account and Region. For Classic Load Balancers, this will be the name of the Classic Load Balancer in this account and Region.\n For example: \n + Application Load Balancer ARN: ``arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/1234567890123456``\n + Classic Load Balancer name: ``my-classic-load-balancer``\n + VPC Lattice ARN: ``arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1234567890123456``\n \n To get the ARN of a target group for a Application Load Balancer, Gateway Load Balancer, or Network Load Balancer, or the name of a Classic Load Balancer, use the Elastic Load Balancing [DescribeTargetGroups](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) and [DescribeLoadBalancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html) API operations.\n To get the ARN of a target group for VPC Lattice, use the VPC Lattice [GetTargetGroup](https://docs.aws.amazon.com/vpc-lattice/latest/APIReference/API_GetTargetGroup.html) API operation.", "type": "string", - "markdownDescription": "Identifies the traffic source.\n For Application Load Balancers, Gateway Load Balancers, Network Load Balancers, and VPC Lattice, this will be the Amazon Resource Name (ARN) for a target group in this account and Region. For Classic Load Balancers, this will be the name of the Classic Load Balancer in this account and Region.\n For example: \n + Application Load Balancer ARN: ``arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/1234567890123456`` \n + Classic Load Balancer name: ``my-classic-load-balancer`` \n + VPC Lattice ARN: ``arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1234567890123456`` \n \n To get the ARN of a target group for a Application Load Balancer, Gateway Load Balancer, or Network Load Balancer, or the name of a Classic Load Balancer, use the Elastic Load Balancing [DescribeTargetGroups](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) and [DescribeLoadBalancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html) API operations.\n To get the ARN of a target group for VPC Lattice, use the VPC Lattice [GetTargetGroup](https://docs.aws.amazon.com/vpc-lattice/latest/APIReference/API_GetTargetGroup.html) API operation.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "Identifies the traffic source.\n For Application Load Balancers, Gateway Load Balancers, Network Load Balancers, and VPC Lattice, this will be the Amazon Resource Name (ARN) for a target group in this account and Region. For Classic Load Balancers, this will be the name of the Classic Load Balancer in this account and Region.\n For example: \n + Application Load Balancer ARN: ``arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/1234567890123456``\n + Classic Load Balancer name: ``my-classic-load-balancer``\n + VPC Lattice ARN: ``arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1234567890123456``\n \n To get the ARN of a target group for a Application Load Balancer, Gateway Load Balancer, or Network Load Balancer, or the name of a Classic Load Balancer, use the Elastic Load Balancing [DescribeTargetGroups](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) and [DescribeLoadBalancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeLoadBalancers.html) API operations.\n To get the ARN of a target group for VPC Lattice, use the VPC Lattice [GetTargetGroup](https://docs.aws.amazon.com/vpc-lattice/latest/APIReference/API_GetTargetGroup.html) API operation.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, "required": [ @@ -727,20 +727,20 @@ "markdownDescription": "Identifying information for a traffic source.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "InstanceRequirements": { - "description": "The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 Auto Scaling can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n For an example template, see [Configure Amazon EC2 Auto Scaling resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html).\n For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*. For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see [Preview instance types with specified attributes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements) in the *Amazon EC2 User Guide for Linux Instances*.\n ``InstanceRequirements`` is a property of the ``LaunchTemplateOverrides`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.", + "description": "The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 Auto Scaling can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n For an example template, see [Configure Amazon EC2 Auto Scaling resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html).\n For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*. For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see [Preview instance types with specified attributes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements) in the *Amazon EC2 User Guide for Linux Instances*.\n ``InstanceRequirements`` is a property of the ``LaunchTemplateOverrides`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.", "additionalProperties": false, "type": "object", "properties": { "InstanceGenerations": { "uniqueItems": true, - "description": "Indicates whether current or previous generation instance types are included.\n + For current generation instance types, specify ``current``. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.\n + For previous generation instance types, specify ``previous``.\n \n Default: Any current or previous generation", + "description": "Indicates whether current or previous generation instance types are included.\n + For current generation instance types, specify ``current``. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide*.\n + For previous generation instance types, specify ``previous``.\n \n Default: Any current or previous generation", "insertionOrder": false, "type": "array", "items": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "markdownDescription": "Indicates whether current or previous generation instance types are included.\n + For current generation instance types, specify ``current``. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide for Linux Instances*.\n + For previous generation instance types, specify ``previous``.\n \n Default: Any current or previous generation\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "Indicates whether current or previous generation instance types are included.\n + For current generation instance types, specify ``current``. The current generation includes EC2 instance types currently recommended for use. This typically includes the latest two to three generations in each instance family. For more information, see [Instance types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) in the *Amazon EC2 User Guide*.\n + For previous generation instance types, specify ``previous``.\n \n Default: Any current or previous generation\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "AcceleratorTypes": { "uniqueItems": true, @@ -775,20 +775,20 @@ "markdownDescription": "The minimum and maximum number of vCPUs for an instance type.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" }, "LocalStorage": { - "description": "Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide for Linux Instances*.\n Default: ``included``", + "description": "Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide*.\n Default: ``included``", "type": "string", - "markdownDescription": "Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide for Linux Instances*.\n Default: ``included``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, see [Amazon EC2 instance store](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) in the *Amazon EC2 User Guide*.\n Default: ``included``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "CpuManufacturers": { "uniqueItems": true, - "description": "Lists which specific CPU manufacturers to include.\n + For instance types with Intel CPUs, specify ``intel``.\n + For instance types with AMD CPUs, specify ``amd``.\n + For instance types with AWS CPUs, specify ``amazon-web-services``.\n \n Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. \n Default: Any manufacturer", + "description": "Lists which specific CPU manufacturers to include.\n + For instance types with Intel CPUs, specify ``intel``.\n + For instance types with AMD CPUs, specify ``amd``.\n + For instance types with AWS CPUs, specify ``amazon-web-services``.\n + For instance types with Apple CPUs, specify ``apple``.\n \n Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. \n Default: Any manufacturer", "insertionOrder": false, "type": "array", "items": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "markdownDescription": "Lists which specific CPU manufacturers to include.\n + For instance types with Intel CPUs, specify ``intel``.\n + For instance types with AMD CPUs, specify ``amd``.\n + For instance types with AWS CPUs, specify ``amazon-web-services``.\n \n Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. \n Default: Any manufacturer\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "Lists which specific CPU manufacturers to include.\n + For instance types with Intel CPUs, specify ``intel``.\n + For instance types with AMD CPUs, specify ``amd``.\n + For instance types with AWS CPUs, specify ``amazon-web-services``.\n + For instance types with Apple CPUs, specify ``apple``.\n \n Don't confuse the CPU hardware manufacturer with the CPU hardware architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template. \n Default: Any manufacturer\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "BareMetal": { "description": "Indicates whether bare metal instance types are included, excluded, or required.\n Default: ``excluded``", @@ -869,9 +869,9 @@ "markdownDescription": "The baseline performance factors for the instance requirements.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "BaselineEbsBandwidthMbps": { - "description": "The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS\u2013optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide for Linux Instances*.\n Default: No minimum or maximum limits", + "description": "The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS\u2013optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide*.\n Default: No minimum or maximum limits", "$ref": "#/definitions/BaselineEbsBandwidthMbpsRequest", - "markdownDescription": "The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS\u2013optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide for Linux Instances*.\n Default: No minimum or maximum limits\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "markdownDescription": "The minimum and maximum baseline bandwidth performance for an instance type, in Mbps. For more information, see [Amazon EBS\u2013optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide*.\n Default: No minimum or maximum limits\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "SpotMaxPricePercentageOverLowestPrice": { "description": "[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.\n The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. \n If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib``, the price protection threshold is based on the per-vCPU or per-memory price instead of the per instance price. \n Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, Amazon EC2 Auto Scaling will automatically apply optimal price protection to consistently select from a wide range of instance types. To indicate no price protection threshold for Spot Instances, meaning you want to consider all instance types that match your attributes, include one of these parameters and specify a high value, such as ``999999``.", @@ -895,9 +895,9 @@ "markdownDescription": "The minimum and maximum total memory size for the accelerators on an instance type, in MiB.\n Default: No minimum or maximum limits\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "BurstablePerformance": { - "description": "Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide for Linux Instances*.\n Default: ``excluded``", + "description": "Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide*.\n Default: ``excluded``", "type": "string", - "markdownDescription": "Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide for Linux Instances*.\n Default: ``excluded``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "Indicates whether burstable performance instance types are included, excluded, or required. For more information, see [Burstable performance instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) in the *Amazon EC2 User Guide*.\n Default: ``excluded``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "TotalLocalStorageGB": { "description": "The minimum and maximum total local storage size for an instance type, in GB.\n Default: No minimum or maximum limits", @@ -909,7 +909,7 @@ "MemoryMiB", "VCpuCount" ], - "markdownDescription": "The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 Auto Scaling can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n For an example template, see [Configure Amazon EC2 Auto Scaling resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html).\n For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*. For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see [Preview instance types with specified attributes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements) in the *Amazon EC2 User Guide for Linux Instances*.\n ``InstanceRequirements`` is a property of the ``LaunchTemplateOverrides`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "The attributes for the instance types for a mixed instances policy. Amazon EC2 Auto Scaling uses your specified requirements to identify instance types. Then, it uses your On-Demand and Spot allocation strategies to launch instances from these instance types.\n When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.\n To limit the list of instance types from which Amazon EC2 Auto Scaling can identify matching instance types, you can use one of the following parameters, but not both in the same request:\n + ``AllowedInstanceTypes`` - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.\n + ``ExcludedInstanceTypes`` - The instance types to exclude from the list, even if they match your specified attributes.\n \n You must specify ``VCpuCount`` and ``MemoryMiB``. All other attributes are optional. Any unspecified optional attribute is set to its default.\n For an example template, see [Configure Amazon EC2 Auto Scaling resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html).\n For more information, see [Creating an Auto Scaling group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) in the *Amazon EC2 Auto Scaling User Guide*. For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see [Preview instance types with specified attributes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements) in the *Amazon EC2 User Guide for Linux Instances*.\n ``InstanceRequirements`` is a property of the ``LaunchTemplateOverrides`` property of the [AWS::AutoScaling::AutoScalingGroup LaunchTemplate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplate.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "CapacityReservationTarget": { "description": "The target for the Capacity Reservation. Specify Capacity Reservations IDs or Capacity Reservation resource group ARNs.", @@ -935,9 +935,9 @@ "type": "object", "properties": { "CapacityReservationPreference": { - "description": "The capacity reservation preference. The following options are available: \n + ``capacity-reservations-only`` - Auto Scaling will only launch instances into a Capacity Reservation or Capacity Reservation resource group. If capacity isn't available, instances will fail to launch.\n + ``capacity-reservations-first`` - Auto Scaling will try to launch instances into a Capacity Reservation or Capacity Reservation resource group first. If capacity isn't available, instances will run in On-Demand capacity.\n + ``none`` - Auto Scaling will not launch instances into a Capacity Reservation. Instances will run in On-Demand capacity. \n + ``default`` - Auto Scaling uses the Capacity Reservation preference from your launch template or an open Capacity Reservation.", + "description": "The capacity reservation preference. The following options are available: \n + ``capacity-reservations-only`` - Auto Scaling will only launch instances into a Capacity Reservation or Capacity Reservation resource group. If capacity isn't available, instances will fail to launch.\n + ``capacity-reservations-first`` - Auto Scaling will try to launch instances into a Capacity Reservation or Capacity Reservation resource group first. If capacity isn't available, instances will run in On-Demand capacity.\n + ``none`` - Auto Scaling will not launch instances into a Capacity Reservation. Instances will run in On-Demand capacity. \n + ``default`` - Auto Scaling uses the Capacity Reservation preference from your launch template or an open Capacity Reservation.", "type": "string", - "markdownDescription": "The capacity reservation preference. The following options are available: \n + ``capacity-reservations-only`` - Auto Scaling will only launch instances into a Capacity Reservation or Capacity Reservation resource group. If capacity isn't available, instances will fail to launch.\n + ``capacity-reservations-first`` - Auto Scaling will try to launch instances into a Capacity Reservation or Capacity Reservation resource group first. If capacity isn't available, instances will run in On-Demand capacity.\n + ``none`` - Auto Scaling will not launch instances into a Capacity Reservation. Instances will run in On-Demand capacity. \n + ``default`` - Auto Scaling uses the Capacity Reservation preference from your launch template or an open Capacity Reservation.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The capacity reservation preference. The following options are available: \n + ``capacity-reservations-only`` - Auto Scaling will only launch instances into a Capacity Reservation or Capacity Reservation resource group. If capacity isn't available, instances will fail to launch.\n + ``capacity-reservations-first`` - Auto Scaling will try to launch instances into a Capacity Reservation or Capacity Reservation resource group first. If capacity isn't available, instances will run in On-Demand capacity.\n + ``none`` - Auto Scaling will not launch instances into a Capacity Reservation. Instances will run in On-Demand capacity. \n + ``default`` - Auto Scaling uses the Capacity Reservation preference from your launch template or an open Capacity Reservation.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "CapacityReservationTarget": { "description": "Describes a target Capacity Reservation or Capacity Reservation resource group.", @@ -955,7 +955,7 @@ "LifecycleHookSpecificationList": { "uniqueItems": false, "description": "One or more lifecycle hooks to add to the Auto Scaling group before instances are launched.", - "insertionOrder": true, + "insertionOrder": false, "type": "array", "items": { "$ref": "#/definitions/LifecycleHookSpecification" @@ -1167,9 +1167,9 @@ "markdownDescription": "The unit of measurement for the value specified for desired capacity. Amazon EC2 Auto Scaling supports ``DesiredCapacityType`` for attribute-based instance type selection only. For more information, see [Create a mixed instances group using attribute-based instance type selection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-mixed-instances-group-attribute-based-instance-type-selection.html) in the *Amazon EC2 Auto Scaling User Guide*.\n By default, Amazon EC2 Auto Scaling specifies ``units``, which translates into number of instances.\n Valid values: ``units`` | ``vcpu`` | ``memory-mib``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "PlacementGroup": { - "description": "The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.\n A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.", + "description": "The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide*.\n A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.", "type": "string", - "markdownDescription": "The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide for Linux Instances*.\n A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The name of the placement group into which to launch your instances. For more information, see [Placement groups](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) in the *Amazon EC2 User Guide*.\n A *cluster* placement group is a logical grouping of instances within a single Availability Zone. You cannot specify multiple Availability Zones and a cluster placement group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "CapacityReservationSpecification": { "description": "The capacity reservation specification.", diff --git a/server/schema/resources/aws-b2bi-partnership.json b/server/schema/resources/aws-b2bi-partnership.json index f728d569..32bb68e0 100644 --- a/server/schema/resources/aws-b2bi-partnership.json +++ b/server/schema/resources/aws-b2bi-partnership.json @@ -7,11 +7,33 @@ "properties": { "OutboundEdi": { "$ref": "#/definitions/OutboundEdiOptions" + }, + "InboundEdi": { + "$ref": "#/definitions/InboundEdiOptions" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InboundEdiOptions": { + "type": "object", + "properties": { + "X12": { + "$ref": "#/definitions/X12InboundEdiOptions" } }, "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "LineTerminator": { + "type": "string", + "enum": [ + "CRLF", + "LF", + "CR" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: CRLF | LF | CR \nUpdate requires: No interruption\n" + }, "OutboundEdiOptions": { "oneOf": [ { @@ -52,6 +74,75 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "WrapFormat": { + "type": "string", + "enum": [ + "SEGMENT", + "ONE_LINE", + "LINE_LENGTH" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: SEGMENT | ONE_LINE | LINE_LENGTH \nUpdate requires: No interruption\n" + }, + "WrapOptions": { + "type": "object", + "properties": { + "WrapBy": { + "$ref": "#/definitions/WrapFormat" + }, + "LineTerminator": { + "$ref": "#/definitions/LineTerminator" + }, + "LineLength": { + "type": "number", + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "X12AcknowledgmentOptions": { + "type": "object", + "properties": { + "FunctionalAcknowledgment": { + "$ref": "#/definitions/X12FunctionalAcknowledgment" + }, + "TechnicalAcknowledgment": { + "$ref": "#/definitions/X12TechnicalAcknowledgment" + } + }, + "required": [ + "FunctionalAcknowledgment", + "TechnicalAcknowledgment" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "X12ControlNumbers": { + "type": "object", + "properties": { + "StartingInterchangeControlNumber": { + "type": "number", + "maximum": 999999999, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "StartingFunctionalGroupControlNumber": { + "type": "number", + "maximum": 999999999, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "StartingTransactionSetControlNumber": { + "type": "number", + "maximum": 999999999, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "X12Delimiters": { "type": "object", "properties": { @@ -82,11 +173,23 @@ "properties": { "Common": { "$ref": "#/definitions/X12OutboundEdiHeaders" + }, + "WrapOptions": { + "$ref": "#/definitions/WrapOptions" } }, "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "X12FunctionalAcknowledgment": { + "type": "string", + "enum": [ + "DO_NOT_GENERATE", + "GENERATE_ALL_SEGMENTS", + "GENERATE_WITHOUT_TRANSACTION_SET_RESPONSE_LOOP" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: DO_NOT_GENERATE | GENERATE_ALL_SEGMENTS | GENERATE_WITHOUT_TRANSACTION_SET_RESPONSE_LOOP \nUpdate requires: No interruption\n" + }, "X12FunctionalGroupHeaders": { "type": "object", "properties": { @@ -112,6 +215,25 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "X12GS05TimeFormat": { + "type": "string", + "enum": [ + "HHMM", + "HHMMSS", + "HHMMSSDD" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: HHMM | HHMMSS | HHMMSSDD \nUpdate requires: No interruption\n" + }, + "X12InboundEdiOptions": { + "type": "object", + "properties": { + "AcknowledgmentOptions": { + "$ref": "#/definitions/X12AcknowledgmentOptions" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "X12InterchangeControlHeaders": { "type": "object", "properties": { @@ -176,10 +298,24 @@ "ValidateEdi": { "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "ControlNumbers": { + "$ref": "#/definitions/X12ControlNumbers" + }, + "Gs05TimeFormat": { + "$ref": "#/definitions/X12GS05TimeFormat" } }, "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "X12TechnicalAcknowledgment": { + "type": "string", + "enum": [ + "DO_NOT_GENERATE", + "GENERATE_ALL_SEGMENTS" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: DO_NOT_GENERATE | GENERATE_ALL_SEGMENTS \nUpdate requires: No interruption\n" } }, "properties": { diff --git a/server/schema/resources/aws-b2bi-transformer.json b/server/schema/resources/aws-b2bi-transformer.json index 01d4548e..ecadcc02 100644 --- a/server/schema/resources/aws-b2bi-transformer.json +++ b/server/schema/resources/aws-b2bi-transformer.json @@ -2,6 +2,16 @@ "typeName": "AWS::B2BI::Transformer", "description": "Definition of AWS::B2BI::Transformer Resource Type", "definitions": { + "AdvancedOptions": { + "type": "object", + "properties": { + "X12": { + "$ref": "#/definitions/X12AdvancedOptions" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "EdiType": { "oneOf": [ { @@ -60,6 +70,9 @@ }, "FormatOptions": { "$ref": "#/definitions/FormatOptions" + }, + "AdvancedOptions": { + "$ref": "#/definitions/AdvancedOptions" } }, "required": [ @@ -192,6 +205,16 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: active | inactive \nUpdate requires: No interruption\n" }, + "X12AdvancedOptions": { + "type": "object", + "properties": { + "SplitOptions": { + "$ref": "#/definitions/X12SplitOptions" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "X12Details": { "type": "object", "properties": { @@ -205,6 +228,24 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "X12SplitBy": { + "type": "string", + "enum": [ + "NONE", + "TRANSACTION" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | TRANSACTION \nUpdate requires: No interruption\n" + }, + "X12SplitOptions": { + "type": "object", + "properties": { + "SplitBy": { + "$ref": "#/definitions/X12SplitBy" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "X12TransactionSet": { "type": "string", "enum": [ diff --git a/server/schema/resources/aws-batch-computeenvironment.json b/server/schema/resources/aws-batch-computeenvironment.json index 748bbb21..b8416258 100644 --- a/server/schema/resources/aws-batch-computeenvironment.json +++ b/server/schema/resources/aws-batch-computeenvironment.json @@ -212,6 +212,14 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "UserdataType": { + "type": "string", + "enum": [ + "EKS_BOOTSTRAP_SH", + "EKS_NODEADM" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: EKS_BOOTSTRAP_SH | EKS_NODEADM \nUpdate requires: No interruption\n" + }, "Overrides": { "type": "array", "uniqueItems": false, @@ -240,6 +248,14 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "UserdataType": { + "type": "string", + "enum": [ + "EKS_BOOTSTRAP_SH", + "EKS_NODEADM" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: EKS_BOOTSTRAP_SH | EKS_NODEADM \nUpdate requires: No interruption\n" + }, "TargetInstanceTypes": { "type": "array", "uniqueItems": false, @@ -352,7 +368,8 @@ "Batch:DescribeComputeEnvironments", "iam:CreateServiceLinkedRole", "Iam:PassRole", - "Eks:DescribeCluster" + "Eks:DescribeCluster", + "ec2:DescribeLaunchTemplateVersions" ] }, "read": { @@ -367,7 +384,8 @@ "Batch:TagResource", "Batch:UnTagResource", "Iam:PassRole", - "Eks:DescribeCluster" + "Eks:DescribeCluster", + "ec2:DescribeLaunchTemplateVersions" ] }, "delete": { @@ -376,7 +394,8 @@ "Batch:DescribeComputeEnvironments", "Batch:UpdateComputeEnvironment", "Iam:PassRole", - "Eks:DescribeCluster" + "Eks:DescribeCluster", + "ec2:DescribeLaunchTemplateVersions" ] }, "list": { diff --git a/server/schema/resources/aws-batch-jobqueue.json b/server/schema/resources/aws-batch-jobqueue.json index 4e6bbbec..45a7268c 100644 --- a/server/schema/resources/aws-batch-jobqueue.json +++ b/server/schema/resources/aws-batch-jobqueue.json @@ -26,6 +26,25 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ServiceEnvironmentOrder": { + "type": "object", + "additionalProperties": false, + "properties": { + "ServiceEnvironment": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Order": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ServiceEnvironment", + "Order" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "JobStateTimeLimitAction": { "type": "object", "additionalProperties": false, @@ -33,9 +52,10 @@ "Action": { "type": "string", "enum": [ - "CANCEL" + "CANCEL", + "TERMINATE" ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: CANCEL \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: CANCEL | TERMINATE \nUpdate requires: No interruption\n" }, "MaxTimeSeconds": { "type": "integer", @@ -74,6 +94,10 @@ "JobQueueArn": { "$ref": "#/definitions/ResourceArn" }, + "JobQueueType": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, "ComputeEnvironmentOrder": { "type": "array", "insertionOrder": true, @@ -81,7 +105,16 @@ "items": { "$ref": "#/definitions/ComputeEnvironmentOrder" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Conditional \nType: Array \nUpdate requires: No interruption\n" + }, + "ServiceEnvironmentOrder": { + "type": "array", + "insertionOrder": true, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/ServiceEnvironmentOrder" + }, + "markdownDescription": "\n\n---\n\nRequired: Conditional \nType: Array \nUpdate requires: No interruption\n" }, "JobStateTimeLimitActions": { "type": "array", @@ -96,7 +129,7 @@ "type": "integer", "minimum": 0, "maximum": 1000, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Conditional \nType: Integer \nUpdate requires: No interruption\n" }, "State": { "type": "string", @@ -134,15 +167,27 @@ ] }, "required": [ - "ComputeEnvironmentOrder", "Priority" ], + "oneOf": [ + { + "required": [ + "ComputeEnvironmentOrder" + ] + }, + { + "required": [ + "ServiceEnvironmentOrder" + ] + } + ], "primaryIdentifier": [ "/properties/JobQueueArn" ], "createOnlyProperties": [ "/properties/Tags", - "/properties/JobQueueName" + "/properties/JobQueueName", + "/properties/JobQueueType" ], "readOnlyProperties": [ "/properties/JobQueueArn" diff --git a/server/schema/resources/aws-batch-serviceenvironment.json b/server/schema/resources/aws-batch-serviceenvironment.json new file mode 100644 index 00000000..b3b0dd72 --- /dev/null +++ b/server/schema/resources/aws-batch-serviceenvironment.json @@ -0,0 +1,135 @@ +{ + "typeName": "AWS::Batch::ServiceEnvironment", + "description": "Resource Type definition for AWS::Batch::ServiceEnvironment", + "additionalProperties": false, + "properties": { + "ServiceEnvironmentArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ServiceEnvironmentName": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "State": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ServiceEnvironmentType": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + }, + "CapacityLimits": { + "$ref": "#/definitions/CapacityLimits" + }, + "Tags": { + "type": "object", + "description": "A key-value pair to associate with a resource.", + "patternProperties": { + ".*": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "definitions": { + "CapacityLimits": { + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CapacityLimit" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "CapacityLimit": { + "type": "object", + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "CapacityUnit": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "Batch:TagResource", + "Batch:UntagResource" + ] + }, + "required": [ + "ServiceEnvironmentType", + "CapacityLimits" + ], + "createOnlyProperties": [ + "/properties/ServiceEnvironmentName", + "/properties/ServiceEnvironmentType" + ], + "primaryIdentifier": [ + "/properties/ServiceEnvironmentArn" + ], + "readOnlyProperties": [ + "/properties/ServiceEnvironmentArn" + ], + "additionalIdentifiers": [ + [ + "/properties/ServiceEnvironmentName" + ] + ], + "handlers": { + "create": { + "permissions": [ + "Batch:CreateServiceEnvironment", + "Batch:TagResource", + "Batch:DescribeServiceEnvironments", + "Iam:CreateServiceLinkedRole" + ] + }, + "read": { + "permissions": [ + "Batch:DescribeServiceEnvironments" + ] + }, + "update": { + "permissions": [ + "Batch:UpdateServiceEnvironment", + "Batch:DescribeServiceEnvironments", + "Batch:TagResource", + "Batch:UntagResource" + ] + }, + "delete": { + "permissions": [ + "Batch:DeleteServiceEnvironment", + "Batch:DescribeServiceEnvironments", + "Batch:UpdateServiceEnvironment" + ] + }, + "list": { + "permissions": [ + "Batch:DescribeServiceEnvironments" + ] + } + }, + "attributes": { + "ServiceEnvironmentArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-bedrock-datasource.json b/server/schema/resources/aws-bedrock-datasource.json index 0c84f49b..1b7af9a5 100644 --- a/server/schema/resources/aws-bedrock-datasource.json +++ b/server/schema/resources/aws-bedrock-datasource.json @@ -93,7 +93,7 @@ "maxLength": 2048, "minLength": 1, "description": "The model's ARN.", - "markdownDescription": "The model's ARN.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/([a-z0-9-]{1,63}[.]{1}[a-z0-9-]{1,63}([.]?[a-z0-9-]{1,63})([:][a-z0-9-]{1,63}){0,2})|(arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{1,20}):(|[0-9]{12}):(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+)$ \nUpdate requires: No interruption\n" + "markdownDescription": "The model's ARN.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: ^(arn:aws(-cn|-us-gov|-eusc|-iso(-[b-f])?)?:(bedrock):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$ \nUpdate requires: No interruption\n" }, "ChunkingConfiguration": { "type": "object", diff --git a/server/schema/resources/aws-bedrock-guardrail.json b/server/schema/resources/aws-bedrock-guardrail.json index 5d8909a7..c793d2fd 100644 --- a/server/schema/resources/aws-bedrock-guardrail.json +++ b/server/schema/resources/aws-bedrock-guardrail.json @@ -99,6 +99,20 @@ "minItems": 1, "description": "List of content filter configs in content policy.", "markdownDescription": "List of content filter configs in content policy.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "ContentFiltersTierConfig": { + "type": "object", + "properties": { + "TierName": { + "$ref": "#/definitions/ContentFiltersTierName" + } + }, + "required": [ + "TierName" + ], + "additionalProperties": false, + "description": "Guardrail tier config for content policy", + "markdownDescription": "Guardrail tier config for content policy\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "required": [ @@ -183,6 +197,24 @@ ], "markdownDescription": "Strength for filters\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | LOW | MEDIUM | HIGH \nUpdate requires: No interruption\n" }, + "GuardrailCrossRegionConfig": { + "type": "object", + "description": "The system-defined guardrail profile that you\u2019re using with your guardrail", + "properties": { + "GuardrailProfileArn": { + "type": "string", + "maxLength": 2048, + "minLength": 15, + "description": "The Amazon Resource Name (ARN) of the guardrail profile", + "markdownDescription": "The Amazon Resource Name (ARN) of the guardrail profile\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 15 \nMaximum Length: 2048 \nPattern: ^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail-profile/[a-z0-9-]+[.]{1}guardrail[.]{1}v[0-9:]+$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "GuardrailProfileArn" + ], + "additionalProperties": false, + "markdownDescription": "The system-defined guardrail profile that you\u2019re using with your guardrail\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "GuardrailStatus": { "type": "string", "description": "Status of the guardrail", @@ -492,6 +524,20 @@ "minItems": 1, "description": "List of topic configs in topic policy.", "markdownDescription": "List of topic configs in topic policy.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "TopicsTierConfig": { + "type": "object", + "properties": { + "TierName": { + "$ref": "#/definitions/TopicsTierName" + } + }, + "required": [ + "TierName" + ], + "additionalProperties": false, + "description": "Guardrail tier config for topic policy", + "markdownDescription": "Guardrail tier config for topic policy\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "required": [ @@ -571,6 +617,24 @@ }, "additionalProperties": false, "markdownDescription": "Word policy config for a guardrail.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ContentFiltersTierName": { + "type": "string", + "description": "Tier name for tier configuration in content filters policy", + "enum": [ + "CLASSIC", + "STANDARD" + ], + "markdownDescription": "Tier name for tier configuration in content filters policy\n\n---\n\nRequired: No \nType: String \nAllowed Values: CLASSIC | STANDARD \nUpdate requires: No interruption\n" + }, + "TopicsTierName": { + "type": "string", + "description": "Tier name for tier configuration in topic policy", + "enum": [ + "CLASSIC", + "STANDARD" + ], + "markdownDescription": "Tier name for tier configuration in topic policy\n\n---\n\nRequired: No \nType: String \nAllowed Values: CLASSIC | STANDARD \nUpdate requires: No interruption\n" } }, "properties": { @@ -600,6 +664,9 @@ "format": "date-time", "markdownDescription": "Time Stamp\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, + "CrossRegionConfig": { + "$ref": "#/definitions/GuardrailCrossRegionConfig" + }, "Description": { "type": "string", "maxLength": 200, diff --git a/server/schema/resources/aws-billing-billingview.json b/server/schema/resources/aws-billing-billingview.json new file mode 100644 index 00000000..9a81149b --- /dev/null +++ b/server/schema/resources/aws-billing-billingview.json @@ -0,0 +1,252 @@ +{ + "typeName": "AWS::Billing::BillingView", + "description": "A billing view is a container of cost & usage metadata.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-billing-billing-view.git", + "definitions": { + "DimensionKey": { + "type": "string", + "enum": [ + "LINKED_ACCOUNT" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: LINKED_ACCOUNT \nUpdate requires: No interruption\n" + }, + "BillingViewType": { + "type": "string", + "enum": [ + "PRIMARY", + "BILLING_GROUP", + "CUSTOM" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: PRIMARY | BILLING_GROUP | CUSTOM \nUpdate requires: No interruption\n" + }, + "Tag": { + "description": "A key-value pair to associate with a Billing View.", + "type": "object", + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "A key-value pair to associate with a Billing View.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: arn:aws[a-z-]*:(billing)::[0-9]{12}:billingview/[a-zA-Z0-9_+=.@-]{1,75} \nUpdate requires: No interruption\n" + } + }, + "properties": { + "Arn": { + "$ref": "#/definitions/Arn" + }, + "BillingViewType": { + "$ref": "#/definitions/BillingViewType" + }, + "DataFilterExpression": { + "type": "object", + "additionalProperties": false, + "properties": { + "Dimensions": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "$ref": "#/definitions/DimensionKey" + }, + "Values": { + "type": "array", + "items": { + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: [\\S\\s]* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 200, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: [\\S\\s]* \nUpdate requires: No interruption\n" + }, + "Values": { + "type": "array", + "items": { + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: [\\S\\s]* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 200, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CreatedAt": { + "description": "The time when the billing view was created.", + "type": "number", + "markdownDescription": "The time when the billing view was created.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Description": { + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: Replacement\n" + }, + "Name": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: [a-zA-Z0-9_\\+=\\.\\-@]+ \nUpdate requires: Replacement\n" + }, + "OwnerAccountId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: [0-9]{12} \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "description": "An array of key-value pairs associated to the billing view being created.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "maxItems": 200, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs associated to the billing view being created.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "SourceViews": { + "description": "An array of strings that define the billing view's source.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: arn:aws[a-z-]*:(billing)::[0-9]{12}:billingview/[a-zA-Z0-9_+=.@-]{1,75} \nUpdate requires: No interruption\n" + }, + "markdownDescription": "An array of strings that define the billing view's source.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: Replacement\n" + }, + "UpdatedAt": { + "description": "The time when the billing view was last updated.", + "type": "number", + "markdownDescription": "The time when the billing view was last updated.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "additionalProperties": false, + "required": [ + "Name", + "SourceViews" + ], + "readOnlyProperties": [ + "/properties/Arn", + "/properties/CreatedAt", + "/properties/UpdatedAt", + "/properties/OwnerAccountId", + "/properties/BillingViewType" + ], + "createOnlyProperties": [ + "/properties/SourceViews", + "/properties/Description", + "/properties/Name" + ], + "primaryIdentifier": [ + "/properties/Arn" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "billing:TagResource", + "billing:UntagResource", + "billing:ListTagsForResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "billing:CreateBillingView", + "billing:TagResource", + "billing:ListTagsForResource", + "billing:GetBillingView", + "billing:ListSourceViewsForBillingView" + ] + }, + "read": { + "permissions": [ + "billing:GetBillingView", + "billing:ListTagsForResource", + "billing:ListSourceViewsForBillingView" + ] + }, + "update": { + "permissions": [ + "billing:UpdateBillingView", + "billing:GetBillingView", + "billing:ListTagsForResource", + "billing:TagResource", + "billing:UntagResource", + "billing:ListSourceViewsForBillingView" + ] + }, + "delete": { + "permissions": [ + "billing:GetBillingView", + "billing:DeleteBillingView" + ] + }, + "list": { + "permissions": [ + "billing:ListBillingViews" + ] + } + }, + "attributes": { + "Arn": { + "$ref": "#/definitions/Arn" + }, + "BillingViewType": { + "$ref": "#/definitions/BillingViewType" + }, + "CreatedAt": { + "description": "The time when the billing view was created.", + "type": "number", + "markdownDescription": "The time when the billing view was created.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OwnerAccountId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: [0-9]{12} \nUpdate requires: No interruption\nRead only property: Yes" + }, + "UpdatedAt": { + "description": "The time when the billing view was last updated.", + "type": "number", + "markdownDescription": "The time when the billing view was last updated.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-cassandra-table.json b/server/schema/resources/aws-cassandra-table.json index a437d1d8..664d3634 100644 --- a/server/schema/resources/aws-cassandra-table.json +++ b/server/schema/resources/aws-cassandra-table.json @@ -251,6 +251,55 @@ ], "additionalProperties": false, "markdownDescription": "Represents replica specifications.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CdcSpecification": { + "description": "Represents the CDC configuration for the table", + "type": "object", + "properties": { + "Status": { + "$ref": "#/definitions/CdcStatus" + }, + "ViewType": { + "$ref": "#/definitions/CdcViewType" + }, + "Tags": { + "description": "An array of key-value pairs to apply to the CDC stream resource", + "type": "array", + "uniqueItems": true, + "items": { + "$ref": "#/definitions/Tag" + }, + "minItems": 0, + "maxItems": 50, + "markdownDescription": "An array of key-value pairs to apply to the CDC stream resource\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Status" + ], + "additionalProperties": false, + "markdownDescription": "Represents the CDC configuration for the table\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CdcStatus": { + "description": "Indicates whether CDC is enabled or disabled for the table", + "type": "string", + "enum": [ + "ENABLED", + "DISABLED" + ], + "markdownDescription": "Indicates whether CDC is enabled or disabled for the table\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, + "CdcViewType": { + "description": "Specifies what data should be captured in the change data stream", + "type": "string", + "enum": [ + "NEW_IMAGE", + "OLD_IMAGE", + "KEYS_ONLY", + "NEW_AND_OLD_IMAGES" + ], + "default": "NEW_AND_OLD_IMAGES", + "markdownDescription": "Specifies what data should be captured in the change data stream\n\n---\n\nRequired: No \nType: String \nAllowed Values: NEW_IMAGE | OLD_IMAGE | KEYS_ONLY | NEW_AND_OLD_IMAGES \nUpdate requires: No interruption\n" } }, "properties": { @@ -331,6 +380,9 @@ "AutoScalingSpecifications": { "$ref": "#/definitions/AutoScalingSpecification" }, + "CdcSpecification": { + "$ref": "#/definitions/CdcSpecification" + }, "ReplicaSpecifications": { "type": "array", "minItems": 1, @@ -396,7 +448,8 @@ "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudwatch:GetMetricData", - "cloudwatch:PutMetricAlarm" + "cloudwatch:PutMetricAlarm", + "iam:CreateServiceLinkedRole" ] }, "read": { @@ -436,7 +489,8 @@ "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudwatch:GetMetricData", - "cloudwatch:PutMetricAlarm" + "cloudwatch:PutMetricAlarm", + "iam:CreateServiceLinkedRole" ] }, "delete": { diff --git a/server/schema/resources/aws-certificatemanager-certificate.json b/server/schema/resources/aws-certificatemanager-certificate.json index 5b57cbc0..34965b7e 100644 --- a/server/schema/resources/aws-certificatemanager-certificate.json +++ b/server/schema/resources/aws-certificatemanager-certificate.json @@ -7,6 +7,10 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, + "CertificateExport": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "DomainValidationOptions": { "type": "array", "uniqueItems": true, diff --git a/server/schema/resources/aws-cleanrooms-collaboration.json b/server/schema/resources/aws-cleanrooms-collaboration.json index d5c2da56..97d152a0 100644 --- a/server/schema/resources/aws-cleanrooms-collaboration.json +++ b/server/schema/resources/aws-cleanrooms-collaboration.json @@ -128,8 +128,7 @@ }, "required": [ "AccountId", - "DisplayName", - "MemberAbilities" + "DisplayName" ], "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -310,7 +309,7 @@ }, "maxItems": 9, "minItems": 0, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: Replacement\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" }, "Name": { "type": "string", @@ -333,8 +332,6 @@ }, "required": [ "CreatorDisplayName", - "CreatorMemberAbilities", - "Members", "Name", "Description", "QueryLogStatus" diff --git a/server/schema/resources/aws-cleanrooms-configuredtable.json b/server/schema/resources/aws-cleanrooms-configuredtable.json index 01dd9fff..22a0c2e6 100644 --- a/server/schema/resources/aws-cleanrooms-configuredtable.json +++ b/server/schema/resources/aws-cleanrooms-configuredtable.json @@ -682,7 +682,7 @@ }, "maxItems": 100, "minItems": 1, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: Replacement\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, "AnalysisMethod": { "$ref": "#/definitions/AnalysisMethod" @@ -731,10 +731,6 @@ "/properties/Arn", "/properties/ConfiguredTableIdentifier" ], - "createOnlyProperties": [ - "/properties/AllowedColumns", - "/properties/TableReference" - ], "primaryIdentifier": [ "/properties/ConfiguredTableIdentifier" ], @@ -783,6 +779,8 @@ "update": { "permissions": [ "cleanrooms:UpdateConfiguredTable", + "cleanrooms:UpdateConfiguredTableReference", + "cleanrooms:UpdateConfiguredTableAllowedColumns", "cleanrooms:GetConfiguredTable", "cleanrooms:CreateConfiguredTableAnalysisRule", "cleanrooms:UpdateConfiguredTableAnalysisRule", diff --git a/server/schema/resources/aws-cloudfront-distribution.json b/server/schema/resources/aws-cloudfront-distribution.json index c1f2bac6..4cc617d9 100644 --- a/server/schema/resources/aws-cloudfront-distribution.json +++ b/server/schema/resources/aws-cloudfront-distribution.json @@ -849,6 +849,11 @@ "description": "The number of seconds that CloudFront waits when trying to establish a connection to the origin. The minimum timeout is 1 second, the maximum is 10 seconds, and the default (if you don't specify otherwise) is 10 seconds.\n For more information, see [Origin Connection Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#origin-connection-timeout) in the *Amazon CloudFront Developer Guide*.", "markdownDescription": "The number of seconds that CloudFront waits when trying to establish a connection to the origin. The minimum timeout is 1 second, the maximum is 10 seconds, and the default (if you don't specify otherwise) is 10 seconds.\n For more information, see [Origin Connection Timeout](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#origin-connection-timeout) in the *Amazon CloudFront Developer Guide*.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, + "ResponseCompletionTimeout": { + "type": "integer", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, "CustomOriginConfig": { "$ref": "#/definitions/CustomOriginConfig", "description": "Use this type to specify an origin that is not an Amazon S3 bucket, with one exception. If the Amazon S3 bucket is configured with static website hosting, use this type. If the Amazon S3 bucket is not configured with static website hosting, use the ``S3OriginConfig`` type instead.", @@ -1143,6 +1148,12 @@ "type": "string", "description": "If you're using origin access control (OAC) instead of origin access identity, specify an empty ``OriginAccessIdentity`` element. For more information, see [Restricting access to an](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*.\n The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n ``origin-access-identity/cloudfront/ID-of-origin-access-identity`` \n The ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.", "markdownDescription": "If you're using origin access control (OAC) instead of origin access identity, specify an empty ``OriginAccessIdentity`` element. For more information, see [Restricting access to an](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html) in the *Amazon CloudFront Developer Guide*.\n The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:\n ``origin-access-identity/cloudfront/ID-of-origin-access-identity`` \n The ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.\n If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.\n To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.\n To replace the origin access identity, update the distribution configuration and specify the new origin access identity.\n For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "OriginReadTimeout": { + "default": 30, + "type": "integer", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "type": "object", diff --git a/server/schema/resources/aws-cloudfront-distributiontenant.json b/server/schema/resources/aws-cloudfront-distributiontenant.json index 87d4d039..7cc863af 100644 --- a/server/schema/resources/aws-cloudfront-distributiontenant.json +++ b/server/schema/resources/aws-cloudfront-distributiontenant.json @@ -191,14 +191,16 @@ "cloudfront:GetDistributionTenant", "cloudfront:GetManagedCertificateDetails", "cloudfront:TagResource", - "cloudfront:VerifyDnsConfiguration" + "cloudfront:VerifyDnsConfiguration", + "wafv2:GetWebACL" ] }, "delete": { "permissions": [ "cloudfront:DeleteDistributionTenant", "cloudfront:UpdateDistributionTenant", - "cloudfront:GetDistributionTenant" + "cloudfront:GetDistributionTenant", + "wafv2:GetWebACL" ] }, "list": { @@ -223,7 +225,8 @@ "cloudfront:ListTagsForResource", "cloudfront:TagResource", "cloudfront:UntagResource", - "cloudfront:VerifyDnsConfiguration" + "cloudfront:VerifyDnsConfiguration", + "wafv2:GetWebACL" ] } }, diff --git a/server/schema/resources/aws-cloudwatch-alarm.json b/server/schema/resources/aws-cloudwatch-alarm.json index c7827c88..04d79a12 100644 --- a/server/schema/resources/aws-cloudwatch-alarm.json +++ b/server/schema/resources/aws-cloudwatch-alarm.json @@ -40,9 +40,9 @@ "markdownDescription": "The dimensions for the metric associated with the alarm. For an alarm based on a math expression, you can't specify ``Dimensions``. Instead, you use ``Metrics``.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "Period": { - "description": "The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric. Valid values are 10, 30, 60, and any multiple of 60.\n For an alarm based on a math expression, you can't specify ``Period``, and instead you use the ``Metrics`` parameter.\n *Minimum:* 10", + "description": "The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric. Valid values are 10, 20, 30, 60, and any multiple of 60.\n For an alarm based on a math expression, you can't specify ``Period``, and instead you use the ``Metrics`` parameter.\n *Minimum:* 10", "type": "integer", - "markdownDescription": "The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric. Valid values are 10, 30, 60, and any multiple of 60.\n For an alarm based on a math expression, you can't specify ``Period``, and instead you use the ``Metrics`` parameter.\n *Minimum:* 10\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The period, in seconds, over which the statistic is applied. This is required for an alarm based on a metric. Valid values are 10, 20, 30, 60, and any multiple of 60.\n For an alarm based on a math expression, you can't specify ``Period``, and instead you use the ``Metrics`` parameter.\n *Minimum:* 10\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "EvaluationPeriods": { "description": "The number of periods over which data is compared to the specified threshold. If you are setting an alarm that requires that a number of consecutive data points be breaching to trigger the alarm, this value specifies that number. If you are setting an \"M out of N\" alarm, this value is the N, and ``DatapointsToAlarm`` is the M.\n For more information, see [Evaluating an Alarm](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarm-evaluation) in the *User Guide*.", @@ -152,14 +152,14 @@ }, "definitions": { "MetricStat": { - "description": "This structure defines the metric to be returned, along with the statistics, period, and units.\n ``MetricStat`` is a property of the [MetricDataQuery](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html) property type.", + "description": "This structure defines the metric to be returned, along with the statistics, period, and units.\n ``MetricStat`` is a property of the [MetricDataQuery](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html) property type.", "type": "object", "additionalProperties": false, "properties": { "Period": { - "description": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` call that includes a ``StorageResolution`` of 1 second.\n If the ``StartTime`` parameter specifies a time stamp that is greater than 3 hours ago, you must specify the period as follows or no data points in that time range is returned:\n + Start time between 3 hours and 15 days ago - Use a multiple of 60 seconds (1 minute).\n + Start time between 15 and 63 days ago - Use a multiple of 300 seconds (5 minutes).\n + Start time greater than 63 days ago - Use a multiple of 3600 seconds (1 hour).", + "description": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 20, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` call that includes a ``StorageResolution`` of 1 second.\n If the ``StartTime`` parameter specifies a time stamp that is greater than 3 hours ago, you must specify the period as follows or no data points in that time range is returned:\n + Start time between 3 hours and 15 days ago - Use a multiple of 60 seconds (1 minute).\n + Start time between 15 and 63 days ago - Use a multiple of 300 seconds (5 minutes).\n + Start time greater than 63 days ago - Use a multiple of 3600 seconds (1 hour).", "type": "integer", - "markdownDescription": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` call that includes a ``StorageResolution`` of 1 second.\n If the ``StartTime`` parameter specifies a time stamp that is greater than 3 hours ago, you must specify the period as follows or no data points in that time range is returned:\n + Start time between 3 hours and 15 days ago - Use a multiple of 60 seconds (1 minute).\n + Start time between 15 and 63 days ago - Use a multiple of 300 seconds (5 minutes).\n + Start time greater than 63 days ago - Use a multiple of 3600 seconds (1 hour).\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 20, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` call that includes a ``StorageResolution`` of 1 second.\n If the ``StartTime`` parameter specifies a time stamp that is greater than 3 hours ago, you must specify the period as follows or no data points in that time range is returned:\n + Start time between 3 hours and 15 days ago - Use a multiple of 60 seconds (1 minute).\n + Start time between 15 and 63 days ago - Use a multiple of 300 seconds (5 minutes).\n + Start time greater than 63 days ago - Use a multiple of 3600 seconds (1 hour).\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, "Metric": { "description": "The metric to return, including the metric name, namespace, and dimensions.", @@ -182,7 +182,7 @@ "Period", "Metric" ], - "markdownDescription": "This structure defines the metric to be returned, along with the statistics, period, and units.\n ``MetricStat`` is a property of the [MetricDataQuery](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "This structure defines the metric to be returned, along with the statistics, period, and units.\n ``MetricStat`` is a property of the [MetricDataQuery](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricdataquery.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Metric": { "description": "The ``Metric`` property type represents a specific metric. ``Metric`` is a property of the [MetricStat](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html) property type.", @@ -213,7 +213,7 @@ "markdownDescription": "The ``Metric`` property type represents a specific metric. ``Metric`` is a property of the [MetricStat](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudwatch-alarm-metricstat.html) property type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Dimension": { - "description": "Dimension is an embedded property of the ``AWS::CloudWatch::Alarm`` type. Dimensions are name/value pairs that can be associated with a CW metric. You can specify a maximum of 10 dimensions for a given metric.", + "description": "Dimension is an embedded property of the ``AWS::CloudWatch::Alarm`` type. Dimensions are name/value pairs that can be associated with a CW metric. You can specify a maximum of 30 dimensions for a given metric.", "type": "object", "additionalProperties": false, "properties": { @@ -232,7 +232,7 @@ "Value", "Name" ], - "markdownDescription": "Dimension is an embedded property of the ``AWS::CloudWatch::Alarm`` type. Dimensions are name/value pairs that can be associated with a CW metric. You can specify a maximum of 10 dimensions for a given metric.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Dimension is an embedded property of the ``AWS::CloudWatch::Alarm`` type. Dimensions are name/value pairs that can be associated with a CW metric. You can specify a maximum of 30 dimensions for a given metric.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "MetricDataQuery": { "description": "The ``MetricDataQuery`` property type specifies the metric data to return, and whether this call is just retrieving a batch set of data for one metric, or is performing a math expression on metric data. \n Any expression used must return a single time series. For more information, see [Metric Math Syntax and Functions](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html#metric-math-syntax) in the *User Guide*.", @@ -265,9 +265,9 @@ "markdownDescription": "The math expression to be performed on the returned data, if this object is performing a math expression. This expression can use the ``Id`` of the other metrics to refer to those metrics, and can also use the ``Id`` of other expressions to use the result of those expressions. For more information about metric math expressions, see [Metric Math Syntax and Functions](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html#metric-math-syntax) in the *User Guide*.\n Within each MetricDataQuery object, you must specify either ``Expression`` or ``MetricStat`` but not both.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Period": { - "description": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` operation that includes a ``StorageResolution of 1 second``.", + "description": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 20, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` operation that includes a ``StorageResolution of 1 second``.", "type": "integer", - "markdownDescription": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` operation that includes a ``StorageResolution of 1 second``.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The granularity, in seconds, of the returned data points. For metrics with regular resolution, a period can be as short as one minute (60 seconds) and must be a multiple of 60. For high-resolution metrics that are collected at intervals of less than one minute, the period can be 1, 5, 10, 20, 30, 60, or any multiple of 60. High-resolution metrics are those metrics stored by a ``PutMetricData`` operation that includes a ``StorageResolution of 1 second``.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "AccountId": { "description": "The ID of the account where the metrics are located, if this is a cross-account alarm.", diff --git a/server/schema/resources/aws-codebuild-project.json b/server/schema/resources/aws-codebuild-project.json index 69bf1cb6..1a9e1ac5 100644 --- a/server/schema/resources/aws-codebuild-project.json +++ b/server/schema/resources/aws-codebuild-project.json @@ -283,6 +283,29 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "PullRequestBuildPolicy": { + "type": "object", + "additionalProperties": false, + "properties": { + "RequiresCommentApproval": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "ApproverRoles": { + "type": "array", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "RequiresCommentApproval" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "ProjectCache": { "type": "object", "additionalProperties": false, @@ -591,6 +614,9 @@ }, "ScopeConfiguration": { "$ref": "#/definitions/ScopeConfiguration" + }, + "PullRequestBuildPolicy": { + "$ref": "#/definitions/PullRequestBuildPolicy" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" diff --git a/server/schema/resources/aws-codepipeline-customactiontype.json b/server/schema/resources/aws-codepipeline-customactiontype.json index 75000138..04ca9350 100644 --- a/server/schema/resources/aws-codepipeline-customactiontype.json +++ b/server/schema/resources/aws-codepipeline-customactiontype.json @@ -184,7 +184,12 @@ "tagOnCreate": true, "tagUpdatable": true, "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "codepipeline:TagResource", + "codepipeline:UntagResource", + "codepipeline:ListTagsForResource" + ] }, "required": [ "Category", diff --git a/server/schema/resources/aws-config-aggregationauthorization.json b/server/schema/resources/aws-config-aggregationauthorization.json index c67a02a5..110e4916 100644 --- a/server/schema/resources/aws-config-aggregationauthorization.json +++ b/server/schema/resources/aws-config-aggregationauthorization.json @@ -26,6 +26,7 @@ "type": "array", "maxItems": 50, "uniqueItems": true, + "insertionOrder": false, "items": { "$ref": "#/definitions/Tag" }, diff --git a/server/schema/resources/aws-connect-evaluationform.json b/server/schema/resources/aws-connect-evaluationform.json index 36ffef63..cda1036b 100644 --- a/server/schema/resources/aws-connect-evaluationform.json +++ b/server/schema/resources/aws-connect-evaluationform.json @@ -1,31 +1,67 @@ { - "typeName": "AWS::Connect::EvaluationForm", - "description": "Creates an evaluation form for the specified CON instance.", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", - "definitions": { - "RefId": { - "description": "The identifier to reference the item.", - "type": "string", - "markdownDescription": "The identifier to reference the item.\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9._-]{1,40}$ \nUpdate requires: No interruption\n" + "tagging": { + "permissions": [ + "connect:ListTagsForResource", + "connect:UntagResource", + "connect:TagResource" + ], + "taggable": true, + "tagOnCreate": false, + "tagUpdatable": true, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": true + }, + "handlers": { + "read": { + "permissions": [ + "connect:DescribeEvaluationForm", + "connect:ListEvaluationFormVersions" + ] }, - "Weight": { - "description": "The item weight used for scoring.", - "type": "number", - "minimum": 0, - "maximum": 100, - "markdownDescription": "The item weight used for scoring.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + "create": { + "permissions": [ + "connect:CreateEvaluationForm", + "connect:ActivateEvaluationForm", + "connect:TagResource" + ] }, - "Score": { - "description": "The score of an answer option.", - "type": "integer", - "minimum": 0, - "maximum": 10, - "markdownDescription": "The score of an answer option.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "update": { + "permissions": [ + "connect:UpdateEvaluationForm", + "connect:ListEvaluationFormVersions", + "connect:ActivateEvaluationForm", + "connect:DeactivateEvaluationForm", + "connect:TagResource", + "connect:UntagResource" + ] + }, + "list": { + "permissions": [ + "connect:ListEvaluationForms" + ] }, + "delete": { + "permissions": [ + "connect:DeleteEvaluationForm", + "connect:UntagResource" + ] + } + }, + "typeName": "AWS::Connect::EvaluationForm", + "readOnlyProperties": [ + "/properties/EvaluationFormArn" + ], + "description": "Creates an evaluation form for the specified CON instance.", + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/EvaluationFormArn" + ], + "definitions": { "EvaluationFormBaseItem": { "description": "An item at the root level. All items must be sections.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { "Section": { "description": "A subsection or inner section of an item.", @@ -38,33 +74,15 @@ ], "markdownDescription": "An item at the root level. All items must be sections.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormItem": { - "description": "Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.", - "type": "object", - "additionalProperties": false, - "properties": { - "Section": { - "description": "The information of the section.", - "$ref": "#/definitions/EvaluationFormSection", - "markdownDescription": "The information of the section.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, - "Question": { - "description": "The information of the question.", - "$ref": "#/definitions/EvaluationFormQuestion", - "markdownDescription": "The information of the question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, "EvaluationFormSection": { "description": "Information about a section from an evaluation form. A section can contain sections and/or questions. Evaluation forms can only contain sections and subsections (two level nesting).", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { "Title": { + "minLength": 1, "description": "The title of the section.\n *Length Constraints*: Minimum length of 1. Maximum length of 128.", "type": "string", - "minLength": 1, "maxLength": 128, "markdownDescription": "The title of the section.\n *Length Constraints*: Minimum length of 1. Maximum length of 128.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, @@ -74,22 +92,22 @@ "maxLength": 1024, "markdownDescription": "The instructions of the section.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, - "RefId": { - "description": "The identifier of the section. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", - "$ref": "#/definitions/RefId", - "markdownDescription": "The identifier of the section. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" - }, "Items": { - "description": "The items of the section.\n *Minimum*: 1", - "type": "array", - "insertionOrder": true, "minItems": 1, "maxItems": 200, + "description": "The items of the section.\n *Minimum*: 1", + "insertionOrder": true, + "type": "array", "items": { "$ref": "#/definitions/EvaluationFormItem" }, "markdownDescription": "The items of the section.\n *Minimum*: 1\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, + "RefId": { + "description": "The identifier of the section. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", + "$ref": "#/definitions/RefId", + "markdownDescription": "The identifier of the section. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, "Weight": { "description": "The scoring weight of the section.\n *Minimum*: 0 \n *Maximum*: 100", "$ref": "#/definitions/Weight", @@ -102,146 +120,279 @@ ], "markdownDescription": "Information about a section from an evaluation form. A section can contain sections and/or questions. Evaluation forms can only contain sections and subsections (two level nesting).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormNumericQuestionOption": { - "description": "Information about the option range used for scoring in numeric questions.", - "type": "object", + "EvaluationFormSingleSelectQuestionProperties": { + "description": "Information about the options in single select questions.", "additionalProperties": false, + "type": "object", "properties": { - "MinValue": { - "description": "The minimum answer value of the range option.", - "type": "integer", - "markdownDescription": "The minimum answer value of the range option.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" - }, - "MaxValue": { - "description": "The maximum answer value of the range option.", - "type": "integer", - "markdownDescription": "The maximum answer value of the range option.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "DisplayAs": { + "description": "The display mode of the single select question.\n *Allowed values*: ``DROPDOWN`` | ``RADIO``", + "type": "string", + "enum": [ + "DROPDOWN", + "RADIO" + ], + "markdownDescription": "The display mode of the single select question.\n *Allowed values*: ``DROPDOWN`` | ``RADIO``\n\n---\n\nRequired: No \nType: String \nAllowed Values: DROPDOWN | RADIO \nUpdate requires: No interruption\n" }, - "Score": { - "description": "The score assigned to answer values within the range option.\n *Minimum*: 0\n *Maximum*: 10", - "$ref": "#/definitions/Score", - "markdownDescription": "The score assigned to answer values within the range option.\n *Minimum*: 0\n *Maximum*: 10\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "Options": { + "minItems": 2, + "maxItems": 256, + "description": "The answer options of the single select question.\n *Minimum*: 2\n *Maximum*: 256", + "insertionOrder": true, + "type": "array", + "items": { + "$ref": "#/definitions/EvaluationFormSingleSelectQuestionOption" + }, + "markdownDescription": "The answer options of the single select question.\n *Minimum*: 2\n *Maximum*: 256\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, - "AutomaticFail": { - "description": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.", - "type": "boolean", - "markdownDescription": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "Automation": { + "description": "The display mode of the single select question.", + "$ref": "#/definitions/EvaluationFormSingleSelectQuestionAutomation", + "markdownDescription": "The display mode of the single select question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, "required": [ - "MinValue", - "MaxValue" + "Options" ], - "markdownDescription": "Information about the option range used for scoring in numeric questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Information about the options in single select questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "NumericQuestionPropertyValueAutomation": { - "description": "Information about the property value used in automation of a numeric questions.", - "type": "object", + "EvaluationFormQuestion": { + "description": "Information about a question from an evaluation form.", "additionalProperties": false, + "type": "object", "properties": { - "Label": { - "description": "The property label of the automation.", + "NotApplicableEnabled": { + "description": "The flag to enable not applicable answers to the question.", + "type": "boolean", + "markdownDescription": "The flag to enable not applicable answers to the question.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "Title": { + "minLength": 1, + "description": "The title of the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 350.", + "type": "string", + "maxLength": 350, + "markdownDescription": "The title of the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 350.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 350 \nUpdate requires: No interruption\n" + }, + "QuestionType": { + "description": "The type of the question.\n *Allowed values*: ``NUMERIC`` | ``SINGLESELECT`` | ``TEXT``", "type": "string", "enum": [ - "OVERALL_CUSTOMER_SENTIMENT_SCORE", - "OVERALL_AGENT_SENTIMENT_SCORE", - "NON_TALK_TIME", - "NON_TALK_TIME_PERCENTAGE", - "NUMBER_OF_INTERRUPTIONS", - "CONTACT_DURATION", - "AGENT_INTERACTION_DURATION", - "CUSTOMER_HOLD_TIME" + "NUMERIC", + "SINGLESELECT", + "TEXT" ], - "markdownDescription": "The property label of the automation.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE | OVERALL_AGENT_SENTIMENT_SCORE | NON_TALK_TIME | NON_TALK_TIME_PERCENTAGE | NUMBER_OF_INTERRUPTIONS | CONTACT_DURATION | AGENT_INTERACTION_DURATION | CUSTOMER_HOLD_TIME \nUpdate requires: No interruption\n" + "markdownDescription": "The type of the question.\n *Allowed values*: ``NUMERIC`` | ``SINGLESELECT`` | ``TEXT``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: NUMERIC | SINGLESELECT | TEXT \nUpdate requires: No interruption\n" + }, + "Instructions": { + "description": "The instructions of the section.\n *Length Constraints*: Minimum length of 0. Maximum length of 1024.", + "type": "string", + "maxLength": 1024, + "markdownDescription": "The instructions of the section.\n *Length Constraints*: Minimum length of 0. Maximum length of 1024.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "RefId": { + "description": "The identifier of the question. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", + "$ref": "#/definitions/RefId", + "markdownDescription": "The identifier of the question. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, + "QuestionTypeProperties": { + "description": "The properties of the type of question. Text questions do not have to define question type properties.", + "$ref": "#/definitions/EvaluationFormQuestionTypeProperties", + "markdownDescription": "The properties of the type of question. Text questions do not have to define question type properties.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Weight": { + "description": "The scoring weight of the section.\n *Minimum*: 0\n *Maximum*: 100", + "$ref": "#/definitions/Weight", + "markdownDescription": "The scoring weight of the section.\n *Minimum*: 0\n *Maximum*: 100\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, "required": [ - "Label" + "RefId", + "Title", + "QuestionType" ], - "markdownDescription": "Information about the property value used in automation of a numeric questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Information about a question from an evaluation form.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormNumericQuestionAutomation": { - "description": "Information about the automation configuration in numeric questions.", - "type": "object", + "EvaluationFormSingleSelectQuestionAutomation": { + "description": "Information about the automation configuration in single select questions. Automation options are evaluated in order, and the first matched option is applied. If no automation option matches, and there is a default option, then the default option is applied.", "additionalProperties": false, + "type": "object", "properties": { - "PropertyValue": { - "description": "The property value of the automation.", - "$ref": "#/definitions/NumericQuestionPropertyValueAutomation", - "markdownDescription": "The property value of the automation.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + "Options": { + "minItems": 1, + "maxItems": 20, + "description": "The automation options of the single select question.\n *Minimum*: 1\n *Maximum*: 20", + "insertionOrder": true, + "type": "array", + "items": { + "$ref": "#/definitions/EvaluationFormSingleSelectQuestionAutomationOption" + }, + "markdownDescription": "The automation options of the single select question.\n *Minimum*: 1\n *Maximum*: 20\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "DefaultOptionRefId": { + "description": "The identifier of the default answer option, when none of the automation options match the criteria.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", + "$ref": "#/definitions/RefId", + "markdownDescription": "The identifier of the default answer option, when none of the automation options match the criteria.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, "required": [ - "PropertyValue" + "Options" ], - "markdownDescription": "Information about the automation configuration in numeric questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Information about the automation configuration in single select questions. Automation options are evaluated in order, and the first matched option is applied. If no automation option matches, and there is a default option, then the default option is applied.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormNumericQuestionProperties": { - "description": "Information about properties for a numeric question in an evaluation form.", - "type": "object", + "EvaluationFormSingleSelectQuestionAutomationOption": { + "description": "The automation options of the single select question.", "additionalProperties": false, + "type": "object", "properties": { - "MinValue": { - "description": "The minimum answer value.", + "RuleCategory": { + "description": "The automation option based on a rule category for the single select question.", + "$ref": "#/definitions/SingleSelectQuestionRuleCategoryAutomation", + "markdownDescription": "The automation option based on a rule category for the single select question.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "RuleCategory" + ], + "markdownDescription": "The automation options of the single select question.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EvaluationFormNumericQuestionAutomation": { + "description": "Information about the automation configuration in numeric questions.", + "additionalProperties": false, + "type": "object", + "properties": { + "AnswerSource": { + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "PropertyValue": { + "description": "The property value of the automation.", + "$ref": "#/definitions/NumericQuestionPropertyValueAutomation", + "markdownDescription": "The property value of the automation.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Information about the automation configuration in numeric questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EvaluationFormNumericQuestionOption": { + "description": "Information about the option range used for scoring in numeric questions.", + "additionalProperties": false, + "type": "object", + "properties": { + "Score": { + "description": "The score assigned to answer values within the range option.\n *Minimum*: 0\n *Maximum*: 10", + "$ref": "#/definitions/Score", + "markdownDescription": "The score assigned to answer values within the range option.\n *Minimum*: 0\n *Maximum*: 10\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "MinValue": { + "description": "The minimum answer value of the range option.", "type": "integer", - "markdownDescription": "The minimum answer value.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The minimum answer value of the range option.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, "MaxValue": { - "description": "The maximum answer value.", + "description": "The maximum answer value of the range option.", "type": "integer", - "markdownDescription": "The maximum answer value.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" - }, - "Options": { - "description": "The scoring options of the numeric question.", - "type": "array", - "insertionOrder": true, - "minItems": 1, - "maxItems": 10, - "items": { - "$ref": "#/definitions/EvaluationFormNumericQuestionOption" - }, - "markdownDescription": "The scoring options of the numeric question.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "The maximum answer value of the range option.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, - "Automation": { - "description": "The automation properties of the numeric question.", - "$ref": "#/definitions/EvaluationFormNumericQuestionAutomation", - "markdownDescription": "The automation properties of the numeric question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "AutomaticFail": { + "description": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.", + "type": "boolean", + "markdownDescription": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "required": [ "MinValue", "MaxValue" ], - "markdownDescription": "Information about properties for a numeric question in an evaluation form.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Information about the option range used for scoring in numeric questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormSingleSelectQuestionAutomationOption": { - "description": "The automation options of the single select question.", - "type": "object", + "RefId": { + "description": "The identifier to reference the item.", + "type": "string", + "markdownDescription": "The identifier to reference the item.\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9._-]{1,40}$ \nUpdate requires: No interruption\n" + }, + "ScoringStrategy": { + "description": "A scoring strategy of the evaluation form.", "additionalProperties": false, + "type": "object", "properties": { - "RuleCategory": { - "description": "The automation option based on a rule category for the single select question.", - "$ref": "#/definitions/SingleSelectQuestionRuleCategoryAutomation", - "markdownDescription": "The automation option based on a rule category for the single select question.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + "Status": { + "description": "The scoring status of the evaluation form.\n *Allowed values*: ``ENABLED`` | ``DISABLED``", + "type": "string", + "enum": [ + "ENABLED", + "DISABLED" + ], + "markdownDescription": "The scoring status of the evaluation form.\n *Allowed values*: ``ENABLED`` | ``DISABLED``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, + "Mode": { + "description": "The scoring mode of the evaluation form.\n *Allowed values*: ``QUESTION_ONLY`` | ``SECTION_ONLY``", + "type": "string", + "enum": [ + "QUESTION_ONLY", + "SECTION_ONLY" + ], + "markdownDescription": "The scoring mode of the evaluation form.\n *Allowed values*: ``QUESTION_ONLY`` | ``SECTION_ONLY``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: QUESTION_ONLY | SECTION_ONLY \nUpdate requires: No interruption\n" } }, "required": [ - "RuleCategory" + "Mode", + "Status" ], - "markdownDescription": "The automation options of the single select question.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "A scoring strategy of the evaluation form.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SingleSelectQuestionRuleCategoryAutomation": { - "description": "Information about the automation option based on a rule category for a single select question.\n *Length Constraints*: Minimum length of 1. Maximum length of 50.", + "AutoEvaluationConfiguration": { + "description": "", + "additionalProperties": false, "type": "object", + "properties": { + "Enabled": { + "description": "", + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EvaluationFormQuestionTypeProperties": { + "description": "Information about properties for a question in an evaluation form. The question type properties must be either for a numeric question or a single select question.", "additionalProperties": false, + "type": "object", "properties": { - "Category": { - "description": "The category name, as defined in Rules.\n *Minimum*: 1\n *Maximum*: 50", - "type": "string", - "minLength": 1, - "maxLength": 50, - "markdownDescription": "The category name, as defined in Rules.\n *Minimum*: 1\n *Maximum*: 50\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 50 \nUpdate requires: No interruption\n" + "Numeric": { + "description": "The properties of the numeric question.", + "$ref": "#/definitions/EvaluationFormNumericQuestionProperties", + "markdownDescription": "The properties of the numeric question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, + "SingleSelect": { + "description": "The properties of the numeric question.", + "$ref": "#/definitions/EvaluationFormSingleSelectQuestionProperties", + "markdownDescription": "The properties of the numeric question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Information about properties for a question in an evaluation form. The question type properties must be either for a numeric question or a single select question.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EvaluationFormItem": { + "description": "Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.", + "additionalProperties": false, + "type": "object", + "properties": { + "Question": { + "description": "The information of the question.", + "$ref": "#/definitions/EvaluationFormQuestion", + "markdownDescription": "The information of the question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Section": { + "description": "The information of the section.", + "$ref": "#/definitions/EvaluationFormSection", + "markdownDescription": "The information of the section.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SingleSelectQuestionRuleCategoryAutomation": { + "description": "Information about the automation option based on a rule category for a single select question.\n *Length Constraints*: Minimum length of 1. Maximum length of 50.", + "additionalProperties": false, + "type": "object", + "properties": { "Condition": { "description": "The condition to apply for the automation option. If the condition is PRESENT, then the option is applied when the contact data includes the category. Similarly, if the condition is NOT_PRESENT, then the option is applied when the contact data does not include the category.\n *Allowed values*: ``PRESENT`` | ``NOT_PRESENT``\n *Maximum*: 50", "type": "string", @@ -251,6 +402,13 @@ ], "markdownDescription": "The condition to apply for the automation option. If the condition is PRESENT, then the option is applied when the contact data includes the category. Similarly, if the condition is NOT_PRESENT, then the option is applied when the contact data does not include the category.\n *Allowed values*: ``PRESENT`` | ``NOT_PRESENT``\n *Maximum*: 50\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: PRESENT | NOT_PRESENT \nUpdate requires: No interruption\n" }, + "Category": { + "minLength": 1, + "description": "The category name, as defined in Rules.\n *Minimum*: 1\n *Maximum*: 50", + "type": "string", + "maxLength": 50, + "markdownDescription": "The category name, as defined in Rules.\n *Minimum*: 1\n *Maximum*: 50\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 50 \nUpdate requires: No interruption\n" + }, "OptionRefId": { "description": "The identifier of the answer option. An identifier must be unique within the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", "$ref": "#/definitions/RefId", @@ -264,240 +422,167 @@ ], "markdownDescription": "Information about the automation option based on a rule category for a single select question.\n *Length Constraints*: Minimum length of 1. Maximum length of 50.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormSingleSelectQuestionAutomation": { - "description": "Information about the automation configuration in single select questions. Automation options are evaluated in order, and the first matched option is applied. If no automation option matches, and there is a default option, then the default option is applied.", - "type": "object", - "additionalProperties": false, - "properties": { - "Options": { - "description": "The automation options of the single select question.\n *Minimum*: 1\n *Maximum*: 20", - "type": "array", - "insertionOrder": true, - "minItems": 1, - "maxItems": 20, - "items": { - "$ref": "#/definitions/EvaluationFormSingleSelectQuestionAutomationOption" - }, - "markdownDescription": "The automation options of the single select question.\n *Minimum*: 1\n *Maximum*: 20\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "DefaultOptionRefId": { - "description": "The identifier of the default answer option, when none of the automation options match the criteria.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", - "$ref": "#/definitions/RefId", - "markdownDescription": "The identifier of the default answer option, when none of the automation options match the criteria.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Options" - ], - "markdownDescription": "Information about the automation configuration in single select questions. Automation options are evaluated in order, and the first matched option is applied. If no automation option matches, and there is a default option, then the default option is applied.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "Weight": { + "description": "The item weight used for scoring.", + "maximum": 100, + "type": "number", + "minimum": 0, + "markdownDescription": "The item weight used for scoring.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" }, - "EvaluationFormSingleSelectQuestionOption": { - "description": "Information about the automation configuration in single select questions.", - "type": "object", - "additionalProperties": false, - "properties": { - "RefId": { - "description": "The identifier of the answer option. An identifier must be unique within the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", - "$ref": "#/definitions/RefId", - "markdownDescription": "The identifier of the answer option. An identifier must be unique within the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" - }, - "Text": { - "description": "The title of the answer option.\n *Length Constraints*: Minimum length of 1. Maximum length of 128.", - "type": "string", - "minLength": 1, - "maxLength": 128, - "markdownDescription": "The title of the answer option.\n *Length Constraints*: Minimum length of 1. Maximum length of 128.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "Score": { - "description": "The score assigned to the answer option.\n *Minimum*: 0\n *Maximum*: 10", - "$ref": "#/definitions/Score", - "markdownDescription": "The score assigned to the answer option.\n *Minimum*: 0\n *Maximum*: 10\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, - "AutomaticFail": { - "description": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.", - "type": "boolean", - "markdownDescription": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - } - }, - "required": [ - "RefId", - "Text" - ], - "markdownDescription": "Information about the automation configuration in single select questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "Score": { + "description": "The score of an answer option.", + "maximum": 10, + "type": "integer", + "minimum": 0, + "markdownDescription": "The score of an answer option.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "EvaluationFormSingleSelectQuestionProperties": { - "description": "Information about the options in single select questions.", - "type": "object", + "EvaluationFormNumericQuestionProperties": { + "description": "Information about properties for a numeric question in an evaluation form.", "additionalProperties": false, + "type": "object", "properties": { "Options": { - "description": "The answer options of the single select question.\n *Minimum*: 2\n *Maximum*: 256", - "type": "array", + "minItems": 1, + "maxItems": 10, + "description": "The scoring options of the numeric question.", "insertionOrder": true, - "minItems": 2, - "maxItems": 256, + "type": "array", "items": { - "$ref": "#/definitions/EvaluationFormSingleSelectQuestionOption" + "$ref": "#/definitions/EvaluationFormNumericQuestionOption" }, - "markdownDescription": "The answer options of the single select question.\n *Minimum*: 2\n *Maximum*: 256\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "DisplayAs": { - "description": "The display mode of the single select question.\n *Allowed values*: ``DROPDOWN`` | ``RADIO``", - "type": "string", - "enum": [ - "DROPDOWN", - "RADIO" - ], - "markdownDescription": "The display mode of the single select question.\n *Allowed values*: ``DROPDOWN`` | ``RADIO``\n\n---\n\nRequired: No \nType: String \nAllowed Values: DROPDOWN | RADIO \nUpdate requires: No interruption\n" + "markdownDescription": "The scoring options of the numeric question.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "Automation": { - "description": "The display mode of the single select question.", - "$ref": "#/definitions/EvaluationFormSingleSelectQuestionAutomation", - "markdownDescription": "The display mode of the single select question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "description": "The automation properties of the numeric question.", + "$ref": "#/definitions/EvaluationFormNumericQuestionAutomation", + "markdownDescription": "The automation properties of the numeric question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "MinValue": { + "description": "The minimum answer value.", + "type": "integer", + "markdownDescription": "The minimum answer value.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + }, + "MaxValue": { + "description": "The maximum answer value.", + "type": "integer", + "markdownDescription": "The maximum answer value.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" } }, "required": [ - "Options" + "MinValue", + "MaxValue" ], - "markdownDescription": "Information about the options in single select questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Information about properties for a numeric question in an evaluation form.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormQuestionTypeProperties": { - "description": "Information about properties for a question in an evaluation form. The question type properties must be either for a numeric question or a single select question.", - "type": "object", + "Tag": { + "description": "A key-value pair to associate with a resource.", "additionalProperties": false, + "type": "object", "properties": { - "Numeric": { - "description": "The properties of the numeric question.", - "$ref": "#/definitions/EvaluationFormNumericQuestionProperties", - "markdownDescription": "The properties of the numeric question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "Value": { + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -", + "type": "string", + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" }, - "SingleSelect": { - "description": "The properties of the numeric question.", - "$ref": "#/definitions/EvaluationFormSingleSelectQuestionProperties", - "markdownDescription": "The properties of the numeric question.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "Key": { + "minLength": 1, + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -", + "type": "string", + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:)[a-zA-Z+-=._:/]+$ \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Information about properties for a question in an evaluation form. The question type properties must be either for a numeric question or a single select question.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "Key", + "Value" + ], + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationFormQuestion": { - "description": "Information about a question from an evaluation form.", - "type": "object", + "EvaluationFormSingleSelectQuestionOption": { + "description": "Information about the automation configuration in single select questions.", "additionalProperties": false, + "type": "object", "properties": { - "Title": { - "description": "The title of the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 350.", - "type": "string", - "minLength": 1, - "maxLength": 350, - "markdownDescription": "The title of the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 350.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 350 \nUpdate requires: No interruption\n" + "Score": { + "description": "The score assigned to the answer option.\n *Minimum*: 0\n *Maximum*: 10", + "$ref": "#/definitions/Score", + "markdownDescription": "The score assigned to the answer option.\n *Minimum*: 0\n *Maximum*: 10\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, - "Instructions": { - "description": "The instructions of the section.\n *Length Constraints*: Minimum length of 0. Maximum length of 1024.", + "Text": { + "minLength": 1, + "description": "The title of the answer option.\n *Length Constraints*: Minimum length of 1. Maximum length of 128.", "type": "string", - "maxLength": 1024, - "markdownDescription": "The instructions of the section.\n *Length Constraints*: Minimum length of 0. Maximum length of 1024.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + "maxLength": 128, + "markdownDescription": "The title of the answer option.\n *Length Constraints*: Minimum length of 1. Maximum length of 128.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, "RefId": { - "description": "The identifier of the question. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", + "description": "The identifier of the answer option. An identifier must be unique within the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.", "$ref": "#/definitions/RefId", - "markdownDescription": "The identifier of the question. An identifier must be unique within the evaluation form.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + "markdownDescription": "The identifier of the answer option. An identifier must be unique within the question.\n *Length Constraints*: Minimum length of 1. Maximum length of 40.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" }, - "NotApplicableEnabled": { - "description": "The flag to enable not applicable answers to the question.", + "AutomaticFail": { + "description": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.", "type": "boolean", - "markdownDescription": "The flag to enable not applicable answers to the question.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "QuestionType": { - "description": "The type of the question.\n *Allowed values*: ``NUMERIC`` | ``SINGLESELECT`` | ``TEXT``", - "type": "string", - "enum": [ - "NUMERIC", - "SINGLESELECT", - "TEXT" - ], - "markdownDescription": "The type of the question.\n *Allowed values*: ``NUMERIC`` | ``SINGLESELECT`` | ``TEXT``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: NUMERIC | SINGLESELECT | TEXT \nUpdate requires: No interruption\n" - }, - "QuestionTypeProperties": { - "description": "The properties of the type of question. Text questions do not have to define question type properties.", - "$ref": "#/definitions/EvaluationFormQuestionTypeProperties", - "markdownDescription": "The properties of the type of question. Text questions do not have to define question type properties.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, - "Weight": { - "description": "The scoring weight of the section.\n *Minimum*: 0\n *Maximum*: 100", - "$ref": "#/definitions/Weight", - "markdownDescription": "The scoring weight of the section.\n *Minimum*: 0\n *Maximum*: 100\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "markdownDescription": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "required": [ "RefId", - "Title", - "QuestionType" + "Text" ], - "markdownDescription": "Information about a question from an evaluation form.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Information about the automation configuration in single select questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ScoringStrategy": { - "description": "A scoring strategy of the evaluation form.", - "type": "object", + "NumericQuestionPropertyValueAutomation": { + "description": "Information about the property value used in automation of a numeric questions.", "additionalProperties": false, + "type": "object", "properties": { - "Mode": { - "description": "The scoring mode of the evaluation form.\n *Allowed values*: ``QUESTION_ONLY`` | ``SECTION_ONLY``", - "type": "string", - "enum": [ - "QUESTION_ONLY", - "SECTION_ONLY" - ], - "markdownDescription": "The scoring mode of the evaluation form.\n *Allowed values*: ``QUESTION_ONLY`` | ``SECTION_ONLY``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: QUESTION_ONLY | SECTION_ONLY \nUpdate requires: No interruption\n" - }, - "Status": { - "description": "The scoring status of the evaluation form.\n *Allowed values*: ``ENABLED`` | ``DISABLED``", + "Label": { + "description": "The property label of the automation.", "type": "string", "enum": [ - "ENABLED", - "DISABLED" + "OVERALL_CUSTOMER_SENTIMENT_SCORE", + "OVERALL_AGENT_SENTIMENT_SCORE", + "NON_TALK_TIME", + "NON_TALK_TIME_PERCENTAGE", + "NUMBER_OF_INTERRUPTIONS", + "CONTACT_DURATION", + "AGENT_INTERACTION_DURATION", + "CUSTOMER_HOLD_TIME", + "LONGEST_HOLD_DURATION", + "NUMBER_OF_HOLDS", + "AGENT_INTERACTION_AND_HOLD_DURATION" ], - "markdownDescription": "The scoring status of the evaluation form.\n *Allowed values*: ``ENABLED`` | ``DISABLED``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Mode", - "Status" - ], - "markdownDescription": "A scoring strategy of the evaluation form.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "Tag": { - "description": "A key-value pair to associate with a resource.", - "type": "object", - "additionalProperties": false, - "properties": { - "Key": { - "type": "string", - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -", - "minLength": 1, - "maxLength": 128, - "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:)[a-zA-Z+-=._:/]+$ \nUpdate requires: No interruption\n" - }, - "Value": { - "type": "string", - "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -", - "maxLength": 256, - "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "markdownDescription": "The property label of the automation.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: OVERALL_CUSTOMER_SENTIMENT_SCORE | OVERALL_AGENT_SENTIMENT_SCORE | NON_TALK_TIME | NON_TALK_TIME_PERCENTAGE | NUMBER_OF_INTERRUPTIONS | CONTACT_DURATION | AGENT_INTERACTION_DURATION | CUSTOMER_HOLD_TIME | LONGEST_HOLD_DURATION | NUMBER_OF_HOLDS | AGENT_INTERACTION_AND_HOLD_DURATION \nUpdate requires: No interruption\n" } }, "required": [ - "Key", - "Value" + "Label" ], - "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Information about the property value used in automation of a numeric questions.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { - "Title": { - "description": "A title of the evaluation form.", + "ScoringStrategy": { + "description": "A scoring strategy of the evaluation form.", + "$ref": "#/definitions/ScoringStrategy", + "markdownDescription": "A scoring strategy of the evaluation form.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Status": { + "default": "DRAFT", + "description": "The status of the evaluation form.\n *Allowed values*: ``DRAFT`` | ``ACTIVE``", "type": "string", - "minLength": 1, - "maxLength": 128, - "markdownDescription": "A title of the evaluation form.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "enum": [ + "DRAFT", + "ACTIVE" + ], + "markdownDescription": "The status of the evaluation form.\n *Allowed values*: ``DRAFT`` | ``ACTIVE``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: DRAFT | ACTIVE \nUpdate requires: No interruption\n" + }, + "AutoEvaluationConfiguration": { + "description": "", + "$ref": "#/definitions/AutoEvaluationConfiguration", + "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "Description": { "description": "The description of the evaluation form.\n *Length Constraints*: Minimum length of 0. Maximum length of 1024.", @@ -505,115 +590,52 @@ "maxLength": 1024, "markdownDescription": "The description of the evaluation form.\n *Length Constraints*: Minimum length of 0. Maximum length of 1024.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, - "EvaluationFormArn": { - "description": "", - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/evaluation-form/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\nRead only property: Yes" - }, "InstanceArn": { "description": "The identifier of the Amazon Connect instance.", "type": "string", "markdownDescription": "The identifier of the Amazon Connect instance.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" }, + "Title": { + "minLength": 1, + "description": "A title of the evaluation form.", + "type": "string", + "maxLength": 128, + "markdownDescription": "A title of the evaluation form.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, "Items": { - "description": "Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.\n *Minimum size*: 1\n *Maximum size*: 100", - "type": "array", - "insertionOrder": true, "minItems": 1, "maxItems": 200, + "description": "Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.\n *Minimum size*: 1\n *Maximum size*: 100", + "insertionOrder": true, + "type": "array", "items": { "$ref": "#/definitions/EvaluationFormBaseItem" }, "markdownDescription": "Items that are part of the evaluation form. The total number of sections and questions must not exceed 100 each. Questions must be contained in a section.\n *Minimum size*: 1\n *Maximum size*: 100\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, - "ScoringStrategy": { - "description": "A scoring strategy of the evaluation form.", - "$ref": "#/definitions/ScoringStrategy", - "markdownDescription": "A scoring strategy of the evaluation form.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, - "Status": { - "description": "The status of the evaluation form.\n *Allowed values*: ``DRAFT`` | ``ACTIVE``", + "EvaluationFormArn": { + "description": "", "type": "string", - "default": "DRAFT", - "enum": [ - "DRAFT", - "ACTIVE" - ], - "markdownDescription": "The status of the evaluation form.\n *Allowed values*: ``DRAFT`` | ``ACTIVE``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: DRAFT | ACTIVE \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/evaluation-form/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\nRead only property: Yes" }, "Tags": { - "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.", - "type": "array", "maxItems": 50, "uniqueItems": true, + "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/Tag" }, "markdownDescription": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "additionalProperties": false, "required": [ "Title", "InstanceArn", "Items", "Status" ], - "readOnlyProperties": [ - "/properties/EvaluationFormArn" - ], - "primaryIdentifier": [ - "/properties/EvaluationFormArn" - ], - "tagging": { - "taggable": true, - "tagOnCreate": false, - "tagUpdatable": true, - "cloudFormationSystemTags": true, - "tagProperty": "/properties/Tags", - "permissions": [ - "connect:ListTagsForResource", - "connect:UntagResource", - "connect:TagResource" - ] - }, - "handlers": { - "create": { - "permissions": [ - "connect:CreateEvaluationForm", - "connect:ActivateEvaluationForm", - "connect:TagResource" - ] - }, - "read": { - "permissions": [ - "connect:DescribeEvaluationForm", - "connect:ListEvaluationFormVersions" - ] - }, - "list": { - "permissions": [ - "connect:ListEvaluationForms" - ] - }, - "update": { - "permissions": [ - "connect:UpdateEvaluationForm", - "connect:ListEvaluationFormVersions", - "connect:ActivateEvaluationForm", - "connect:DeactivateEvaluationForm", - "connect:TagResource", - "connect:UntagResource" - ] - }, - "delete": { - "permissions": [ - "connect:DeleteEvaluationForm", - "connect:UntagResource" - ] - } - }, "attributes": { "EvaluationFormArn": { "description": "", diff --git a/server/schema/resources/aws-connect-instance.json b/server/schema/resources/aws-connect-instance.json index be6dbf25..b3309e3c 100644 --- a/server/schema/resources/aws-connect-instance.json +++ b/server/schema/resources/aws-connect-instance.json @@ -38,6 +38,31 @@ "type": "boolean", "markdownDescription": "Boolean flag which enables EARLY_MEDIA on an instance.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, + "MultiPartyConference": { + "description": "Boolean flag which enables MULTI_PARTY_CONFERENCE on an instance.", + "type": "boolean", + "markdownDescription": "Boolean flag which enables MULTI_PARTY_CONFERENCE on an instance.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "HighVolumeOutBound": { + "description": "Boolean flag which enables HIGH_VOLUME_OUTBOUND on an instance.", + "type": "boolean", + "markdownDescription": "Boolean flag which enables HIGH_VOLUME_OUTBOUND on an instance.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "EnhancedContactMonitoring": { + "description": "Boolean flag which enables ENHANCED_CONTACT_MONITORING on an instance.", + "type": "boolean", + "markdownDescription": "Boolean flag which enables ENHANCED_CONTACT_MONITORING on an instance.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "EnhancedChatMonitoring": { + "description": "Boolean flag which enables ENHANCED_CHAT_MONITORING on an instance.", + "type": "boolean", + "markdownDescription": "Boolean flag which enables ENHANCED_CHAT_MONITORING on an instance.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "MultiPartyChatConference": { + "description": "Boolean flag which enables MULTI_PARTY_CHAT_CONFERENCE on an instance.", + "type": "boolean", + "markdownDescription": "Boolean flag which enables MULTI_PARTY_CHAT_CONFERENCE on an instance.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, "Attributes": { "type": "object", "additionalProperties": false, @@ -62,6 +87,21 @@ }, "EarlyMedia": { "$ref": "#/definitions/EarlyMedia" + }, + "MultiPartyConference": { + "$ref": "#/definitions/MultiPartyConference" + }, + "HighVolumeOutBound": { + "$ref": "#/definitions/HighVolumeOutBound" + }, + "EnhancedContactMonitoring": { + "$ref": "#/definitions/EnhancedContactMonitoring" + }, + "EnhancedChatMonitoring": { + "$ref": "#/definitions/EnhancedChatMonitoring" + }, + "MultiPartyChatConference": { + "$ref": "#/definitions/MultiPartyChatConference" } }, "required": [ @@ -234,7 +274,10 @@ "permissions": [ "connect:ListInstanceAttributes", "connect:UpdateInstanceAttribute", + "ds:DescribeDirectories", "iam:CreateServiceLinkedRole", + "iam:DeleteRolePolicy", + "logs:CreateLogGroup", "iam:PutRolePolicy", "connect:TagResource", "connect:UntagResource" diff --git a/server/schema/resources/aws-connect-routingprofile.json b/server/schema/resources/aws-connect-routingprofile.json index 317b58a7..35106beb 100644 --- a/server/schema/resources/aws-connect-routingprofile.json +++ b/server/schema/resources/aws-connect-routingprofile.json @@ -289,7 +289,11 @@ "tagOnCreate": true, "tagUpdatable": true, "cloudFormationSystemTags": true, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "connect:TagResource", + "connect:UntagResource" + ] }, "attributes": { "RoutingProfileArn": { diff --git a/server/schema/resources/aws-connect-rule.json b/server/schema/resources/aws-connect-rule.json index 777db183..a88d954e 100644 --- a/server/schema/resources/aws-connect-rule.json +++ b/server/schema/resources/aws-connect-rule.json @@ -68,9 +68,9 @@ "markdownDescription": "An array of case fields\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "UserArn": { - "description": "The Amazon Resource Name (ARN) of the user.", + "description": "The Amazon Resource Name (ARN) of the user or a dynamic recipient string starting with '$.'.", "type": "string", - "markdownDescription": "The Amazon Resource Name (ARN) of the user.\n\n---\n\nRequired: No \nType: String \nPattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" + "markdownDescription": "The Amazon Resource Name (ARN) of the user or a dynamic recipient string starting with '$.'.\n\n---\n\nRequired: No \nType: String \nPattern: ^$|arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent/[-a-zA-Z0-9]*$|^\\$\\..+$ \nUpdate requires: No interruption\n" }, "NotificationRecipientType": { "description": "The type of notification recipient.", @@ -122,8 +122,8 @@ "DATE", "EMAIL" ], - "description": "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``", - "markdownDescription": "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: URL | ATTACHMENT | NUMBER | STRING | DATE | EMAIL \nUpdate requires: No interruption\n" + "description": "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``", + "markdownDescription": "The type of the reference. ``DATE`` must be of type Epoch timestamp. \n *Allowed values*: ``URL`` | ``ATTACHMENT`` | ``NUMBER`` | ``STRING`` | ``DATE`` | ``EMAIL``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: URL | ATTACHMENT | NUMBER | STRING | DATE | EMAIL \nUpdate requires: No interruption\n" } }, "required": [ @@ -216,12 +216,12 @@ "type": "object", "properties": { "DeliveryMethod": { - "description": "Notification delivery method.\n *Allowed value*: ``EMAIL``", + "description": "Notification delivery method.\n *Allowed value*: ``EMAIL``", "type": "string", "enum": [ "EMAIL" ], - "markdownDescription": "Notification delivery method.\n *Allowed value*: ``EMAIL``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: EMAIL \nUpdate requires: No interruption\n" + "markdownDescription": "Notification delivery method.\n *Allowed value*: ``EMAIL``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: EMAIL \nUpdate requires: No interruption\n" }, "Subject": { "description": "The subject of the email if the delivery method is ``EMAIL``. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.", @@ -238,12 +238,12 @@ "markdownDescription": "Notification content. Supports variable injection. For more information, see [JSONPath reference](https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html) in the *Administrators Guide*.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, "ContentType": { - "description": "Content type format.\n *Allowed value*: ``PLAIN_TEXT``", + "description": "Content type format.\n *Allowed value*: ``PLAIN_TEXT``", "type": "string", "enum": [ "PLAIN_TEXT" ], - "markdownDescription": "Content type format.\n *Allowed value*: ``PLAIN_TEXT``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: PLAIN_TEXT \nUpdate requires: No interruption\n" + "markdownDescription": "Content type format.\n *Allowed value*: ``PLAIN_TEXT``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: PLAIN_TEXT \nUpdate requires: No interruption\n" }, "Recipient": { "$ref": "#/definitions/NotificationRecipientType", @@ -541,13 +541,13 @@ "markdownDescription": "A list of actions to be run when the rule is triggered.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" }, "PublishStatus": { - "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``", + "description": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``", "type": "string", "enum": [ "DRAFT", "PUBLISHED" ], - "markdownDescription": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: DRAFT | PUBLISHED \nUpdate requires: No interruption\n" + "markdownDescription": "The publish status of the rule.\n *Allowed values*: ``DRAFT`` | ``PUBLISHED``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: DRAFT | PUBLISHED \nUpdate requires: No interruption\n" }, "Tags": { "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.", @@ -574,7 +574,11 @@ "tagOnCreate": false, "tagUpdatable": true, "cloudFormationSystemTags": true, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "connect:TagResource", + "connect:UntagResource" + ] }, "handlers": { "create": { diff --git a/server/schema/resources/aws-connect-user.json b/server/schema/resources/aws-connect-user.json index 83724895..e89a1969 100644 --- a/server/schema/resources/aws-connect-user.json +++ b/server/schema/resources/aws-connect-user.json @@ -1,48 +1,132 @@ { + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", + "tagging": { + "permissions": [ + "connect:TagResource", + "connect:UntagResource" + ], + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": true + }, + "handlers": { + "read": { + "permissions": [ + "connect:DescribeUser", + "connect:ListUserProficiencies" + ] + }, + "create": { + "permissions": [ + "connect:CreateUser", + "connect:TagResource", + "connect:AssociateUserProficiencies" + ] + }, + "update": { + "permissions": [ + "connect:UpdateUserIdentityInfo", + "connect:UpdateUserPhoneConfig", + "connect:UpdateUserRoutingProfile", + "connect:UpdateUserSecurityProfiles", + "connect:UpdateUserHierarchy", + "connect:TagResource", + "connect:UntagResource", + "connect:AssociateUserProficiencies", + "connect:DisassociateUserProficiencies", + "connect:UpdateUserProficiencies" + ] + }, + "list": { + "permissions": [ + "connect:ListUsers" + ], + "handlerSchema": { + "properties": { + "InstanceArn": { + "$ref": "resource-schema.json#/properties/InstanceArn" + } + }, + "required": [ + "InstanceArn" + ] + } + }, + "delete": { + "permissions": [ + "connect:DeleteUser", + "connect:UntagResource" + ] + } + }, "typeName": "AWS::Connect::User", + "readOnlyProperties": [ + "/properties/UserArn" + ], "description": "Resource Type definition for AWS::Connect::User", - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", + "writeOnlyProperties": [ + "/properties/Password" + ], + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/UserArn" + ], "definitions": { - "FirstName": { - "description": "The first name. This is required if you are using Amazon Connect or SAML for identity management.", - "type": "string", - "markdownDescription": "The first name. This is required if you are using Amazon Connect or SAML for identity management.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "AutoAccept": { + "description": "The Auto accept setting.", + "type": "boolean", + "markdownDescription": "The Auto accept setting.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "LastName": { - "description": "The last name. This is required if you are using Amazon Connect or SAML for identity management.", + "AttributeValue": { + "minLength": 1, + "description": "The value of user's proficiency. You must use value of predefined attribute present in the Amazon Connect instance.", "type": "string", - "markdownDescription": "The last name. This is required if you are using Amazon Connect or SAML for identity management.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "maxLength": 64, + "markdownDescription": "The value of user's proficiency. You must use value of predefined attribute present in the Amazon Connect instance.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" }, "Email": { "description": "The email address. If you are using SAML for identity management and include this parameter, an error is returned.", "type": "string", "markdownDescription": "The email address. If you are using SAML for identity management and include this parameter, an error is returned.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "SecondaryEmail": { - "description": "The secondary email address. If you provide a secondary email, the user receives email notifications -- other than password reset notifications -- to this email address instead of to their primary email address.", - "type": "string", - "markdownDescription": "The secondary email address. If you provide a secondary email, the user receives email notifications -- other than password reset notifications -- to this email address instead of to their primary email address.\n\n---\n\nRequired: No \nType: String \nPattern: (?=^.{0,265}$)[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,63} \nUpdate requires: No interruption\n" + "UserProficiency": { + "description": "Proficiency of a user.", + "additionalProperties": false, + "type": "object", + "properties": { + "AttributeValue": { + "$ref": "#/definitions/AttributeValue" + }, + "AttributeName": { + "$ref": "#/definitions/AttributeName" + }, + "Level": { + "$ref": "#/definitions/Level" + } + }, + "required": [ + "AttributeName", + "AttributeValue", + "Level" + ], + "markdownDescription": "Proficiency of a user.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Mobile": { - "description": "The mobile phone number.", + "FirstName": { + "description": "The first name. This is required if you are using Amazon Connect or SAML for identity management.", "type": "string", - "markdownDescription": "The mobile phone number.\n\n---\n\nRequired: No \nType: String \nPattern: ^\\+[1-9]\\d{1,14}$ \nUpdate requires: No interruption\n" + "markdownDescription": "The first name. This is required if you are using Amazon Connect or SAML for identity management.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "SecurityProfileArn": { "description": "The identifier of the security profile for the user.", "type": "string", "markdownDescription": "The identifier of the security profile for the user.\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/security-profile/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" }, - "AfterContactWorkTimeLimit": { - "description": "The After Call Work (ACW) timeout setting, in seconds.", - "type": "integer", - "minimum": 0, - "markdownDescription": "The After Call Work (ACW) timeout setting, in seconds.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "AutoAccept": { - "description": "The Auto accept setting.", - "type": "boolean", - "markdownDescription": "The Auto accept setting.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "Mobile": { + "description": "The mobile phone number.", + "type": "string", + "markdownDescription": "The mobile phone number.\n\n---\n\nRequired: No \nType: String \nPattern: ^\\+[1-9]\\d{1,14}$ \nUpdate requires: No interruption\n" }, "DeskPhoneNumber": { "description": "The phone number for the user's desk phone.", @@ -58,23 +142,47 @@ ], "markdownDescription": "The phone type.\n\n---\n\nRequired: No \nType: String \nAllowed Values: SOFT_PHONE | DESK_PHONE \nUpdate requires: No interruption\n" }, + "SecondaryEmail": { + "description": "The secondary email address. If you provide a secondary email, the user receives email notifications -- other than password reset notifications -- to this email address instead of to their primary email address.", + "type": "string", + "markdownDescription": "The secondary email address. If you provide a secondary email, the user receives email notifications -- other than password reset notifications -- to this email address instead of to their primary email address.\n\n---\n\nRequired: No \nType: String \nPattern: (?=^.{0,265}$)[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,63} \nUpdate requires: No interruption\n" + }, + "AttributeName": { + "minLength": 1, + "description": "The name of user's proficiency. You must use name of predefined attribute present in the Amazon Connect instance.", + "type": "string", + "maxLength": 64, + "markdownDescription": "The name of user's proficiency. You must use name of predefined attribute present in the Amazon Connect instance.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + }, + "Level": { + "description": "The level of the proficiency. The valid values are 1, 2, 3, 4 and 5.", + "maximum": 5, + "type": "number", + "minimum": 1, + "markdownDescription": "The level of the proficiency. The valid values are 1, 2, 3, 4 and 5.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "LastName": { + "description": "The last name. This is required if you are using Amazon Connect or SAML for identity management.", + "type": "string", + "markdownDescription": "The last name. This is required if you are using Amazon Connect or SAML for identity management.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "UserIdentityInfo": { "description": "Contains information about the identity of a user.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { - "FirstName": { - "$ref": "#/definitions/FirstName" - }, - "LastName": { - "$ref": "#/definitions/LastName" - }, "Email": { "$ref": "#/definitions/Email" }, + "FirstName": { + "$ref": "#/definitions/FirstName" + }, "SecondaryEmail": { "$ref": "#/definitions/SecondaryEmail" }, + "LastName": { + "$ref": "#/definitions/LastName" + }, "Mobile": { "$ref": "#/definitions/Mobile" } @@ -83,20 +191,20 @@ }, "UserPhoneConfig": { "description": "Contains information about the phone configuration settings for a user.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { - "AfterContactWorkTimeLimit": { - "$ref": "#/definitions/AfterContactWorkTimeLimit" - }, "AutoAccept": { "$ref": "#/definitions/AutoAccept" }, + "PhoneType": { + "$ref": "#/definitions/PhoneType" + }, "DeskPhoneNumber": { "$ref": "#/definitions/DeskPhoneNumber" }, - "PhoneType": { - "$ref": "#/definitions/PhoneType" + "AfterContactWorkTimeLimit": { + "$ref": "#/definitions/AfterContactWorkTimeLimit" } }, "required": [ @@ -106,21 +214,21 @@ }, "Tag": { "description": "A key-value pair to associate with a resource.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { - "Key": { - "type": "string", - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", - "minLength": 1, - "maxLength": 128, - "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:)[a-zA-Z+-=._:/]+$ \nUpdate requires: No interruption\n" - }, "Value": { - "type": "string", "description": "The value for the tag. You can specify a value that is maximum of 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "type": "string", "maxLength": 256, "markdownDescription": "The value for the tag. You can specify a value that is maximum of 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "Key": { + "minLength": 1, + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "type": "string", + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:)[a-zA-Z+-=._:/]+$ \nUpdate requires: No interruption\n" } }, "required": [ @@ -129,116 +237,81 @@ ], "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "UserProficiency": { - "description": "Proficiency of a user.", - "type": "object", - "additionalProperties": false, - "properties": { - "AttributeName": { - "$ref": "#/definitions/AttributeName" - }, - "AttributeValue": { - "$ref": "#/definitions/AttributeValue" - }, - "Level": { - "$ref": "#/definitions/Level" - } - }, - "required": [ - "AttributeName", - "AttributeValue", - "Level" - ], - "markdownDescription": "Proficiency of a user.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AttributeName": { - "description": "The name of user's proficiency. You must use name of predefined attribute present in the Amazon Connect instance.", - "type": "string", - "minLength": 1, - "maxLength": 64, - "markdownDescription": "The name of user's proficiency. You must use name of predefined attribute present in the Amazon Connect instance.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - }, - "AttributeValue": { - "description": "The value of user's proficiency. You must use value of predefined attribute present in the Amazon Connect instance.", - "type": "string", - "minLength": 1, - "maxLength": 64, - "markdownDescription": "The value of user's proficiency. You must use value of predefined attribute present in the Amazon Connect instance.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - }, - "Level": { - "description": "The level of the proficiency. The valid values are 1, 2, 3, 4 and 5.", - "type": "number", - "minimum": 1.0, - "maximum": 5.0, - "markdownDescription": "The level of the proficiency. The valid values are 1, 2, 3, 4 and 5.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + "AfterContactWorkTimeLimit": { + "description": "The After Call Work (ACW) timeout setting, in seconds.", + "type": "integer", + "minimum": 0, + "markdownDescription": "The After Call Work (ACW) timeout setting, in seconds.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, + "required": [ + "InstanceArn", + "PhoneConfig", + "RoutingProfileArn", + "SecurityProfileArns", + "Username" + ], "properties": { - "InstanceArn": { - "description": "The identifier of the Amazon Connect instance.", - "type": "string", - "markdownDescription": "The identifier of the Amazon Connect instance.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" - }, - "DirectoryUserId": { - "description": "The identifier of the user account in the directory used for identity management.", + "UserArn": { + "description": "The Amazon Resource Name (ARN) for the user.", "type": "string", - "markdownDescription": "The identifier of the user account in the directory used for identity management.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The Amazon Resource Name (ARN) for the user.\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\nRead only property: Yes" }, - "HierarchyGroupArn": { - "description": "The identifier of the hierarchy group for the user.", + "RoutingProfileArn": { + "description": "The identifier of the routing profile for the user.", "type": "string", - "markdownDescription": "The identifier of the hierarchy group for the user.\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-group/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" + "markdownDescription": "The identifier of the routing profile for the user.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/routing-profile/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" }, "Username": { + "minLength": 1, "description": "The user name for the account.", "type": "string", - "minLength": 1, "maxLength": 64, "markdownDescription": "The user name for the account.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: [a-zA-Z0-9\\_\\-\\.\\@]+ \nUpdate requires: No interruption\n" }, - "Password": { - "description": "The password for the user account. A password is required if you are using Amazon Connect for identity management. Otherwise, it is an error to include a password.", + "PhoneConfig": { + "description": "The phone settings for the user.", + "$ref": "#/definitions/UserPhoneConfig", + "markdownDescription": "The phone settings for the user.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, + "InstanceArn": { + "description": "The identifier of the Amazon Connect instance.", "type": "string", - "markdownDescription": "The password for the user account. A password is required if you are using Amazon Connect for identity management. Otherwise, it is an error to include a password.\n\n---\n\nRequired: No \nType: String \nPattern: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d\\S]{8,64}$ \nUpdate requires: No interruption\n" + "markdownDescription": "The identifier of the Amazon Connect instance.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" }, - "RoutingProfileArn": { - "description": "The identifier of the routing profile for the user.", + "DirectoryUserId": { + "description": "The identifier of the user account in the directory used for identity management.", "type": "string", - "markdownDescription": "The identifier of the routing profile for the user.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/routing-profile/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" + "markdownDescription": "The identifier of the user account in the directory used for identity management.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "IdentityInfo": { "description": "The information about the identity of the user.", "$ref": "#/definitions/UserIdentityInfo", "markdownDescription": "The information about the identity of the user.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, - "PhoneConfig": { - "description": "The phone settings for the user.", - "$ref": "#/definitions/UserPhoneConfig", - "markdownDescription": "The phone settings for the user.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + "HierarchyGroupArn": { + "description": "The identifier of the hierarchy group for the user.", + "type": "string", + "markdownDescription": "The identifier of the hierarchy group for the user.\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-group/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\n" }, "SecurityProfileArns": { - "type": "array", "minItems": 1, "maxItems": 10, "uniqueItems": true, - "insertionOrder": false, "description": "One or more security profile arns for the user", + "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/SecurityProfileArn" }, "markdownDescription": "One or more security profile arns for the user\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, - "UserArn": { - "description": "The Amazon Resource Name (ARN) for the user.", - "type": "string", - "markdownDescription": "The Amazon Resource Name (ARN) for the user.\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent/[-a-zA-Z0-9]*$ \nUpdate requires: No interruption\nRead only property: Yes" - }, "Tags": { - "type": "array", "maxItems": 50, "uniqueItems": true, - "insertionOrder": false, "description": "One or more tags.", + "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/Tag" }, @@ -246,92 +319,19 @@ }, "UserProficiencies": { "description": "One or more predefined attributes assigned to a user, with a level that indicates how skilled they are.", - "type": "array", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/UserProficiency" }, "markdownDescription": "One or more predefined attributes assigned to a user, with a level that indicates how skilled they are.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - } - }, - "required": [ - "InstanceArn", - "PhoneConfig", - "RoutingProfileArn", - "SecurityProfileArns", - "Username" - ], - "handlers": { - "create": { - "permissions": [ - "connect:CreateUser", - "connect:TagResource", - "connect:AssociateUserProficiencies" - ] - }, - "read": { - "permissions": [ - "connect:DescribeUser", - "connect:ListUserProficiencies" - ] - }, - "delete": { - "permissions": [ - "connect:DeleteUser", - "connect:UntagResource" - ] - }, - "update": { - "permissions": [ - "connect:UpdateUserIdentityInfo", - "connect:UpdateUserPhoneConfig", - "connect:UpdateUserRoutingProfile", - "connect:UpdateUserSecurityProfiles", - "connect:UpdateUserHierarchy", - "connect:TagResource", - "connect:UntagResource", - "connect:AssociateUserProficiencies", - "connect:DisassociateUserProficiencies", - "connect:UpdateUserProficiencies" - ] }, - "list": { - "handlerSchema": { - "properties": { - "InstanceArn": { - "$ref": "resource-schema.json#/properties/InstanceArn" - } - }, - "required": [ - "InstanceArn" - ] - }, - "permissions": [ - "connect:ListUsers" - ] + "Password": { + "description": "The password for the user account. A password is required if you are using Amazon Connect for identity management. Otherwise, it is an error to include a password.", + "type": "string", + "markdownDescription": "The password for the user account. A password is required if you are using Amazon Connect for identity management. Otherwise, it is an error to include a password.\n\n---\n\nRequired: No \nType: String \nPattern: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d\\S]{8,64}$ \nUpdate requires: No interruption\n" } }, - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/UserArn" - ], - "readOnlyProperties": [ - "/properties/UserArn" - ], - "writeOnlyProperties": [ - "/properties/Password" - ], - "tagging": { - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "cloudFormationSystemTags": true, - "tagProperty": "/properties/Tags", - "permissions": [ - "connect:TagResource", - "connect:UntagResource" - ] - }, "attributes": { "UserArn": { "description": "The Amazon Resource Name (ARN) for the user.", diff --git a/server/schema/resources/aws-connectcampaignsv2-campaign.json b/server/schema/resources/aws-connectcampaignsv2-campaign.json index e5cdee2d..f9f1bf19 100644 --- a/server/schema/resources/aws-connectcampaignsv2-campaign.json +++ b/server/schema/resources/aws-connectcampaignsv2-campaign.json @@ -683,12 +683,24 @@ "additionalProperties": false, "markdownDescription": "Communication limits\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "InstanceLimitsHandling": { + "type": "string", + "description": "Enumeration of Instance Limits handling in a Campaign", + "enum": [ + "OPT_IN", + "OPT_OUT" + ], + "markdownDescription": "Enumeration of Instance Limits handling in a Campaign\n\n---\n\nRequired: No \nType: String \nAllowed Values: OPT_IN | OPT_OUT \nUpdate requires: No interruption\n" + }, "CommunicationLimitsConfig": { "type": "object", "description": "Communication limits config", "properties": { "AllChannelsSubtypes": { "$ref": "#/definitions/CommunicationLimits" + }, + "InstanceLimitsHandling": { + "$ref": "#/definitions/InstanceLimitsHandling" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-customerprofiles-segmentdefinition.json b/server/schema/resources/aws-customerprofiles-segmentdefinition.json index ea1473db..759febc2 100644 --- a/server/schema/resources/aws-customerprofiles-segmentdefinition.json +++ b/server/schema/resources/aws-customerprofiles-segmentdefinition.json @@ -402,6 +402,9 @@ }, "Attributes": { "$ref": "#/definitions/CustomAttributes" + }, + "ProfileType": { + "$ref": "#/definitions/ProfileTypeDimension" } }, "additionalProperties": false, @@ -435,6 +438,31 @@ "additionalProperties": false, "markdownDescription": "Specifies profile based criteria for a segment.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ProfileTypeDimension": { + "description": "Specifies profile type based criteria for a segment.", + "type": "object", + "properties": { + "DimensionType": { + "$ref": "#/definitions/ProfileTypeDimensionType" + }, + "Values": { + "type": "array", + "items": { + "$ref": "#/definitions/ProfileType" + }, + "insertionOrder": false, + "minItems": 1, + "maxItems": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "DimensionType", + "Values" + ], + "additionalProperties": false, + "markdownDescription": "Specifies profile type based criteria for a segment.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "SegmentGroup": { "type": "object", "properties": { @@ -477,6 +505,24 @@ "ENDS_WITH" ], "markdownDescription": "The type of segment dimension to use for a string dimension.\n\n---\n\nRequired: No \nType: String \nAllowed Values: INCLUSIVE | EXCLUSIVE | CONTAINS | BEGINS_WITH | ENDS_WITH \nUpdate requires: No interruption\n" + }, + "ProfileTypeDimensionType": { + "description": "The type of segment dimension to use for a profile type dimension.", + "type": "string", + "enum": [ + "INCLUSIVE", + "EXCLUSIVE" + ], + "markdownDescription": "The type of segment dimension to use for a profile type dimension.\n\n---\n\nRequired: No \nType: String \nAllowed Values: INCLUSIVE | EXCLUSIVE \nUpdate requires: No interruption\n" + }, + "ProfileType": { + "description": "The type of profile.", + "type": "string", + "enum": [ + "ACCOUNT_PROFILE", + "PROFILE" + ], + "markdownDescription": "The type of profile.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ACCOUNT_PROFILE | PROFILE \nUpdate requires: No interruption\n" } }, "properties": { diff --git a/server/schema/resources/aws-datazone-connection.json b/server/schema/resources/aws-datazone-connection.json index 79468971..9ffbd770 100644 --- a/server/schema/resources/aws-datazone-connection.json +++ b/server/schema/resources/aws-datazone-connection.json @@ -585,7 +585,7 @@ "type": "string", "maxLength": 64, "minLength": 1, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[a-z0-9]+$ \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[a-z0-9_-]+$ \nUpdate requires: No interruption\n" }, "Host": { "type": "string", diff --git a/server/schema/resources/aws-datazone-projectprofile.json b/server/schema/resources/aws-datazone-projectprofile.json index 405e3f1d..8aa2f500 100644 --- a/server/schema/resources/aws-datazone-projectprofile.json +++ b/server/schema/resources/aws-datazone-projectprofile.json @@ -1,135 +1,53 @@ { - "tagging": { - "taggable": false, - "tagOnCreate": false, - "tagUpdatable": false, - "cloudFormationSystemTags": false - }, - "handlers": { - "read": { - "permissions": [ - "datazone:GetProjectProfile" - ] - }, - "create": { - "permissions": [ - "datazone:CreateProjectProfile", - "datazone:GetProjectProfile" - ] - }, - "update": { - "permissions": [ - "datazone:UpdateProjectProfile", - "datazone:GetProjectProfile" - ] - }, - "list": { - "permissions": [ - "datazone:ListProjectProfiles" - ] - }, - "delete": { - "permissions": [ - "datazone:DeleteProjectProfile", - "datazone:GetProjectProfile" - ] - } - }, "typeName": "AWS::DataZone::ProjectProfile", - "readOnlyProperties": [ - "/properties/CreatedAt", - "/properties/CreatedBy", - "/properties/DomainId", - "/properties/DomainUnitId", - "/properties/Id", - "/properties/Identifier", - "/properties/LastUpdatedAt" - ], "description": "Definition of AWS::DataZone::ProjectProfile Resource Type", - "writeOnlyProperties": [ - "/properties/DomainUnitIdentifier" - ], - "createOnlyProperties": [ - "/properties/DomainIdentifier" - ], - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/DomainIdentifier", - "/properties/Identifier" - ], "definitions": { - "ProjectScope": { - "additionalProperties": false, + "AwsAccount": { "type": "object", "properties": { - "Policy": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "Name": { - "minLength": 1, + "AwsAccountId": { "type": "string", - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w -]+$ \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^\\d{12}$ \nUpdate requires: No interruption\n" } }, "required": [ - "Name" + "AwsAccountId" ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Status": { + "DeploymentMode": { "type": "string", "enum": [ - "ENABLED", - "DISABLED" + "ON_CREATE", + "ON_DEMAND" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ON_CREATE | ON_DEMAND \nUpdate requires: No interruption\n" }, - "EnvironmentConfigurationParametersDetails": { - "additionalProperties": false, + "DesignationConfiguration": { "type": "object", "properties": { - "ParameterOverrides": { - "type": "array", - "items": { - "$ref": "#/definitions/EnvironmentConfigurationParameter" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "ResolvedParameters": { - "type": "array", - "items": { - "$ref": "#/definitions/EnvironmentConfigurationParameter" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "SsmPath": { - "minLength": 1, + "DesignationId": { "type": "string", - "maxLength": 2048, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "maxLength": 36, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 36 \nPattern: ^[a-zA-Z0-9_-]+$ \nUpdate requires: No interruption\n" } }, + "required": [ + "DesignationId" + ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "EnvironmentConfiguration": { - "additionalProperties": false, "type": "object", "properties": { - "Description": { + "Name": { "type": "string", - "maxLength": 2048, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nUpdate requires: No interruption\n" - }, - "AwsRegion": { - "$ref": "#/definitions/Region" - }, - "AwsAccount": { - "$ref": "#/definitions/AwsAccount" - }, - "DeploymentMode": { - "$ref": "#/definitions/DeploymentMode" + "maxLength": 64, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w -]+$ \nUpdate requires: No interruption\n" }, "Id": { "type": "string", @@ -139,20 +57,28 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\n" }, + "Description": { + "type": "string", + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "DeploymentMode": { + "$ref": "#/definitions/DeploymentMode" + }, "ConfigurationParameters": { "$ref": "#/definitions/EnvironmentConfigurationParametersDetails" }, + "AwsAccount": { + "$ref": "#/definitions/AwsAccount" + }, + "AwsRegion": { + "$ref": "#/definitions/Region" + }, "DeploymentOrder": { - "maximum": 16, "type": "number", + "maximum": 16, "minimum": 0, "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" - }, - "Name": { - "minLength": 1, - "type": "string", - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w -]+$ \nUpdate requires: No interruption\n" } }, "required": [ @@ -160,94 +86,105 @@ "EnvironmentBlueprintId", "Name" ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "EnvironmentConfigurationParameter": { - "additionalProperties": false, "type": "object", "properties": { - "IsEditable": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "Name": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z_][a-zA-Z0-9_]*$ \nUpdate requires: No interruption\n" }, "Value": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "Name": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z_][a-zA-Z0-9_]*$ \nUpdate requires: No interruption\n" + "IsEditable": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AwsAccount": { + "EnvironmentConfigurationParametersDetails": { + "type": "object", + "properties": { + "SsmPath": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "ParameterOverrides": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentConfigurationParameter" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ResolvedParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentConfigurationParameter" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ProjectScope": { "type": "object", "properties": { - "AwsAccountId": { + "Name": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^\\d{12}$ \nUpdate requires: No interruption\n" + "maxLength": 64, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w -]+$ \nUpdate requires: No interruption\n" + }, + "Policy": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, "required": [ - "AwsAccountId" + "Name" ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DeploymentMode": { - "type": "string", - "enum": [ - "ON_CREATE", - "ON_DEMAND" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ON_CREATE | ON_DEMAND \nUpdate requires: No interruption\n" - }, "Region": { - "additionalProperties": false, "type": "object", "properties": { "RegionName": { - "minLength": 4, "type": "string", "maxLength": 16, + "minLength": 4, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 4 \nMaximum Length: 16 \nPattern: ^[a-z]{2}-?(iso|gov)?-{1}[a-z]*-{1}[0-9]$ \nUpdate requires: No interruption\n" } }, "required": [ "RegionName" ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DesignationConfiguration": { - "additionalProperties": false, - "type": "object", - "properties": { - "DesignationId": { - "minLength": 1, - "type": "string", - "maxLength": 36, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 36 \nPattern: ^[a-zA-Z0-9_-]+$ \nUpdate requires: No interruption\n" - } - }, - "required": [ - "DesignationId" + "Status": { + "type": "string", + "enum": [ + "ENABLED", + "DISABLED" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" } }, - "required": [ - "Name" - ], "properties": { - "Status": { - "$ref": "#/definitions/Status" - }, - "DomainUnitId": { - "minLength": 1, + "CreatedAt": { "type": "string", - "maxLength": 256, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-z0-9_\\-]+$ \nUpdate requires: No interruption\nRead only property: Yes" + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "CreatedBy": { "type": "string", @@ -258,77 +195,152 @@ "maxLength": 2048, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, - "LastUpdatedAt": { - "format": "date-time", + "DomainId": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^dzd[_][a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" }, - "CreatedAt": { - "format": "date-time", + "DomainIdentifier": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^dzd[_][a-zA-Z0-9_-]{1,36}$ \nUpdate requires: Replacement\n" }, - "DomainUnitIdentifier": { + "DomainUnitId": { + "type": "string", + "maxLength": 256, "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-z0-9_\\-]+$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DomainUnitIdentifier": { "type": "string", "maxLength": 256, + "minLength": 1, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-z0-9_\\-]+$ \nUpdate requires: No interruption\n" }, - "Name": { - "minLength": 1, - "type": "string", - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w -]+$ \nUpdate requires: No interruption\n" + "EnvironmentConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentConfiguration" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "DomainId": { + "Id": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^dzd[_][a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" }, "Identifier": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" }, - "Id": { + "LastUpdatedAt": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, - "DomainIdentifier": { + "Name": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^dzd[_][a-zA-Z0-9_-]{1,36}$ \nUpdate requires: Replacement\n" + "maxLength": 64, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w -]+$ \nUpdate requires: No interruption\n" + }, + "Status": { + "$ref": "#/definitions/Status" } }, + "required": [ + "Name" + ], + "readOnlyProperties": [ + "/properties/CreatedAt", + "/properties/CreatedBy", + "/properties/DomainId", + "/properties/DomainUnitId", + "/properties/Id", + "/properties/Identifier", + "/properties/LastUpdatedAt", + "/properties/EnvironmentConfigurations/*/Id", + "/properties/EnvironmentConfigurations/*/ConfigurationParameters/ResolvedParameters" + ], + "writeOnlyProperties": [ + "/properties/DomainUnitIdentifier" + ], + "createOnlyProperties": [ + "/properties/DomainIdentifier" + ], + "primaryIdentifier": [ + "/properties/DomainIdentifier", + "/properties/Identifier" + ], + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "handlers": { + "create": { + "permissions": [ + "datazone:CreateProjectProfile", + "datazone:GetProjectProfile", + "ssm:GetParameter" + ] + }, + "read": { + "permissions": [ + "datazone:GetProjectProfile", + "ssm:GetParameter" + ] + }, + "update": { + "permissions": [ + "datazone:UpdateProjectProfile", + "datazone:GetProjectProfile", + "ssm:GetParameter" + ] + }, + "delete": { + "permissions": [ + "datazone:DeleteProjectProfile", + "datazone:GetProjectProfile" + ] + }, + "list": { + "permissions": [ + "datazone:ListProjectProfiles" + ] + } + }, + "additionalProperties": false, "attributes": { - "DomainUnitId": { - "minLength": 1, + "CreatedAt": { "type": "string", - "maxLength": 256, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-z0-9_\\-]+$ \nUpdate requires: No interruption\nRead only property: Yes" + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "CreatedBy": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, - "LastUpdatedAt": { - "format": "date-time", + "DomainId": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^dzd[_][a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" }, - "CreatedAt": { - "format": "date-time", + "DomainUnitId": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "maxLength": 256, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-z0-9_\\-]+$ \nUpdate requires: No interruption\nRead only property: Yes" }, - "DomainId": { + "Id": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^dzd[_][a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" }, "Identifier": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" }, - "Id": { + "LastUpdatedAt": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\nRead only property: Yes" + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-dax-cluster.json b/server/schema/resources/aws-dax-cluster.json index afadda1b..d3aa101d 100644 --- a/server/schema/resources/aws-dax-cluster.json +++ b/server/schema/resources/aws-dax-cluster.json @@ -60,6 +60,10 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, + "NetworkType": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, "NodeType": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" @@ -107,6 +111,7 @@ "/properties/IAMRoleARN", "/properties/SSESpecification", "/properties/ClusterEndpointEncryptionType", + "/properties/NetworkType", "/properties/ClusterName", "/properties/NodeType", "/properties/SubnetGroupName" diff --git a/server/schema/resources/aws-deadline-fleet.json b/server/schema/resources/aws-deadline-fleet.json index 3e4833c9..443e90fa 100644 --- a/server/schema/resources/aws-deadline-fleet.json +++ b/server/schema/resources/aws-deadline-fleet.json @@ -414,6 +414,9 @@ "InstanceMarketOptions": { "$ref": "#/definitions/ServiceManagedEc2InstanceMarketOptions" }, + "VpcConfiguration": { + "$ref": "#/definitions/VpcConfiguration" + }, "StorageProfileId": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^sp-[0-9a-f]{32}$ \nUpdate requires: No interruption\n" @@ -571,6 +574,23 @@ ], "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "VpcConfiguration": { + "type": "object", + "properties": { + "ResourceConfigurationArns": { + "type": "array", + "items": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { @@ -685,7 +705,13 @@ "identitystore:ListGroupMembershipsForMember", "logs:CreateLogGroup", "deadline:TagResource", - "deadline:ListTagsForResource" + "deadline:ListTagsForResource", + "vpc-lattice:GetResourceGateway", + "vpc-lattice:GetResourceConfiguration", + "ec2:CreateVpcEndpoint", + "ec2:DescribeSubnets", + "ec2:DescribeSecurityGroups", + "ec2:DescribeVpcs" ] }, "read": { @@ -703,7 +729,13 @@ "identitystore:ListGroupMembershipsForMember", "deadline:TagResource", "deadline:UntagResource", - "deadline:ListTagsForResource" + "deadline:ListTagsForResource", + "vpc-lattice:GetResourceGateway", + "vpc-lattice:GetResourceConfiguration", + "ec2:CreateVpcEndpoint", + "ec2:DescribeSubnets", + "ec2:DescribeSecurityGroups", + "ec2:DescribeVpcs" ] }, "delete": { diff --git a/server/schema/resources/aws-deadline-monitor.json b/server/schema/resources/aws-deadline-monitor.json index 91cd5fea..7c3a4b49 100644 --- a/server/schema/resources/aws-deadline-monitor.json +++ b/server/schema/resources/aws-deadline-monitor.json @@ -1,6 +1,34 @@ { "typeName": "AWS::Deadline::Monitor", "description": "Definition of AWS::Deadline::Monitor Resource Type", + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "minLength": 1, + "maxLength": 127, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, "properties": { "DisplayName": { "type": "string", @@ -28,6 +56,17 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-z0-9-]{1,100}$ \nUpdate requires: No interruption\n" }, + "Tags": { + "type": "array", + "maxItems": 50, + "description": "An array of key-value pairs to apply to this resource.", + "items": { + "$ref": "#/definitions/Tag" + }, + "insertionOrder": false, + "uniqueItems": true, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "Url": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" @@ -56,16 +95,24 @@ "/properties/Arn" ], "tagging": { - "taggable": false, - "tagOnCreate": false, - "tagUpdatable": false, - "cloudFormationSystemTags": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "deadline:TagResource", + "deadline:UntagResource", + "deadline:ListTagsForResource" + ] }, "handlers": { "create": { "permissions": [ "deadline:CreateMonitor", "deadline:GetMonitor", + "deadline:TagResource", + "deadline:ListTagsForResource", "iam:PassRole", "kms:CreateGrant", "sso:CreateApplication", @@ -77,12 +124,16 @@ }, "read": { "permissions": [ - "deadline:GetMonitor" + "deadline:GetMonitor", + "deadline:ListTagsForResource" ] }, "update": { "permissions": [ "deadline:GetMonitor", + "deadline:TagResource", + "deadline:UntagResource", + "deadline:ListTagsForResource", "deadline:UpdateMonitor", "iam:PassRole", "kms:CreateGrant", diff --git a/server/schema/resources/aws-docdb-dbcluster.json b/server/schema/resources/aws-docdb-dbcluster.json index 70f6dacb..69933ba9 100644 --- a/server/schema/resources/aws-docdb-dbcluster.json +++ b/server/schema/resources/aws-docdb-dbcluster.json @@ -48,10 +48,18 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, + "NetworkType": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "CopyTagsToSnapshot": { "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, + "GlobalClusterIdentifier": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, "RestoreType": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -195,6 +203,7 @@ "/properties/KmsKeyId", "/properties/MasterUsername", "/properties/SourceDBClusterIdentifier", + "/properties/GlobalClusterIdentifier", "/properties/DBClusterIdentifier", "/properties/AvailabilityZones", "/properties/DBSubnetGroupName", diff --git a/server/schema/resources/aws-docdbelastic-cluster.json b/server/schema/resources/aws-docdbelastic-cluster.json index cae912d2..b8bdd5c1 100644 --- a/server/schema/resources/aws-docdbelastic-cluster.json +++ b/server/schema/resources/aws-docdbelastic-cluster.json @@ -175,7 +175,8 @@ "kms:GenerateDataKey", "kms:Decrypt", "iam:CreateServiceLinkedRole" - ] + ], + "timeoutInMinutes": 480 }, "read": { "permissions": [ @@ -208,7 +209,8 @@ "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt" - ] + ], + "timeoutInMinutes": 2160 }, "delete": { "permissions": [ @@ -222,7 +224,8 @@ "ec2:DescribeVpcAttribute", "ec2:DescribeVpcs", "ec2:DescribeAvailabilityZones" - ] + ], + "timeoutInMinutes": 240 }, "list": { "permissions": [ diff --git a/server/schema/resources/aws-dsql-cluster.json b/server/schema/resources/aws-dsql-cluster.json index 37e2d412..8fd418b2 100644 --- a/server/schema/resources/aws-dsql-cluster.json +++ b/server/schema/resources/aws-dsql-cluster.json @@ -92,6 +92,34 @@ } }, "markdownDescription": "The Multi-region properties associated to this cluster.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "KmsEncryptionKey": { + "description": "The KMS key that encrypts data on the cluster.", + "type": "string", + "markdownDescription": "The KMS key that encrypts data on the cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "EncryptionDetails": { + "description": "The encryption configuration details for the cluster.", + "type": "object", + "additionalProperties": false, + "properties": { + "EncryptionStatus": { + "description": "The status of encryption for the cluster.", + "type": "string", + "markdownDescription": "The status of encryption for the cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "EncryptionType": { + "description": "The type of encryption that protects data in the cluster.", + "type": "string", + "markdownDescription": "The type of encryption that protects data in the cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "KmsKeyArn": { + "description": "The Amazon Resource Name (ARN) of the KMS key that encrypts data in the cluster.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the KMS key that encrypts data in the cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "The encryption configuration details for the cluster.\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" } }, "additionalProperties": false, @@ -116,12 +144,17 @@ "/properties/Identifier", "/properties/CreationTime", "/properties/Status", - "/properties/VpcEndpointServiceName" + "/properties/VpcEndpointServiceName", + "/properties/EncryptionDetails" + ], + "writeOnlyProperties": [ + "/properties/KmsEncryptionKey" ], "handlers": { "create": { "permissions": [ "dsql:CreateCluster", + "dsql:UpdateCluster", "dsql:GetCluster", "dsql:TagResource", "dsql:GetVpcEndpointServiceName", @@ -129,7 +162,11 @@ "iam:CreateServiceLinkedRole", "dsql:PutMultiRegionProperties", "dsql:AddPeerCluster", - "dsql:PutWitnessRegion" + "dsql:PutWitnessRegion", + "kms:Decrypt", + "kms:Encrypt", + "kms:GenerateDataKey", + "kms:DescribeKey" ] }, "read": { @@ -152,7 +189,11 @@ "dsql:PutMultiRegionProperties", "dsql:PutWitnessRegion", "dsql:AddPeerCluster", - "dsql:RemovePeerCluster" + "dsql:RemovePeerCluster", + "kms:Decrypt", + "kms:Encrypt", + "kms:GenerateDataKey", + "kms:DescribeKey" ] }, "delete": { @@ -196,6 +237,29 @@ "description": "The VPC endpoint service name.", "type": "string", "markdownDescription": "The VPC endpoint service name.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "EncryptionDetails": { + "description": "The encryption configuration details for the cluster.", + "type": "object", + "additionalProperties": false, + "properties": { + "EncryptionStatus": { + "description": "The status of encryption for the cluster.", + "type": "string", + "markdownDescription": "The status of encryption for the cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "EncryptionType": { + "description": "The type of encryption that protects data in the cluster.", + "type": "string", + "markdownDescription": "The type of encryption that protects data in the cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "KmsKeyArn": { + "description": "The Amazon Resource Name (ARN) of the KMS key that encrypts data in the cluster.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the KMS key that encrypts data in the cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "The encryption configuration details for the cluster.\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-dynamodb-globaltable.json b/server/schema/resources/aws-dynamodb-globaltable.json index c41a682e..7d8e8811 100644 --- a/server/schema/resources/aws-dynamodb-globaltable.json +++ b/server/schema/resources/aws-dynamodb-globaltable.json @@ -462,10 +462,6 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: MICROSECOND | MILLISECOND \nUpdate requires: No interruption\n" }, "StreamArn": { - "relationshipRef": { - "typeName": "AWS::Kinesis::Stream", - "propertyPath": "/properties/Arn" - }, "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } @@ -719,6 +715,14 @@ "Replicas" ], "properties": { + "MultiRegionConsistency": { + "type": "string", + "enum": [ + "EVENTUAL", + "STRONG" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: EVENTUAL | STRONG \nUpdate requires: No interruption\n" + }, "TableId": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" @@ -748,6 +752,17 @@ "WriteOnDemandThroughputSettings": { "$ref": "#/definitions/WriteOnDemandThroughputSettings" }, + "GlobalTableWitnesses": { + "minItems": 1, + "maxItems": 1, + "uniqueItems": true, + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/GlobalTableWitness" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "TableName": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" diff --git a/server/schema/resources/aws-dynamodb-table.json b/server/schema/resources/aws-dynamodb-table.json index a7d39126..e7b963a9 100644 --- a/server/schema/resources/aws-dynamodb-table.json +++ b/server/schema/resources/aws-dynamodb-table.json @@ -246,10 +246,6 @@ "markdownDescription": "The precision for the time and date that the stream was created.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MICROSECOND | MILLISECOND \nUpdate requires: No interruption\n" }, "StreamArn": { - "relationshipRef": { - "typeName": "AWS::Kinesis::Stream", - "propertyPath": "/properties/Arn" - }, "description": "The ARN for a specific Kinesis data stream.\n Length Constraints: Minimum length of 37. Maximum length of 1024.", "type": "string", "markdownDescription": "The ARN for a specific Kinesis data stream.\n Length Constraints: Minimum length of 37. Maximum length of 1024.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" @@ -500,9 +496,9 @@ "markdownDescription": "The name of the global secondary index. The name must be unique among all other indexes on this table.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "OnDemandThroughput": { - "description": "The maximum number of read and write units for the specified global secondary index. If you use this parameter, you must specify ``MaxReadRequestUnits``, ``MaxWriteRequestUnits``, or both.", + "description": "The maximum number of read and write units for the specified global secondary index. If you use this parameter, you must specify ``MaxReadRequestUnits``, ``MaxWriteRequestUnits``, or both. You must use either ``OnDemandThroughput`` or ``ProvisionedThroughput`` based on your table's capacity mode.", "$ref": "#/definitions/OnDemandThroughput", - "markdownDescription": "The maximum number of read and write units for the specified global secondary index. If you use this parameter, you must specify ``MaxReadRequestUnits``, ``MaxWriteRequestUnits``, or both.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "markdownDescription": "The maximum number of read and write units for the specified global secondary index. If you use this parameter, you must specify ``MaxReadRequestUnits``, ``MaxWriteRequestUnits``, or both. You must use either ``OnDemandThroughput`` or ``ProvisionedThroughput`` based on your table's capacity mode.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "ContributorInsightsSpecification": { "description": "The settings used to enable or disable CloudWatch Contributor Insights for the specified global secondary index.", @@ -515,9 +511,9 @@ "markdownDescription": "Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" }, "ProvisionedThroughput": { - "description": "Represents the provisioned throughput settings for the specified global secondary index.\n For current minimum and maximum provisioned throughput values, see [Service, Account, and Table Quotas](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) in the *Amazon DynamoDB Developer Guide*.", + "description": "Represents the provisioned throughput settings for the specified global secondary index. You must use either ``OnDemandThroughput`` or ``ProvisionedThroughput`` based on your table's capacity mode.\n For current minimum and maximum provisioned throughput values, see [Service, Account, and Table Quotas](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) in the *Amazon DynamoDB Developer Guide*.", "$ref": "#/definitions/ProvisionedThroughput", - "markdownDescription": "Represents the provisioned throughput settings for the specified global secondary index.\n For current minimum and maximum provisioned throughput values, see [Service, Account, and Table Quotas](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) in the *Amazon DynamoDB Developer Guide*.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "markdownDescription": "Represents the provisioned throughput settings for the specified global secondary index. You must use either ``OnDemandThroughput`` or ``ProvisionedThroughput`` based on your table's capacity mode.\n For current minimum and maximum provisioned throughput values, see [Service, Account, and Table Quotas](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html) in the *Amazon DynamoDB Developer Guide*.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "KeySchema": { "uniqueItems": true, @@ -547,10 +543,6 @@ "type": "object", "properties": { "S3Bucket": { - "relationshipRef": { - "typeName": "AWS::S3::Bucket", - "propertyPath": "/properties/BucketName" - }, "description": "The S3 bucket that is being imported from.", "type": "string", "markdownDescription": "The S3 bucket that is being imported from.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" @@ -762,9 +754,9 @@ "markdownDescription": "Global secondary indexes to be created on the table. You can create up to 20 global secondary indexes.\n If you update a table to include a new global secondary index, CFNlong initiates the index creation and then proceeds with the stack update. CFNlong doesn't wait for the index to complete creation because the backfilling phase can take a long time, depending on the size of the table. You can't use the index or update the table until the index's status is ``ACTIVE``. You can track its status by using the DynamoDB [DescribeTable](https://docs.aws.amazon.com/cli/latest/reference/dynamodb/describe-table.html) command.\n If you add or delete an index during an update, we recommend that you don't update any other resources. If your stack fails to update and is rolled back while adding a new index, you must manually delete the index. \n Updates are not supported. The following are exceptions:\n + If you update either the contributor insights specification or the provisioned throughput values of global secondary indexes, you can update the table without interruption.\n + You can delete or add one global secondary index without interruption. If you do both in the same update (for example, by changing the index's logical ID), the update fails.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "ResourcePolicy": { - "description": "A resource-based policy document that contains permissions to add to the specified table. In a CFNshort template, you can provide the policy in JSON or YAML format because CFNshort converts YAML to JSON before submitting it to DDB. For more information about resource-based policies, see [Using resource-based policies for](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-resource-based.html) and [Resource-based policy examples](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-examples.html).\n When you attach a resource-based policy while creating a table, the policy creation is *strongly consistent*. For information about the considerations that you should keep in mind while attaching a resource-based policy, see [Resource-based policy considerations](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html).", + "description": "An AWS resource-based policy document in JSON format that will be attached to the table.\n When you attach a resource-based policy while creating a table, the policy application is *strongly consistent*.\n The maximum size supported for a resource-based policy document is 20 KB. DynamoDB counts whitespaces when calculating the size of a policy against this limit. For a full list of all considerations that apply for resource-based policies, see [Resource-based policy considerations](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html).\n You need to specify the ``CreateTable`` and ``PutResourcePolicy`` IAM actions for authorizing a user to create a table with a resource-based policy.", "$ref": "#/definitions/ResourcePolicy", - "markdownDescription": "A resource-based policy document that contains permissions to add to the specified table. In a CFNshort template, you can provide the policy in JSON or YAML format because CFNshort converts YAML to JSON before submitting it to DDB. For more information about resource-based policies, see [Using resource-based policies for](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-resource-based.html) and [Resource-based policy examples](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-examples.html).\n When you attach a resource-based policy while creating a table, the policy creation is *strongly consistent*. For information about the considerations that you should keep in mind while attaching a resource-based policy, see [Resource-based policy considerations](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html).\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "markdownDescription": "An AWS resource-based policy document in JSON format that will be attached to the table.\n When you attach a resource-based policy while creating a table, the policy application is *strongly consistent*.\n The maximum size supported for a resource-based policy document is 20 KB. DynamoDB counts whitespaces when calculating the size of a policy against this limit. For a full list of all considerations that apply for resource-based policies, see [Resource-based policy considerations](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html).\n You need to specify the ``CreateTable`` and ``PutResourcePolicy`` IAM actions for authorizing a user to create a table with a resource-based policy.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "KeySchema": { "oneOf": [ diff --git a/server/schema/resources/aws-ec2-capacityreservationfleet.json b/server/schema/resources/aws-ec2-capacityreservationfleet.json index f41175b8..c172b9a7 100644 --- a/server/schema/resources/aws-ec2-capacityreservationfleet.json +++ b/server/schema/resources/aws-ec2-capacityreservationfleet.json @@ -2,7 +2,17 @@ "typeName": "AWS::EC2::CapacityReservationFleet", "description": "Resource Type definition for AWS::EC2::CapacityReservationFleet", "additionalProperties": false, - "taggable": true, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/TagSpecifications", + "permissions": [ + "ec2:CreateTags", + "ec2:DeleteTags" + ] + }, "properties": { "AllocationStrategy": { "type": "string", diff --git a/server/schema/resources/aws-ec2-customergateway.json b/server/schema/resources/aws-ec2-customergateway.json index 7e8d4966..086424c4 100644 --- a/server/schema/resources/aws-ec2-customergateway.json +++ b/server/schema/resources/aws-ec2-customergateway.json @@ -95,9 +95,9 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "IpAddress": { - "description": "IPv4 address for the customer gateway device's outside interface. The address must be static. If ``OutsideIpAddressType`` in your VPN connection options is set to ``PrivateIpv4``, you can use an RFC6598 or RFC1918 private IPv4 address. If ``OutsideIpAddressType`` is set to ``PublicIpv4``, you can use a public IPv4 address.", + "description": "The IP address for the customer gateway device's outside interface. The address must be static. If ``OutsideIpAddressType`` in your VPN connection options is set to ``PrivateIpv4``, you can use an RFC6598 or RFC1918 private IPv4 address. If ``OutsideIpAddressType`` is set to ``Ipv6``, you can use an IPv6 address.", "type": "string", - "markdownDescription": "IPv4 address for the customer gateway device's outside interface. The address must be static. If ``OutsideIpAddressType`` in your VPN connection options is set to ``PrivateIpv4``, you can use an RFC6598 or RFC1918 private IPv4 address. If ``OutsideIpAddressType`` is set to ``PublicIpv4``, you can use a public IPv4 address.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The IP address for the customer gateway device's outside interface. The address must be static. If ``OutsideIpAddressType`` in your VPN connection options is set to ``PrivateIpv4``, you can use an RFC6598 or RFC1918 private IPv4 address. If ``OutsideIpAddressType`` is set to ``Ipv6``, you can use an IPv6 address.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "BgpAsnExtended": { "multipleOf": 1, diff --git a/server/schema/resources/aws-ec2-ec2fleet.json b/server/schema/resources/aws-ec2-ec2fleet.json index 7effab31..5a53e477 100644 --- a/server/schema/resources/aws-ec2-ec2fleet.json +++ b/server/schema/resources/aws-ec2-ec2fleet.json @@ -1,6 +1,7 @@ { "typeName": "AWS::EC2::EC2Fleet", "description": "Resource Type definition for AWS::EC2::EC2Fleet", + "sourceUrl": "https://github.com/aws-cloudformation", "additionalProperties": false, "properties": { "TargetCapacitySpecification": { @@ -920,6 +921,13 @@ ] }, "list": { + "handlerSchema": { + "properties": { + "Type": { + "$ref": "resource-schema.json#/properties/Type" + } + } + }, "permissions": [ "ec2:DescribeFleets" ] diff --git a/server/schema/resources/aws-ec2-egressonlyinternetgateway.json b/server/schema/resources/aws-ec2-egressonlyinternetgateway.json index 6d032234..be185d0e 100644 --- a/server/schema/resources/aws-ec2-egressonlyinternetgateway.json +++ b/server/schema/resources/aws-ec2-egressonlyinternetgateway.json @@ -13,13 +13,52 @@ "description": "The ID of the VPC for which to create the egress-only internet gateway.", "type": "string", "markdownDescription": "The ID of the VPC for which to create the egress-only internet gateway.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + }, + "Tags": { + "type": "array", + "description": "Any tags assigned to the egress only internet gateway.", + "uniqueItems": false, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "Any tags assigned to the egress only internet gateway.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "definitions": { + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Key" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "tagging": { - "taggable": false, - "tagOnCreate": false, - "tagUpdatable": false, - "cloudFormationSystemTags": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "ec2:CreateTags", + "ec2:DeleteTags" + ] }, "required": [ "VpcId" @@ -37,19 +76,29 @@ "create": { "permissions": [ "ec2:CreateEgressOnlyInternetGateway", + "ec2:CreateTags", "ec2:DescribeEgressOnlyInternetGateways" ] }, "read": { "permissions": [ - "ec2:DescribeEgressOnlyInternetGateways" + "ec2:DescribeEgressOnlyInternetGateways", + "ec2:DescribeTags" ] }, "delete": { "permissions": [ "ec2:DeleteEgressOnlyInternetGateway", "ec2:DescribeEgressOnlyInternetGateways", - "ec2:DescribeVpcs" + "ec2:DescribeVpcs", + "ec2:DeleteTags" + ] + }, + "update": { + "permissions": [ + "ec2:DeleteTags", + "ec2:CreateTags", + "ec2:DescribeEgressOnlyInternetGateways" ] }, "list": { diff --git a/server/schema/resources/aws-ec2-instance.json b/server/schema/resources/aws-ec2-instance.json index 737b06ae..f1667ac5 100644 --- a/server/schema/resources/aws-ec2-instance.json +++ b/server/schema/resources/aws-ec2-instance.json @@ -63,14 +63,12 @@ "handlers": { "read": { "permissions": [ - "ec2:DescribeElasticGpus", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVolumes", "ec2:DescribeInstances", "ec2:DescribeInstanceAttribute", "ec2:DescribeInstanceCreditSpecifications", "ec2:DescribeLaunchTemplates", - "elastic-inference:DescribeAccelerators", "ssm:DescribeAssociation", "ssm:ListAssociations" ] @@ -79,7 +77,6 @@ "permissions": [ "iam:PassRole", "ec2:ModifyPrivateDnsNameOptions", - "ec2:DescribeElasticGpus", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVolumes", "ec2:RunInstances", @@ -104,7 +101,6 @@ "ec2:CreateTags", "ec2:ReplaceIamInstanceProfileAssociation", "ec2:StartInstances", - "elastic-inference:DescribeAccelerators", "ssm:CreateAssociation", "ssm:DescribeAssociation", "ssm:ListAssociations" @@ -112,7 +108,6 @@ }, "update": { "permissions": [ - "ec2:DescribeElasticGpus", "ec2:ModifyPrivateDnsNameOptions", "ec2:DescribeNetworkInterfaces", "ec2:AssociateIamInstanceProfile", @@ -140,7 +135,6 @@ "ec2:StartInstances", "ec2:StopInstances", "ec2:UnmonitorInstances", - "elastic-inference:DescribeAccelerators", "ssm:CreateAssociation", "ssm:DeleteAssociation", "ssm:DescribeAssociation", @@ -156,14 +150,12 @@ "permissions": [ "ec2:DescribeInstances", "ec2:TerminateInstances", - "ec2:DescribeElasticGpus", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVolumes", "ec2:DescribeInstances", "ec2:DescribeInstanceAttribute", "ec2:DescribeInstanceCreditSpecifications", "ec2:DescribeLaunchTemplates", - "elastic-inference:DescribeAccelerators", "ssm:DescribeAssociation", "ssm:ListAssociations" ] @@ -288,9 +280,9 @@ "type": "object", "properties": { "Type": { - "description": "The type of Elastic Graphics accelerator.", + "description": "The type of Elastic Graphics accelerator. Amazon Elastic Graphics is no longer available.", "type": "string", - "markdownDescription": "The type of Elastic Graphics accelerator.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The type of Elastic Graphics accelerator. Amazon Elastic Graphics is no longer available.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, "required": [ @@ -438,15 +430,15 @@ "type": "object", "properties": { "Type": { - "description": "The type of elastic inference accelerator.", + "description": "The type of elastic inference accelerator. Amazon Elastic Inference is no longer available.", "type": "string", - "markdownDescription": "The type of elastic inference accelerator.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The type of elastic inference accelerator. Amazon Elastic Inference is no longer available.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "Count": { - "description": "The number of elastic inference accelerators to attach to the instance.", + "description": "The number of elastic inference accelerators to attach to the instance. Amazon Elastic Inference is no longer available.", "type": "integer", "minimum": 0, - "markdownDescription": "The number of elastic inference accelerators to attach to the instance.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The number of elastic inference accelerators to attach to the instance. Amazon Elastic Inference is no longer available.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "required": [ diff --git a/server/schema/resources/aws-ec2-ipam.json b/server/schema/resources/aws-ec2-ipam.json index 72f1a39e..1741e78d 100644 --- a/server/schema/resources/aws-ec2-ipam.json +++ b/server/schema/resources/aws-ec2-ipam.json @@ -222,7 +222,7 @@ "taggable": true, "tagOnCreate": true, "tagUpdatable": true, - "cloudFormationSystemTags": false, + "cloudFormationSystemTags": true, "tagProperty": "/properties/Tags", "permissions": [ "ec2:DeleteTags", diff --git a/server/schema/resources/aws-ec2-ippoolroutetableassociation.json b/server/schema/resources/aws-ec2-ippoolroutetableassociation.json new file mode 100644 index 00000000..219aac64 --- /dev/null +++ b/server/schema/resources/aws-ec2-ippoolroutetableassociation.json @@ -0,0 +1,74 @@ +{ + "typeName": "AWS::EC2::IpPoolRouteTableAssociation", + "description": "Resource Type definition for AWS::EC2::IpPoolRouteTableAssociation", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ec2-ippoolroutetableassociation.git", + "additionalProperties": false, + "properties": { + "AssociationId": { + "description": "The route table association ID.", + "type": "string", + "markdownDescription": "The route table association ID.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "PublicIpv4Pool": { + "description": "The ID of the public IPv4 pool.", + "type": "string", + "markdownDescription": "The ID of the public IPv4 pool.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + }, + "RouteTableId": { + "description": "The ID of the route table.", + "type": "string", + "markdownDescription": "The ID of the route table.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + } + }, + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "required": [ + "PublicIpv4Pool", + "RouteTableId" + ], + "createOnlyProperties": [ + "/properties/PublicIpv4Pool", + "/properties/RouteTableId" + ], + "readOnlyProperties": [ + "/properties/AssociationId" + ], + "primaryIdentifier": [ + "/properties/AssociationId" + ], + "handlers": { + "create": { + "permissions": [ + "ec2:AssociateRouteTable", + "ec2:DescribeRouteTables" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeRouteTables" + ] + }, + "delete": { + "permissions": [ + "ec2:DisassociateRouteTable", + "ec2:DescribeRouteTables" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeRouteTables" + ] + } + }, + "attributes": { + "AssociationId": { + "description": "The route table association ID.", + "type": "string", + "markdownDescription": "The route table association ID.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-ec2-launchtemplate.json b/server/schema/resources/aws-ec2-launchtemplate.json index a22d944f..51db34e8 100644 --- a/server/schema/resources/aws-ec2-launchtemplate.json +++ b/server/schema/resources/aws-ec2-launchtemplate.json @@ -118,24 +118,6 @@ "type": "boolean", "markdownDescription": "Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "ElasticGpuSpecifications": { - "uniqueItems": false, - "description": "Deprecated.\n Amazon Elastic Graphics reached end of life on January 8, 2024.", - "type": "array", - "items": { - "$ref": "#/definitions/ElasticGpuSpecification" - }, - "markdownDescription": "Deprecated.\n Amazon Elastic Graphics reached end of life on January 8, 2024.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "ElasticInferenceAccelerators": { - "uniqueItems": false, - "description": "Amazon Elastic Inference is no longer available.\n An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads.\n You cannot specify accelerators from different generations in the same request.", - "type": "array", - "items": { - "$ref": "#/definitions/LaunchTemplateElasticInferenceAccelerator" - }, - "markdownDescription": "Amazon Elastic Inference is no longer available.\n An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads.\n You cannot specify accelerators from different generations in the same request.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, "Placement": { "description": "The placement for the instance.", "$ref": "#/definitions/Placement", @@ -309,19 +291,6 @@ }, "markdownDescription": "The maintenance options of your instance.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ElasticGpuSpecification": { - "description": "Amazon Elastic Graphics reached end of life on January 8, 2024.\n Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.\n ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).", - "additionalProperties": false, - "type": "object", - "properties": { - "Type": { - "description": "The type of Elastic Graphics accelerator.", - "type": "string", - "markdownDescription": "The type of Elastic Graphics accelerator.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "Amazon Elastic Graphics reached end of life on January 8, 2024.\n Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.\n ``ElasticGpuSpecification`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, "Cpu": { "description": "Specifies the CPU performance to consider when using an instance family as the baseline reference.", "additionalProperties": false, @@ -522,9 +491,9 @@ "markdownDescription": "The number of I/O operations per second (IOPS). For ``gp3``, ``io1``, and ``io2`` volumes, this represents the number of IOPS that are provisioned for the volume. For ``gp2`` volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.\n The following are the supported values for each volume type:\n + ``gp3``: 3,000 - 16,000 IOPS\n + ``io1``: 100 - 64,000 IOPS\n + ``io2``: 100 - 256,000 IOPS\n \n For ``io2`` volumes, you can achieve up to 256,000 IOPS on [instances built on the Nitro System](https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html). On other instances, you can achieve performance up to 32,000 IOPS.\n This parameter is supported for ``io1``, ``io2``, and ``gp3`` volumes only.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "VolumeInitializationRate": { - "description": "", + "description": "Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as *volume initialization*. Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.\n This parameter is supported only for volumes created from snapshots. Omit this parameter if:\n + You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.\n If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.\n + You want to create a volume that is initialized at the default rate.\n \n For more information, see [Initialize Amazon EBS volumes](https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html) in the *Amazon EC2 User Guide*.\n Valid range: 100 - 300 MiB/s", "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as *volume initialization*. Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.\n This parameter is supported only for volumes created from snapshots. Omit this parameter if:\n + You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.\n If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.\n + You want to create a volume that is initialized at the default rate.\n \n For more information, see [Initialize Amazon EBS volumes](https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html) in the *Amazon EC2 User Guide*.\n Valid range: 100 - 300 MiB/s\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "VolumeSize": { "description": "The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:\n + ``gp2`` and ``gp3``: 1 - 16,384 GiB\n + ``io1``: 4 - 16,384 GiB\n + ``io2``: 4 - 65,536 GiB\n + ``st1`` and ``sc1``: 125 - 16,384 GiB\n + ``standard``: 1 - 1024 GiB", @@ -793,6 +762,11 @@ "type": "integer", "markdownDescription": "The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the ``Ipv4Prefix`` option.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, + "EnaQueueCount": { + "description": "", + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, "Ipv6Prefixes": { "uniqueItems": false, "description": "One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the ``Ipv6PrefixCount`` option.", @@ -1062,24 +1036,6 @@ }, "markdownDescription": "The baseline performance to consider, using an instance family as a baseline reference. The instance family establishes the lowest acceptable level of performance. Amazon EC2 uses this baseline to guide instance type selection, but there is no guarantee that the selected instance types will always exceed the baseline for every application.\n Currently, this parameter only supports CPU performance as a baseline performance factor. For example, specifying ``c6i`` would use the CPU performance of the ``c6i`` family as the baseline reference.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "LaunchTemplateElasticInferenceAccelerator": { - "description": "Amazon Elastic Inference is no longer available.\n Specifies an elastic inference accelerator.\n ``LaunchTemplateElasticInferenceAccelerator`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).", - "additionalProperties": false, - "type": "object", - "properties": { - "Type": { - "description": "The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.", - "type": "string", - "markdownDescription": "The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "Count": { - "description": "The number of elastic inference accelerators to attach to the instance. \n Default: 1", - "type": "integer", - "markdownDescription": "The number of elastic inference accelerators to attach to the instance. \n Default: 1\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "Amazon Elastic Inference is no longer available.\n Specifies an elastic inference accelerator.\n ``LaunchTemplateElasticInferenceAccelerator`` is a property of [AWS::EC2::LaunchTemplate LaunchTemplateData](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, "BaselineEbsBandwidthMbps": { "description": "The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see [Amazon EBS\u2013optimized instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) in the *Amazon EC2 User Guide*.", "additionalProperties": false, diff --git a/server/schema/resources/aws-ec2-natgateway.json b/server/schema/resources/aws-ec2-natgateway.json index c1867292..d3e4601f 100644 --- a/server/schema/resources/aws-ec2-natgateway.json +++ b/server/schema/resources/aws-ec2-natgateway.json @@ -86,11 +86,34 @@ "Key" ], "markdownDescription": "Specifies a tag. For more information, see [Resource tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AvailabilityZoneAddress": { + "description": "", + "additionalProperties": false, + "type": "object", + "properties": { + "AvailabilityZone": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "AllocationIds": { + "uniqueItems": true, + "insertionOrder": false, + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "AvailabilityZone", + "AllocationIds" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, - "required": [ - "SubnetId" - ], "properties": { "SecondaryAllocationIds": { "uniqueItems": true, @@ -108,6 +131,22 @@ "type": "string", "markdownDescription": "The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, + "SecondaryPrivateIpAddressCount": { + "description": "[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon Virtual Private Cloud User Guide*.\n ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.", + "type": "integer", + "minimum": 1, + "markdownDescription": "[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon Virtual Private Cloud User Guide*.\n ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "AllocationId": { + "description": "[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway. This property is required for a public NAT gateway and cannot be specified with a private NAT gateway.", + "type": "string", + "markdownDescription": "[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway. This property is required for a public NAT gateway and cannot be specified with a private NAT gateway.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "SubnetId": { + "description": "The ID of the subnet in which the NAT gateway is located.", + "type": "string", + "markdownDescription": "The ID of the subnet in which the NAT gateway is located.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, "ConnectivityType": { "description": "Indicates whether the NAT gateway supports public or private connectivity. The default is public connectivity.", "type": "string", @@ -124,22 +163,6 @@ }, "markdownDescription": "Secondary private IPv4 addresses. For more information about secondary addresses, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon Virtual Private Cloud User Guide*.\n ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "SecondaryPrivateIpAddressCount": { - "description": "[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon Virtual Private Cloud User Guide*.\n ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.", - "type": "integer", - "minimum": 1, - "markdownDescription": "[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see [Create a NAT gateway](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating) in the *Amazon Virtual Private Cloud User Guide*.\n ``SecondaryPrivateIpAddressCount`` and ``SecondaryPrivateIpAddresses`` cannot be set at the same time.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "AllocationId": { - "description": "[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway. This property is required for a public NAT gateway and cannot be specified with a private NAT gateway.", - "type": "string", - "markdownDescription": "[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway. This property is required for a public NAT gateway and cannot be specified with a private NAT gateway.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "SubnetId": { - "description": "The ID of the subnet in which the NAT gateway is located.", - "type": "string", - "markdownDescription": "The ID of the subnet in which the NAT gateway is located.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" - }, "NatGatewayId": { "description": "", "type": "string", diff --git a/server/schema/resources/aws-ec2-subnet.json b/server/schema/resources/aws-ec2-subnet.json index 42f915a0..f30bc96c 100644 --- a/server/schema/resources/aws-ec2-subnet.json +++ b/server/schema/resources/aws-ec2-subnet.json @@ -15,8 +15,8 @@ }, "MapPublicIpOnLaunch": { "type": "boolean", - "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).", - "markdownDescription": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "description": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).", + "markdownDescription": "Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false``.\n AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the [VPC pricing page](https://docs.aws.amazon.com/vpc/pricing/).\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "EnableLniAtDeviceIndex": { "type": "integer", @@ -126,6 +126,19 @@ "type": "integer", "description": "An IPv6 netmask length for the subnet.", "markdownDescription": "An IPv6 netmask length for the subnet.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "BlockPublicAccessStates": { + "type": "object", + "additionalProperties": false, + "description": "", + "properties": { + "InternetGatewayBlockMode": { + "type": "string", + "description": "The mode of VPC BPA. Options here are off, block-bidirectional, block-ingress ", + "markdownDescription": "The mode of VPC BPA. Options here are off, block-bidirectional, block-ingress \n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" } }, "tagging": { @@ -187,7 +200,8 @@ "readOnlyProperties": [ "/properties/NetworkAclAssociationId", "/properties/SubnetId", - "/properties/Ipv6CidrBlocks" + "/properties/Ipv6CidrBlocks", + "/properties/BlockPublicAccessStates" ], "writeOnlyProperties": [ "/properties/EnableLniAtDeviceIndex", @@ -254,6 +268,19 @@ }, "description": "", "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "BlockPublicAccessStates": { + "type": "object", + "additionalProperties": false, + "description": "", + "properties": { + "InternetGatewayBlockMode": { + "type": "string", + "description": "The mode of VPC BPA. Options here are off, block-bidirectional, block-ingress ", + "markdownDescription": "The mode of VPC BPA. Options here are off, block-bidirectional, block-ingress \n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-ec2-trafficmirrorfilter.json b/server/schema/resources/aws-ec2-trafficmirrorfilter.json index 6e87153b..a896c8f9 100644 --- a/server/schema/resources/aws-ec2-trafficmirrorfilter.json +++ b/server/schema/resources/aws-ec2-trafficmirrorfilter.json @@ -1,38 +1,10 @@ { "typeName": "AWS::EC2::TrafficMirrorFilter", - "description": "Resource Type definition for AWS::EC2::TrafficMirrorFilter", - "additionalProperties": false, - "properties": { - "Id": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "Description": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "NetworkServices": { - "type": "array", - "uniqueItems": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Tags": { - "type": "array", - "uniqueItems": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - } - }, + "description": "Resource schema for AWS::EC2::TrafficMirrorFilter", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "definitions": { "Tag": { "type": "object", - "additionalProperties": false, "properties": { "Key": { "type": "string", @@ -44,12 +16,65 @@ } }, "required": [ - "Value", - "Key" + "Key", + "Value" ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TrafficMirrorNetworkService": { + "description": "The network service traffic that is associated with the traffic mirror filter.", + "type": "string", + "enum": [ + "amazon-dns" + ], + "markdownDescription": "The network service traffic that is associated with the traffic mirror filter.\n\n---\n\nRequired: No \nType: String \nAllowed Values: amazon-dns \nUpdate requires: No interruption\n" } }, + "properties": { + "Id": { + "description": "The ID of a traffic mirror filter.", + "type": "string", + "markdownDescription": "The ID of a traffic mirror filter.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "NetworkServices": { + "description": "The network service that is associated with the traffic mirror filter.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TrafficMirrorNetworkService" + }, + "markdownDescription": "The network service that is associated with the traffic mirror filter.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Description": { + "description": "The description of a traffic mirror filter.", + "type": "string", + "markdownDescription": "The description of a traffic mirror filter.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "Tags": { + "description": "The tags for a traffic mirror filter.", + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "The tags for a traffic mirror filter.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "ec2:CreateTags", + "ec2:DeleteTags" + ] + }, + "additionalProperties": false, "createOnlyProperties": [ "/properties/Description" ], @@ -59,10 +84,51 @@ "primaryIdentifier": [ "/properties/Id" ], + "handlers": { + "create": { + "permissions": [ + "ec2:CreateTrafficMirrorFilter", + "ec2:DescribeTrafficMirrorFilters", + "ec2:CreateTags", + "ec2:ModifyTrafficMirrorFilterNetworkServices", + "ec2:DescribeTags" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeTrafficMirrorFilters", + "ec2:DescribeTags" + ] + }, + "update": { + "permissions": [ + "ec2:ModifyTrafficMirrorFilterNetworkServices", + "ec2:DescribeTrafficMirrorFilters", + "ec2:CreateTags", + "ec2:DeleteTags", + "ec2:DescribeTags" + ] + }, + "delete": { + "permissions": [ + "ec2:DescribeTrafficMirrorFilters", + "ec2:DeleteTrafficMirrorFilter", + "ec2:DeleteTags", + "ec2:DescribeTags" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeTrafficMirrorFilters", + "ec2:DescribeTags" + ] + } + }, "attributes": { "Id": { + "description": "The ID of a traffic mirror filter.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The ID of a traffic mirror filter.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-ec2-trafficmirrorfilterrule.json b/server/schema/resources/aws-ec2-trafficmirrorfilterrule.json index 6b00c1ac..96142dfc 100644 --- a/server/schema/resources/aws-ec2-trafficmirrorfilterrule.json +++ b/server/schema/resources/aws-ec2-trafficmirrorfilterrule.json @@ -1,99 +1,138 @@ { "typeName": "AWS::EC2::TrafficMirrorFilterRule", - "description": "Resource Type definition for AWS::EC2::TrafficMirrorFilterRule", - "additionalProperties": false, + "description": "Resource Type definition for for AWS::EC2::TrafficMirrorFilterRule", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "definitions": { + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Key" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TrafficMirrorPortRange": { + "type": "object", + "additionalProperties": false, + "properties": { + "FromPort": { + "description": "The first port in the Traffic Mirror port range.", + "type": "integer", + "markdownDescription": "The first port in the Traffic Mirror port range.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + }, + "ToPort": { + "description": "The last port in the Traffic Mirror port range.", + "type": "integer", + "markdownDescription": "The last port in the Traffic Mirror port range.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "FromPort", + "ToPort" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TrafficMirrorRuleAction": { + "description": "The action to take on the filtered traffic.", + "type": "string", + "markdownDescription": "The action to take on the filtered traffic.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TrafficDirection": { + "description": "The type of traffic.", + "type": "string", + "markdownDescription": "The type of traffic.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, "properties": { "DestinationPortRange": { - "$ref": "#/definitions/TrafficMirrorPortRange" + "description": "The destination port range.", + "$ref": "#/definitions/TrafficMirrorPortRange", + "markdownDescription": "The destination port range.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "Description": { + "description": "The description of the Traffic Mirror Filter rule.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The description of the Traffic Mirror Filter rule.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "SourcePortRange": { - "$ref": "#/definitions/TrafficMirrorPortRange" + "description": "The source port range.", + "$ref": "#/definitions/TrafficMirrorPortRange", + "markdownDescription": "The source port range.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "RuleAction": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "description": "The action to take on the filtered traffic (accept/reject).", + "$ref": "#/definitions/TrafficMirrorRuleAction", + "markdownDescription": "The action to take on the filtered traffic (accept/reject).\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" }, "SourceCidrBlock": { + "description": "The source CIDR block to assign to the Traffic Mirror Filter rule.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The source CIDR block to assign to the Traffic Mirror Filter rule.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "RuleNumber": { + "description": "The number of the Traffic Mirror rule.", "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The number of the Traffic Mirror rule.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, "DestinationCidrBlock": { + "description": "The destination CIDR block to assign to the Traffic Mirror rule.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The destination CIDR block to assign to the Traffic Mirror rule.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, - "Id": { + "TrafficMirrorFilterRuleId": { + "description": "The ID of the Traffic Mirror Filter rule.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The ID of the Traffic Mirror Filter rule.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "TrafficMirrorFilterId": { + "description": "The ID of the filter that this rule is associated with.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The ID of the filter that this rule is associated with.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "TrafficDirection": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "description": "The direction of traffic (ingress/egress).", + "$ref": "#/definitions/TrafficDirection", + "markdownDescription": "The direction of traffic (ingress/egress).\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" }, "Protocol": { + "description": "The number of protocol, for example 17 (UDP), to assign to the Traffic Mirror rule.", "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The number of protocol, for example 17 (UDP), to assign to the Traffic Mirror rule.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "Tags": { + "description": "Any tags assigned to the Traffic Mirror Filter rule.", "type": "array", "uniqueItems": false, + "insertionOrder": false, "items": { "$ref": "#/definitions/Tag" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "Any tags assigned to the Traffic Mirror Filter rule.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "definitions": { - "TrafficMirrorPortRange": { - "type": "object", - "additionalProperties": false, - "properties": { - "ToPort": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" - }, - "FromPort": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "required": [ - "FromPort", - "ToPort" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "Tag": { - "type": "object", - "additionalProperties": false, - "properties": { - "Value": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, - "Key": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Value", - "Key" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - } + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "ec2:CreateTags", + "ec2:DeleteTags" + ] }, + "additionalProperties": false, "required": [ "RuleAction", "SourceCidrBlock", @@ -106,15 +145,47 @@ "/properties/TrafficMirrorFilterId" ], "primaryIdentifier": [ - "/properties/Id" + "/properties/TrafficMirrorFilterRuleId" ], "readOnlyProperties": [ - "/properties/Id" + "/properties/TrafficMirrorFilterRuleId" ], + "handlers": { + "create": { + "permissions": [ + "ec2:CreateTrafficMirrorFilterRule", + "ec2:CreateTags", + "ec2:DescribeTrafficMirrorFilterRules" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeTrafficMirrorFilterRules" + ] + }, + "update": { + "permissions": [ + "ec2:ModifyTrafficMirrorFilterRule", + "ec2:CreateTags", + "ec2:DeleteTags" + ] + }, + "delete": { + "permissions": [ + "ec2:DeleteTrafficMirrorFilterRule" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeTrafficMirrorFilterRules" + ] + } + }, "attributes": { - "Id": { + "TrafficMirrorFilterRuleId": { + "description": "The ID of the Traffic Mirror Filter rule.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The ID of the Traffic Mirror Filter rule.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-ec2-trafficmirrorsession.json b/server/schema/resources/aws-ec2-trafficmirrorsession.json index 9e9323bd..dd9b6100 100644 --- a/server/schema/resources/aws-ec2-trafficmirrorsession.json +++ b/server/schema/resources/aws-ec2-trafficmirrorsession.json @@ -1,78 +1,112 @@ { "typeName": "AWS::EC2::TrafficMirrorSession", - "description": "Resource Type definition for AWS::EC2::TrafficMirrorSession", - "additionalProperties": false, + "description": "Resource schema for AWS::EC2::TrafficMirrorSession", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ec2-tm.git", + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a traffic mirror session resource.", + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "A key-value pair to associate with a traffic mirror session resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TrafficMirrorSessionField": { + "type": "string", + "enum": [ + "packet-length", + "description", + "virtual-network-id" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: packet-length | description | virtual-network-id \nUpdate requires: No interruption\n" + } + }, "properties": { "Id": { + "description": "The ID of a Traffic Mirror session.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The ID of a Traffic Mirror session.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "NetworkInterfaceId": { + "description": "The ID of the source network interface.", + "type": "string", + "markdownDescription": "The ID of the source network interface.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "TrafficMirrorTargetId": { + "description": "The ID of a Traffic Mirror target.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The ID of a Traffic Mirror target.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, - "Description": { + "TrafficMirrorFilterId": { + "description": "The ID of a Traffic Mirror filter.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The ID of a Traffic Mirror filter.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, - "SessionNumber": { + "PacketLength": { + "description": "The number of bytes in each packet to mirror.", "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The number of bytes in each packet to mirror.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "VirtualNetworkId": { + "SessionNumber": { + "description": "The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.", "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, - "PacketLength": { + "VirtualNetworkId": { + "description": "The VXLAN ID for the Traffic Mirror session.", "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The VXLAN ID for the Traffic Mirror session.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "NetworkInterfaceId": { + "Description": { + "description": "The description of the Traffic Mirror session.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The description of the Traffic Mirror session.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "TrafficMirrorFilterId": { + "OwnerId": { + "description": "The ID of the account that owns the Traffic Mirror session.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The ID of the account that owns the Traffic Mirror session.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Tags": { + "description": "The tags assigned to the Traffic Mirror session.", "type": "array", "uniqueItems": false, + "insertionOrder": false, "items": { "$ref": "#/definitions/Tag" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "The tags assigned to the Traffic Mirror session.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "definitions": { - "Tag": { - "type": "object", - "additionalProperties": false, - "properties": { - "Key": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, - "Value": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Value", - "Key" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - } + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "ec2:CreateTags", + "ec2:DeleteTags" + ] }, + "additionalProperties": false, "required": [ - "TrafficMirrorTargetId", "NetworkInterfaceId", "TrafficMirrorFilterId", - "SessionNumber" - ], - "createOnlyProperties": [ - "/properties/NetworkInterfaceId" + "SessionNumber", + "TrafficMirrorTargetId" ], "readOnlyProperties": [ "/properties/Id" @@ -80,10 +114,48 @@ "primaryIdentifier": [ "/properties/Id" ], + "handlers": { + "create": { + "permissions": [ + "ec2:CreateTrafficMirrorSession", + "ec2:DescribeTrafficMirrorSessions", + "ec2:CreateTags", + "ec2:DescribeTags" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeTrafficMirrorSessions", + "ec2:DescribeTags" + ] + }, + "update": { + "permissions": [ + "ec2:ModifyTrafficMirrorSession", + "ec2:CreateTags", + "ec2:DeleteTags", + "ec2:DescribeTrafficMirrorSessions", + "ec2:DescribeTags" + ] + }, + "delete": { + "permissions": [ + "ec2:DeleteTrafficMirrorSession", + "ec2:DeleteTags" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeTrafficMirrorSessions", + "ec2:DescribeTags" + ] + } + }, "attributes": { "Id": { + "description": "The ID of a Traffic Mirror session.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The ID of a Traffic Mirror session.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-ec2-trafficmirrortarget.json b/server/schema/resources/aws-ec2-trafficmirrortarget.json index bf15ff4f..aa2ee0fb 100644 --- a/server/schema/resources/aws-ec2-trafficmirrortarget.json +++ b/server/schema/resources/aws-ec2-trafficmirrortarget.json @@ -1,35 +1,41 @@ { "typeName": "AWS::EC2::TrafficMirrorTarget", - "description": "Resource Type definition for AWS::EC2::TrafficMirrorTarget", + "description": "The description of the Traffic Mirror target.", "additionalProperties": false, "properties": { "NetworkLoadBalancerArn": { + "description": "The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "Description": { + "description": "The description of the Traffic Mirror target.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The description of the Traffic Mirror target.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "Id": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "NetworkInterfaceId": { + "description": "The network interface ID that is associated with the target.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The network interface ID that is associated with the target.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "GatewayLoadBalancerEndpointId": { + "description": "The ID of the Gateway Load Balancer endpoint.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The ID of the Gateway Load Balancer endpoint.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "Tags": { + "description": " The tags to assign to the Traffic Mirror target.", "type": "array", "uniqueItems": false, + "insertionOrder": false, "items": { "$ref": "#/definitions/Tag" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": " The tags to assign to the Traffic Mirror target.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "definitions": { @@ -53,6 +59,17 @@ "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "ec2:CreateTags", + "ec2:DeleteTags" + ] + }, "createOnlyProperties": [ "/properties/GatewayLoadBalancerEndpointId", "/properties/NetworkLoadBalancerArn", @@ -65,6 +82,40 @@ "readOnlyProperties": [ "/properties/Id" ], + "handlers": { + "create": { + "permissions": [ + "ec2:CreateTrafficMirrorTarget", + "ec2:CreateTags" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeTrafficMirrorTargets", + "ec2:DescribeTags" + ] + }, + "update": { + "permissions": [ + "ec2:DescribeTrafficMirrorTargets", + "ec2:CreateTags", + "ec2:DeleteTags", + "ec2:DescribeTags" + ] + }, + "delete": { + "permissions": [ + "ec2:DeleteTrafficMirrorTarget", + "ec2:DeleteTags" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeTrafficMirrorTargets", + "ec2:DescribeTags" + ] + } + }, "attributes": { "Id": { "type": "string", diff --git a/server/schema/resources/aws-ec2-transitgatewayconnectpeer.json b/server/schema/resources/aws-ec2-transitgatewayconnectpeer.json new file mode 100644 index 00000000..7ae843b9 --- /dev/null +++ b/server/schema/resources/aws-ec2-transitgatewayconnectpeer.json @@ -0,0 +1,227 @@ +{ + "typeName": "AWS::EC2::TransitGatewayConnectPeer", + "description": "Resource Type definition for AWS::EC2::TransitGatewayConnectPeer", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-myservice", + "replacementStrategy": "delete_then_create", + "properties": { + "TransitGatewayAttachmentId": { + "description": "The ID of the Connect attachment.", + "type": "string", + "markdownDescription": "The ID of the Connect attachment.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + }, + "TransitGatewayConnectPeerId": { + "description": "The ID of the Connect peer.", + "type": "string", + "markdownDescription": "The ID of the Connect peer.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "State": { + "description": "The state of the Connect peer.", + "type": "string", + "markdownDescription": "The state of the Connect peer.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "description": "The creation time.", + "type": "string", + "markdownDescription": "The creation time.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ConnectPeerConfiguration": { + "description": "The Connect peer details.", + "$ref": "#/definitions/TransitGatewayConnectPeerConfiguration", + "markdownDescription": "The Connect peer details.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: Replacement\nRead only property: Yes" + }, + "Tags": { + "description": "The tags for the Connect Peer.", + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "The tags for the Connect Peer.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "definitions": { + "Tag": { + "type": "object", + "properties": { + "Value": { + "description": "The value of the tag. Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.", + "type": "string", + "markdownDescription": "The value of the tag. Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Key": { + "description": "The key of the tag. Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws: .", + "type": "string", + "markdownDescription": "The key of the tag. Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws: .\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TransitGatewayConnectPeerConfiguration": { + "type": "object", + "properties": { + "TransitGatewayAddress": { + "description": "The Connect peer IP address on the transit gateway side of the tunnel.", + "type": "string", + "markdownDescription": "The Connect peer IP address on the transit gateway side of the tunnel.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "PeerAddress": { + "description": "The peer IP address (GRE outer IP address) on the appliance side of the Connect peer.", + "type": "string", + "markdownDescription": "The peer IP address (GRE outer IP address) on the appliance side of the Connect peer.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "InsideCidrBlocks": { + "description": "The range of interior BGP peer IP addresses.", + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The range of interior BGP peer IP addresses.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Protocol": { + "description": "The tunnel protocol.", + "type": "string", + "markdownDescription": "The tunnel protocol.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "BgpConfigurations": { + "description": "The BGP configuration details.", + "type": "array", + "items": { + "$ref": "#/definitions/TransitGatewayAttachmentBgpConfiguration" + }, + "markdownDescription": "The BGP configuration details.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "PeerAddress", + "InsideCidrBlocks" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\nRead only property: Yes" + }, + "TransitGatewayAttachmentBgpConfiguration": { + "type": "object", + "properties": { + "TransitGatewayAsn": { + "description": "The transit gateway Autonomous System Number (ASN).", + "type": "number", + "markdownDescription": "The transit gateway Autonomous System Number (ASN).\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "PeerAsn": { + "description": "The peer Autonomous System Number (ASN).", + "type": "number", + "markdownDescription": "The peer Autonomous System Number (ASN).\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "TransitGatewayAddress": { + "description": "The interior BGP peer IP address for the transit gateway.", + "type": "string", + "markdownDescription": "The interior BGP peer IP address for the transit gateway.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "PeerAddress": { + "description": "The interior BGP peer IP address for the appliance.", + "type": "string", + "markdownDescription": "The interior BGP peer IP address for the appliance.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "BgpStatus": { + "description": "The BGP status.", + "type": "string", + "markdownDescription": "The BGP status.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TransitGatewayAttachmentId", + "ConnectPeerConfiguration" + ], + "additionalProperties": false, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "ec2:CreateTags", + "ec2:DeleteTags" + ] + }, + "createOnlyProperties": [ + "/properties/TransitGatewayAttachmentId", + "/properties/ConnectPeerConfiguration", + "/properties/ConnectPeerConfiguration/PeerAddress", + "/properties/ConnectPeerConfiguration/InsideCidrBlocks", + "/properties/ConnectPeerConfiguration/TransitGatewayAddress", + "/properties/ConnectPeerConfiguration/BgpConfigurations/*/PeerAsn" + ], + "primaryIdentifier": [ + "/properties/TransitGatewayConnectPeerId" + ], + "readOnlyProperties": [ + "/properties/TransitGatewayConnectPeerId", + "/properties/ConnectPeerConfiguration/Protocol", + "/properties/ConnectPeerConfiguration/BgpConfigurations", + "/properties/ConnectPeerConfiguration/BgpConfigurations/*/TransitGatewayAddress", + "/properties/ConnectPeerConfiguration/BgpConfigurations/*/BgpStatus", + "/properties/ConnectPeerConfiguration/BgpConfigurations/*/PeerAddress", + "/properties/ConnectPeerConfiguration/BgpConfigurations/*/TransitGatewayAsn", + "/properties/State", + "/properties/CreationTime" + ], + "handlers": { + "create": { + "permissions": [ + "ec2:CreateTransitGatewayConnectPeer", + "ec2:DescribeTransitGatewayConnectPeers", + "ec2:CreateTags", + "ec2:DescribeTags" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeTransitGatewayConnectPeers", + "ec2:DescribeTags" + ] + }, + "update": { + "permissions": [ + "ec2:DescribeTransitGatewayConnectPeers", + "ec2:DeleteTags", + "ec2:CreateTags" + ] + }, + "delete": { + "permissions": [ + "ec2:DeleteTransitGatewayConnectPeer", + "ec2:DescribeTransitGatewayConnectPeers", + "ec2:DeleteTags", + "ec2:DescribeTags" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeTransitGatewayConnectPeers", + "ec2:DescribeTags" + ] + } + }, + "attributes": { + "TransitGatewayConnectPeerId": { + "description": "The ID of the Connect peer.", + "type": "string", + "markdownDescription": "The ID of the Connect peer.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "State": { + "description": "The state of the Connect peer.", + "type": "string", + "markdownDescription": "The state of the Connect peer.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "description": "The creation time.", + "type": "string", + "markdownDescription": "The creation time.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-ec2-volume.json b/server/schema/resources/aws-ec2-volume.json index 8f8ead23..ca9e4773 100644 --- a/server/schema/resources/aws-ec2-volume.json +++ b/server/schema/resources/aws-ec2-volume.json @@ -76,8 +76,8 @@ }, "VolumeInitializationRate": { "type": "integer", - "description": "", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "description": "Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as *volume initialization*. Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.\n This parameter is supported only for volumes created from snapshots. Omit this parameter if:\n + You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.\n If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.\n + You want to create a volume that is initialized at the default rate.\n \n For more information, see [Initialize Amazon EBS volumes](https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html) in the *Amazon EC2 User Guide*.\n Valid range: 100 - 300 MiB/s", + "markdownDescription": "Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as *volume initialization*. Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.\n This parameter is supported only for volumes created from snapshots. Omit this parameter if:\n + You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.\n If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.\n + You want to create a volume that is initialized at the default rate.\n \n For more information, see [Initialize Amazon EBS volumes](https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html) in the *Amazon EC2 User Guide*.\n Valid range: 100 - 300 MiB/s\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "definitions": { diff --git a/server/schema/resources/aws-ec2-vpc.json b/server/schema/resources/aws-ec2-vpc.json index b07a3087..1299e128 100644 --- a/server/schema/resources/aws-ec2-vpc.json +++ b/server/schema/resources/aws-ec2-vpc.json @@ -23,6 +23,7 @@ "permissions": [ "ec2:CreateVpc", "ec2:DescribeVpcs", + "ec2:DescribeVpcAttribute", "ec2:ModifyVpcAttribute", "ec2:CreateTags" ] @@ -31,6 +32,7 @@ "permissions": [ "ec2:CreateTags", "ec2:ModifyVpcAttribute", + "ec2:DescribeVpcAttribute", "ec2:DeleteTags", "ec2:ModifyVpcTenancy" ] diff --git a/server/schema/resources/aws-ec2-vpcendpoint.json b/server/schema/resources/aws-ec2-vpcendpoint.json index bd6c0466..db88dea4 100644 --- a/server/schema/resources/aws-ec2-vpcendpoint.json +++ b/server/schema/resources/aws-ec2-vpcendpoint.json @@ -17,7 +17,8 @@ "ec2:DescribeVpcEndpoints", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", - "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation" + "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation", + "ec2:DescribeVpcs" ] }, "create": { @@ -30,7 +31,8 @@ "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation", "ec2:CreateTags", "ec2:DeleteTags", - "vpce:AllowMultiRegion" + "vpce:AllowMultiRegion", + "ec2:DescribeVpcs" ], "timeoutInMinutes": 210 }, @@ -44,7 +46,8 @@ "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation", "ec2:CreateTags", "ec2:DeleteTags", - "vpce:AllowMultiRegion" + "vpce:AllowMultiRegion", + "ec2:DescribeVpcs" ], "timeoutInMinutes": 210 }, @@ -53,7 +56,8 @@ "ec2:DescribeVpcEndpoints", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", - "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation" + "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation", + "ec2:DescribeVpcs" ] }, "delete": { @@ -65,7 +69,8 @@ "vpc-lattice:DescribeServiceNetworkVpcEndpointAssociation", "ec2:CreateTags", "ec2:DeleteTags", - "vpce:AllowMultiRegion" + "vpce:AllowMultiRegion", + "ec2:DescribeVpcs" ], "timeoutInMinutes": 210 } @@ -77,7 +82,7 @@ "/properties/DnsEntries", "/properties/Id" ], - "description": "Specifies a VPC endpoint. A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS, an MKT Partner, or another AWS accounts in your organization. For more information, see the [User Guide](https://docs.aws.amazon.com/vpc/latest/privatelink/).\n An endpoint of type ``Interface`` establishes connections between the subnets in your VPC and an AWS-service, your own service, or a service hosted by another AWS-account. With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.\n An endpoint of type ``gateway`` serves as a target for a route in your route table for traffic destined for S3 or DDB. You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to S3, see [Why can't I connect to an S3 bucket using a gateway VPC endpoint?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint) \n An endpoint of type ``GatewayLoadBalancer`` provides private connectivity between your VPC and virtual appliances from a service provider.", + "description": "Specifies a VPC endpoint. A VPC endpoint provides a private connection between your VPC and an endpoint service. You can use an endpoint service provided by AWS, an MKT Partner, or another AWS accounts in your organization. For more information, see the [User Guide](https://docs.aws.amazon.com/vpc/latest/privatelink/).\n An endpoint of type ``Interface`` establishes connections between the subnets in your VPC and an AWS-service, your own service, or a service hosted by another AWS-account. With an interface VPC endpoint, you specify the subnets in which to create the endpoint and the security groups to associate with the endpoint network interfaces.\n An endpoint of type ``gateway`` serves as a target for a route in your route table for traffic destined for S3 or DDB. You can specify an endpoint policy for the endpoint, which controls access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. For more information about connectivity to S3, see [Why can't I connect to an S3 bucket using a gateway VPC endpoint?](https://docs.aws.amazon.com/premiumsupport/knowledge-center/connect-s3-vpc-endpoint)\n An endpoint of type ``GatewayLoadBalancer`` provides private connectivity between your VPC and virtual appliances from a service provider.", "createOnlyProperties": [ "/properties/ServiceName", "/properties/VpcEndpointType", @@ -162,9 +167,9 @@ "markdownDescription": "The supported IP address types.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ipv4 | ipv6 | dualstack | not-specified \nUpdate requires: No interruption\n" }, "ServiceRegion": { - "description": "", + "description": "Describes a Region.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "Describes a Region.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "CreationTimestamp": { "description": "", diff --git a/server/schema/resources/aws-ec2-vpnconnection.json b/server/schema/resources/aws-ec2-vpnconnection.json index a4fbd7d6..a048afd1 100644 --- a/server/schema/resources/aws-ec2-vpnconnection.json +++ b/server/schema/resources/aws-ec2-vpnconnection.json @@ -477,9 +477,9 @@ "markdownDescription": "The ID of the customer gateway at your end of the VPN connection.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "OutsideIpAddressType": { - "description": "The type of IPv4 address assigned to the outside interface of the customer gateway device.\n Valid values: ``PrivateIpv4`` | ``PublicIpv4``\n Default: ``PublicIpv4``", + "description": "The type of IP address assigned to the outside interface of the customer gateway device.\n Valid values: ``PrivateIpv4`` | ``PublicIpv4`` | ``Ipv6``\n Default: ``PublicIpv4``", "type": "string", - "markdownDescription": "The type of IPv4 address assigned to the outside interface of the customer gateway device.\n Valid values: ``PrivateIpv4`` | ``PublicIpv4``\n Default: ``PublicIpv4``\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The type of IP address assigned to the outside interface of the customer gateway device.\n Valid values: ``PrivateIpv4`` | ``PublicIpv4`` | ``Ipv6``\n Default: ``PublicIpv4``\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "StaticRoutesOnly": { "description": "Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.\n If you are creating a VPN connection for a device that does not support Border Gateway Protocol (BGP), you must specify ``true``.", diff --git a/server/schema/resources/aws-ecr-repository.json b/server/schema/resources/aws-ecr-repository.json index 47743bf5..80d9ece9 100644 --- a/server/schema/resources/aws-ecr-repository.json +++ b/server/schema/resources/aws-ecr-repository.json @@ -121,6 +121,43 @@ "type": "boolean", "description": "If true, deleting the repository force deletes the contents of the repository. Without a force delete, you can only delete empty repositories.", "markdownDescription": "If true, deleting the repository force deletes the contents of the repository. Without a force delete, you can only delete empty repositories.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilter": { + "type": "object", + "description": "Overrides the default image tag mutability setting of the repository for image tags that match the specified filters.", + "properties": { + "ImageTagMutabilityExclusionFilterType": { + "$ref": "#/definitions/ImageTagMutabilityExclusionFilterType", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilterValue": { + "$ref": "#/definitions/ImageTagMutabilityExclusionFilterValue", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ImageTagMutabilityExclusionFilterType", + "ImageTagMutabilityExclusionFilterValue" + ], + "additionalProperties": false, + "markdownDescription": "Overrides the default image tag mutability setting of the repository for image tags that match the specified filters.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilterType": { + "type": "string", + "description": "Specifies the type of filter to use for excluding image tags from the repository's mutability setting.", + "enum": [ + "WILDCARD" + ], + "markdownDescription": "Specifies the type of filter to use for excluding image tags from the repository's mutability setting.\n\n---\n\nRequired: No \nType: String \nAllowed Values: WILDCARD \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilterValue": { + "type": "string", + "description": "The value to use when filtering image tags.", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The value to use when filtering image tags.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^[0-9a-zA-Z._*-]{1,128} \nUpdate requires: No interruption\n" } }, "properties": { @@ -175,9 +212,22 @@ "description": "The tag mutability setting for the repository. If this parameter is omitted, the default setting of ``MUTABLE`` will be used which will allow image tags to be overwritten. If ``IMMUTABLE`` is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.", "enum": [ "MUTABLE", - "IMMUTABLE" + "IMMUTABLE", + "MUTABLE_WITH_EXCLUSION", + "IMMUTABLE_WITH_EXCLUSION" ], - "markdownDescription": "The tag mutability setting for the repository. If this parameter is omitted, the default setting of ``MUTABLE`` will be used which will allow image tags to be overwritten. If ``IMMUTABLE`` is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MUTABLE | IMMUTABLE \nUpdate requires: No interruption\n" + "markdownDescription": "The tag mutability setting for the repository. If this parameter is omitted, the default setting of ``MUTABLE`` will be used which will allow image tags to be overwritten. If ``IMMUTABLE`` is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MUTABLE | IMMUTABLE | MUTABLE_WITH_EXCLUSION | IMMUTABLE_WITH_EXCLUSION \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilters": { + "type": "array", + "description": "The image tag mutability exclusion filters associated with the repository. These filters specify which image tags can override the repository's default image tag mutability setting.", + "minItems": 1, + "maxItems": 5, + "insertionOrder": true, + "items": { + "$ref": "#/definitions/ImageTagMutabilityExclusionFilter" + }, + "markdownDescription": "The image tag mutability exclusion filters associated with the repository. These filters specify which image tags can override the repository's default image tag mutability setting.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "ImageScanningConfiguration": { "$ref": "#/definitions/ImageScanningConfiguration", diff --git a/server/schema/resources/aws-ecr-repositorycreationtemplate.json b/server/schema/resources/aws-ecr-repositorycreationtemplate.json index d6d44e13..f13529b0 100644 --- a/server/schema/resources/aws-ecr-repositorycreationtemplate.json +++ b/server/schema/resources/aws-ecr-repositorycreationtemplate.json @@ -75,6 +75,33 @@ "PULL_THROUGH_CACHE" ], "markdownDescription": "Enumerable Strings representing the repository creation scenarios that the template will apply towards.\n\n---\n\nRequired: No \nType: String \nAllowed Values: REPLICATION | PULL_THROUGH_CACHE \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilter": { + "type": "object", + "description": "Overrides the default image tag mutability setting of the repository for image tags that match the specified filters.", + "properties": { + "ImageTagMutabilityExclusionFilterType": { + "type": "string", + "description": "", + "enum": [ + "WILDCARD" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: WILDCARD \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilterValue": { + "type": "string", + "description": "", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^[0-9a-zA-Z._*-]{1,128} \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ImageTagMutabilityExclusionFilterType", + "ImageTagMutabilityExclusionFilterValue" + ], + "additionalProperties": false, + "markdownDescription": "Overrides the default image tag mutability setting of the repository for image tags that match the specified filters.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { @@ -94,12 +121,25 @@ }, "ImageTagMutability": { "type": "string", - "description": "The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.", + "description": "The tag mutability setting for the repository. If this parameter is omitted, the default setting of ``MUTABLE`` will be used which will allow image tags to be overwritten. If ``IMMUTABLE`` is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.", "enum": [ "MUTABLE", - "IMMUTABLE" + "IMMUTABLE", + "IMMUTABLE_WITH_EXCLUSION", + "MUTABLE_WITH_EXCLUSION" ], - "markdownDescription": "The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MUTABLE | IMMUTABLE \nUpdate requires: No interruption\n" + "markdownDescription": "The tag mutability setting for the repository. If this parameter is omitted, the default setting of ``MUTABLE`` will be used which will allow image tags to be overwritten. If ``IMMUTABLE`` is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MUTABLE | IMMUTABLE | IMMUTABLE_WITH_EXCLUSION | MUTABLE_WITH_EXCLUSION \nUpdate requires: No interruption\n" + }, + "ImageTagMutabilityExclusionFilters": { + "type": "array", + "description": "Defines the image tag mutability exclusion filters to apply when creating repositories from this template. These filters specify which image tags can override the repository's default image tag mutability setting.", + "minItems": 1, + "maxItems": 5, + "insertionOrder": true, + "items": { + "$ref": "#/definitions/ImageTagMutabilityExclusionFilter" + }, + "markdownDescription": "Defines the image tag mutability exclusion filters to apply when creating repositories from this template. These filters specify which image tags can override the repository's default image tag mutability setting.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "RepositoryPolicy": { "type": "string", diff --git a/server/schema/resources/aws-ecs-cluster.json b/server/schema/resources/aws-ecs-cluster.json index 5c93003a..3640657b 100644 --- a/server/schema/resources/aws-ecs-cluster.json +++ b/server/schema/resources/aws-ecs-cluster.json @@ -80,10 +80,6 @@ "type": "object", "properties": { "CapacityProvider": { - "relationshipRef": { - "typeName": "AWS::ECS::CapacityProvider", - "propertyPath": "/properties/Name" - }, "description": "The short name of the capacity provider.", "type": "string", "markdownDescription": "The short name of the capacity provider.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -117,10 +113,6 @@ "markdownDescription": "Determines whether to use encryption on the CloudWatch logs. If not specified, encryption will be off.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "CloudWatchLogGroupName": { - "relationshipRef": { - "typeName": "AWS::Logs::LogGroup", - "propertyPath": "/properties/LogGroupName" - }, "description": "The name of the CloudWatch log group to send logs to.\n The CloudWatch log group must already be created.", "type": "string", "markdownDescription": "The name of the CloudWatch log group to send logs to.\n The CloudWatch log group must already be created.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -234,10 +226,6 @@ "markdownDescription": "The log setting to use for redirecting logs for your execute command results. The following log settings are available.\n + ``NONE``: The execute command session is not logged.\n + ``DEFAULT``: The ``awslogs`` configuration in the task definition is used. If no logging parameter is specified, it defaults to this value. If no ``awslogs`` log driver is configured in the task definition, the output won't be logged.\n + ``OVERRIDE``: Specify the logging details as a part of ``logConfiguration``. If the ``OVERRIDE`` logging option is specified, the ``logConfiguration`` is required.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "KmsKeyId": { - "relationshipRef": { - "typeName": "AWS::KMS::Key", - "propertyPath": "/properties/Arn" - }, "description": "Specify an KMSlong key ID to encrypt the data between the local client and the container.", "type": "string", "markdownDescription": "Specify an KMSlong key ID to encrypt the data between the local client and the container.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" diff --git a/server/schema/resources/aws-ecs-service.json b/server/schema/resources/aws-ecs-service.json index e83f2118..a10ab022 100644 --- a/server/schema/resources/aws-ecs-service.json +++ b/server/schema/resources/aws-ecs-service.json @@ -11,26 +11,6 @@ "tagProperty": "/properties/Tags", "cloudFormationSystemTags": false }, - "typeName": "AWS::ECS::Service", - "readOnlyProperties": [ - "/properties/ServiceArn", - "/properties/Name" - ], - "description": "The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.\n The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.\n Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.", - "createOnlyProperties": [ - "/properties/Cluster", - "/properties/LaunchType", - "/properties/Role", - "/properties/SchedulingStrategy", - "/properties/ServiceName" - ], - "primaryIdentifier": [ - "/properties/ServiceArn", - "/properties/Cluster" - ], - "conditionalCreateOnlyProperties": [ - "/properties/DeploymentController" - ], "propertyTransform": { "/properties/TaskDefinition": "TaskDefinition $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,3}[-]{0,1}[a-z]{0,3}:ecs:[a-z0-9-]+:[0-9]{12}:task-definition/\", $contains(TaskDefinition,\":\")?TaskDefinition:$join([TaskDefinition, \":[0-9]+\"])])", "/properties/Role": "Role $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,3}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/{1}\", Role])" @@ -50,7 +30,7 @@ "iam:PassRole", "ecs:TagResource" ], - "timeoutInMinutes": 180 + "timeoutInMinutes": 2160 }, "update": { "permissions": [ @@ -63,7 +43,7 @@ "ecs:UntagResource", "ecs:UpdateService" ], - "timeoutInMinutes": 180 + "timeoutInMinutes": 2160 }, "list": { "permissions": [ @@ -80,11 +60,28 @@ "timeoutInMinutes": 30 } }, + "typeName": "AWS::ECS::Service", + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "description": "The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.\n The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.\n Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service. \n On June 12, 2025, Amazon ECS launched support for updating capacity provider configuration for ECS services. With this launch, ECS also aligned the CFN update behavior for ``CapacityProviderStrategy`` parameter with the standard practice. For more information, see [adds support for updating capacity provider configuration for ECS services](https://docs.aws.amazon.com/about-aws/whats-new/2025/05/amazon-ecs-capacity-provider-configuration-ecs/). Previously ECS ignored the ``CapacityProviderStrategy`` property if it was set to an empty list for example, ``[]`` in CFN, because updating capacity provider configuration was not supported. Now, with support for capacity provider updates, customers can remove capacity providers from a service by passing an empty list. When you specify an empty list (``[]``) for the ``CapacityProviderStrategy`` property in your CFN template, ECS will remove any capacity providers associated with the service, as follows:\n + For services created with a capacity provider strategy after the launch:\n + If there's a cluster default strategy set, the service will revert to using that default strategy.\n + If no cluster default strategy exists, you will receive the following error:\n No launch type to fall back to for empty capacity provider strategy. Your service was not created with a launch type.\n \n + For services created with a capacity provider strategy prior to the launch:\n + If ``CapacityProviderStrategy`` had ``FARGATE_SPOT`` or ``FARGATE`` capacity providers, the launch type will be updated to ``FARGATE`` and the capacity provider will be removed.\n + If the strategy included Auto Scaling group capacity providers, the service will revert to EC2 launch type, and the Auto Scaling group capacity providers will not be used.\n \n \n Recommended Actions\n If you are currently using ``CapacityProviderStrategy: []`` in your CFN templates, you should take one of the following actions:\n + If you do not intend to update the Capacity Provider Strategy:\n + Remove the ``CapacityProviderStrategy`` property entirely from your CFN template\n + Alternatively, use ``!Ref ::NoValue`` for the ``CapacityProviderStrategy`` property in your template\n \n + If you intend to maintain or update the Capacity Provider Strategy, specify the actual Capacity Provider Strategy for the service in your CFN template.\n \n If your CFN template had an empty list ([]) for ``CapacityProviderStrategy`` prior to the aforementioned launch on June 12, and you are using the same template with ``CapacityProviderStrategy: []``, you might encounter the following error:\n Invalid request provided: When switching from launch type to capacity provider strategy on an existing service, or making a change to a capacity provider strategy on a service that is already using one, you must force a new deployment. (Service: Ecs, Status Code: 400, Request ID: xxx) (SDK Attempt Count: 1)\" (RequestToken: xxx HandlerErrorCode: InvalidRequest) \n Note that CFN automatically initiates a new deployment when it detects a parameter change, but customers cannot choose to force a deployment through CFN. This is an invalid input scenario that requires one of the remediation actions listed above.\n If you are experiencing active production issues related to this change, contact AWS Support or your Technical Account Manager.", "writeOnlyProperties": [ "/properties/ServiceConnectConfiguration", "/properties/VolumeConfigurations" ], + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], "additionalProperties": false, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], "definitions": { "TimeoutConfiguration": { "description": "An object that represents the timeout configurations for Service Connect.\n If ``idleTimeout`` is set to a time that is less than ``perRequestTimeout``, the connection will close when the ``idleTimeout`` is reached and not the ``perRequestTimeout``.", @@ -192,10 +189,10 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "description": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS is changing the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``", + "description": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the non-blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``", "additionalProperties": false, "type": "object", - "markdownDescription": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS is changing the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the non-blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "LogDriver": { "description": "The log driver to use for the container.\n For tasks on FARGATElong, the supported log drivers are ``awslogs``, ``splunk``, and ``awsfirelens``.\n For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs``, ``fluentd``, ``gelf``, ``json-file``, ``journald``, ``syslog``, ``splunk``, and ``awsfirelens``.\n For more information about using the ``awslogs`` log driver, see [Send Amazon ECS logs to CloudWatch](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html) in the *Amazon Elastic Container Service Developer Guide*.\n For more information about using the ``awsfirelens`` log driver, see [Send Amazon ECS logs to an service or Partner](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html).\n If you have a custom driver that isn't listed, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, we don't currently provide support for running modified copies of this software.", @@ -205,6 +202,43 @@ }, "markdownDescription": "The log configuration for the container. This parameter maps to ``LogConfig`` in the docker container create command and the ``--log-driver`` option to docker run.\n By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver configuration in the container definition.\n Understand the following when specifying a log configuration for your containers.\n + Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon. Additional log drivers may be available in future releases of the Amazon ECS container agent.\n For tasks on FARGATElong, the supported log drivers are ``awslogs``, ``splunk``, and ``awsfirelens``.\n For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs``, ``fluentd``, ``gelf``, ``json-file``, ``journald``,``syslog``, ``splunk``, and ``awsfirelens``.\n + This parameter requires version 1.18 of the Docker Remote API or greater on your container instance.\n + For tasks that are hosted on Amazon EC2 instances, the Amazon ECS container agent must register the available logging drivers with the ``ECS_AVAILABLE_LOGGING_DRIVERS`` environment variable before containers placed on that instance can use these log configuration options. For more information, see [Amazon ECS container agent configuration](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html) in the *Amazon Elastic Container Service Developer Guide*.\n + For tasks that are on FARGATElong, because you don't have access to the underlying infrastructure your tasks are hosted on, any additional software needed must be installed outside of the task. For example, the Fluentd output aggregators or a remote host running Logstash to send Gelf logs to.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ServiceConnectTestTrafficRules": { + "description": "The test traffic routing configuration for Amazon ECS blue/green deployments. This configuration allows you to define rules for routing specific traffic to the new service revision during the deployment process, allowing for safe testing before full production traffic shift.\n For more information, see [Service Connect for Amazon ECS blue/green deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect-blue-green.html) in the *Amazon Elastic Container Service Developer Guide*.", + "additionalProperties": false, + "type": "object", + "properties": { + "Header": { + "description": "The HTTP header-based routing rules that determine which requests should be routed to the new service version during blue/green deployment testing. These rules provide fine-grained control over test traffic routing based on request headers.", + "$ref": "#/definitions/ServiceConnectTestTrafficRulesHeader", + "markdownDescription": "The HTTP header-based routing rules that determine which requests should be routed to the new service version during blue/green deployment testing. These rules provide fine-grained control over test traffic routing based on request headers.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Header" + ], + "markdownDescription": "The test traffic routing configuration for Amazon ECS blue/green deployments. This configuration allows you to define rules for routing specific traffic to the new service revision during the deployment process, allowing for safe testing before full production traffic shift.\n For more information, see [Service Connect for Amazon ECS blue/green deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect-blue-green.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ServiceConnectTestTrafficRulesHeader": { + "description": "", + "additionalProperties": false, + "type": "object", + "properties": { + "Value": { + "description": "", + "$ref": "#/definitions/ServiceConnectTestTrafficRulesHeaderValue", + "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Name": { + "description": "", + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Name" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "ServiceConnectClientAlias": { "description": "Each alias (\"endpoint\") is a fully-qualified name and port number that other tasks (\"clients\") can use to connect to this service.\n Each name and port mapping must be unique within the namespace.\n Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see [Service Connect](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html) in the *Amazon Elastic Container Service Developer Guide*.", "additionalProperties": false, @@ -215,6 +249,11 @@ "type": "string", "markdownDescription": "The ``dnsName`` is the name that you use in the applications of client tasks to connect to this service. The name must be a valid DNS name but doesn't need to be fully-qualified. The name can include up to 127 characters. The name can include lowercase letters, numbers, underscores (_), hyphens (-), and periods (.). The name can't start with a hyphen.\n If this parameter isn't specified, the default value of ``discoveryName.namespace`` is used. If the ``discoveryName`` isn't specified, the port mapping name from the task definition is used in ``portName.namespace``.\n To avoid changing your applications in client Amazon ECS services, set this to the same name that the client application uses by default. For example, a few common names are ``database``, ``db``, or the lowercase name of a database, such as ``mysql`` or ``redis``. For more information, see [Service Connect](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "TestTrafficRules": { + "description": "The configuration for test traffic routing rules used during blue/green deployments with Amazon ECS Service Connect. This allows you to route a portion of traffic to the new service revision of your service for testing before shifting all production traffic.", + "$ref": "#/definitions/ServiceConnectTestTrafficRules", + "markdownDescription": "The configuration for test traffic routing rules used during blue/green deployments with Amazon ECS Service Connect. This allows you to route a portion of traffic to the new service revision of your service for testing before shifting all production traffic.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, "Port": { "description": "The listening port number for the Service Connect proxy. This port is available inside of all of the tasks within the same namespace.\n To avoid changing your applications in client Amazon ECS services, set this to the same port that the client application uses by default. For more information, see [Service Connect](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html) in the *Amazon Elastic Container Service Developer Guide*.", "type": "integer", @@ -260,6 +299,22 @@ }, "markdownDescription": "The network configuration for a task or service.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ServiceConnectTestTrafficRulesHeaderValue": { + "description": "", + "additionalProperties": false, + "type": "object", + "properties": { + "Exact": { + "description": "", + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Exact" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DeploymentCircuitBreaker": { "description": "The deployment circuit breaker can only be used for services using the rolling update (``ECS``) deployment type.\n The *deployment circuit breaker* determines whether a service deployment will fail if the service can't reach a steady state. If it is turned on, a service deployment will transition to a failed state and stop launching new tasks. You can also configure Amazon ECS to roll back your service to the last completed deployment after a failure. For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide*.\n For more information about API failure reasons, see [API failure reasons](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/api_failures_messages.html) in the *Amazon Elastic Container Service Developer Guide*.", "additionalProperties": false, @@ -315,6 +370,37 @@ }, "markdownDescription": "The tag specifications of an Amazon EBS volume.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "AdvancedConfiguration": { + "description": "The advanced settings for a load balancer used in blue/green deployments. Specify the alternate target group, listener rules, and IAM role required for traffic shifting during blue/green deployments. For more information, see [Required resources for Amazon ECS blue/green deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/blue-green-deployment-implementation.html) in the *Amazon Elastic Container Service Developer Guide*.", + "additionalProperties": false, + "type": "object", + "properties": { + "TestListenerRule": { + "description": "The Amazon Resource Name (ARN) that identifies ) that identifies the test listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing test traffic.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) that identifies ) that identifies the test listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing test traffic.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "AlternateTargetGroupArn": { + "description": "The Amazon Resource Name (ARN) of the alternate target group for Amazon ECS blue/green deployments.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the alternate target group for Amazon ECS blue/green deployments.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "ProductionListenerRule": { + "description": "The Amazon Resource Name (ARN) that that identifies the production listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing production traffic.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) that that identifies the production listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing production traffic.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RoleArn": { + "description": "The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call the Elastic Load Balancing APIs for you.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call the Elastic Load Balancing APIs for you.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "AlternateTargetGroupArn" + ], + "markdownDescription": "The advanced settings for a load balancer used in blue/green deployments. Specify the alternate target group, listener rules, and IAM role required for traffic shifting during blue/green deployments. For more information, see [Required resources for Amazon ECS blue/green deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/blue-green-deployment-implementation.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "CapacityProviderStrategyItem": { "description": "The details of a capacity provider strategy. A capacity provider strategy can be set when using the ``RunTask`` or ``CreateService`` APIs or as the default capacity provider strategy for a cluster with the ``CreateCluster`` API.\n Only capacity providers that are already associated with a cluster and have an ``ACTIVE`` or ``UPDATING`` status can be used in a capacity provider strategy. The ``PutClusterCapacityProviders`` API is used to associate a capacity provider with a cluster.\n If specifying a capacity provider that uses an Auto Scaling group, the capacity provider must already be created. New Auto Scaling group capacity providers can be created with the ``CreateCapacityProvider`` API operation.\n To use an FARGATElong capacity provider, specify either the ``FARGATE`` or ``FARGATE_SPOT`` capacity providers. The FARGATElong capacity providers are available to all accounts and only need to be associated with a cluster to be used in a capacity provider strategy.", "additionalProperties": false, @@ -339,7 +425,7 @@ "markdownDescription": "The details of a capacity provider strategy. A capacity provider strategy can be set when using the ``RunTask`` or ``CreateService`` APIs or as the default capacity provider strategy for a cluster with the ``CreateCluster`` API.\n Only capacity providers that are already associated with a cluster and have an ``ACTIVE`` or ``UPDATING`` status can be used in a capacity provider strategy. The ``PutClusterCapacityProviders`` API is used to associate a capacity provider with a cluster.\n If specifying a capacity provider that uses an Auto Scaling group, the capacity provider must already be created. New Auto Scaling group capacity providers can be created with the ``CreateCapacityProvider`` API operation.\n To use an FARGATElong capacity provider, specify either the ``FARGATE`` or ``FARGATE_SPOT`` capacity providers. The FARGATElong capacity providers are available to all accounts and only need to be associated with a cluster to be used in a capacity provider strategy.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "DeploymentAlarms": { - "description": "One of the methods which provide a way for you to quickly identify when a deployment has failed, and then to optionally roll back the failure to the last working deployment.\n When the alarms are generated, Amazon ECS sets the service deployment to failed. Set the rollback parameter to have Amazon ECS to roll back your service to the last completed deployment after a failure.\n You can only use the ``DeploymentAlarms`` method to detect failures when the ``DeploymentController`` is set to ``ECS`` (rolling update).\n For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide*.", + "description": "One of the methods which provide a way for you to quickly identify when a deployment has failed, and then to optionally roll back the failure to the last working deployment.\n When the alarms are generated, Amazon ECS sets the service deployment to failed. Set the rollback parameter to have Amazon ECS to roll back your service to the last completed deployment after a failure.\n You can only use the ``DeploymentAlarms`` method to detect failures when the ``DeploymentController`` is set to ``ECS``.\n For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide*.", "additionalProperties": false, "type": "object", "properties": { @@ -368,7 +454,7 @@ "Rollback", "Enable" ], - "markdownDescription": "One of the methods which provide a way for you to quickly identify when a deployment has failed, and then to optionally roll back the failure to the last working deployment.\n When the alarms are generated, Amazon ECS sets the service deployment to failed. Set the rollback parameter to have Amazon ECS to roll back your service to the last completed deployment after a failure.\n You can only use the ``DeploymentAlarms`` method to detect failures when the ``DeploymentController`` is set to ``ECS`` (rolling update).\n For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "One of the methods which provide a way for you to quickly identify when a deployment has failed, and then to optionally roll back the failure to the last working deployment.\n When the alarms are generated, Amazon ECS sets the service deployment to failed. Set the rollback parameter to have Amazon ECS to roll back your service to the last completed deployment after a failure.\n You can only use the ``DeploymentAlarms`` method to detect failures when the ``DeploymentController`` is set to ``ECS``.\n For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "LoadBalancer": { "description": "The ``LoadBalancer`` property specifies details on a load balancer that is used with a service.\n If the service is using the ``CODE_DEPLOY`` deployment controller, the service is required to use either an Application Load Balancer or Network Load Balancer. When you are creating an ACDlong deployment group, you specify two target groups (referred to as a ``targetGroupPair``). Each target group binds to a separate task set in the deployment. The load balancer can also have up to two listeners, a required listener for production traffic and an optional listener that allows you to test new revisions of the service before routing production traffic to it.\n Services with tasks that use the ``awsvpc`` network mode (for example, those with the Fargate launch type) only support Application Load Balancers and Network Load Balancers. Classic Load Balancers are not supported. Also, when you create any target groups for these services, you must choose ``ip`` as the target type, not ``instance``. Tasks that use the ``awsvpc`` network mode are associated with an elastic network interface, not an Amazon EC2 instance.", @@ -394,6 +480,11 @@ "description": "The port on the container to associate with the load balancer. This port must correspond to a ``containerPort`` in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on the ``hostPort`` of the port mapping.", "type": "integer", "markdownDescription": "The port on the container to associate with the load balancer. This port must correspond to a ``containerPort`` in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on the ``hostPort`` of the port mapping.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "AdvancedConfiguration": { + "description": "The advanced settings for the load balancer used in blue/green deployments. Specify the alternate target group, listener rules, and IAM role required for traffic shifting during blue/green deployments.", + "$ref": "#/definitions/AdvancedConfiguration", + "markdownDescription": "The advanced settings for the load balancer used in blue/green deployments. Specify the alternate target group, listener rules, and IAM role required for traffic shifting during blue/green deployments.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, "markdownDescription": "The ``LoadBalancer`` property specifies details on a load balancer that is used with a service.\n If the service is using the ``CODE_DEPLOY`` deployment controller, the service is required to use either an Application Load Balancer or Network Load Balancer. When you are creating an ACDlong deployment group, you specify two target groups (referred to as a ``targetGroupPair``). Each target group binds to a separate task set in the deployment. The load balancer can also have up to two listeners, a required listener for production traffic and an optional listener that allows you to test new revisions of the service before routing production traffic to it.\n Services with tasks that use the ``awsvpc`` network mode (for example, those with the Fargate launch type) only support Application Load Balancers and Network Load Balancers. Classic Load Balancers are not supported. Also, when you create any target groups for these services, you must choose ``ip`` as the target type, not ``instance``. Tasks that use the ``awsvpc`` network mode are associated with an elastic network interface, not an Amazon EC2 instance.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -458,20 +549,62 @@ ], "markdownDescription": "The key that encrypts and decrypts your resources for Service Connect TLS.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "DeploymentLifecycleHook": { + "description": "A deployment lifecycle hook runs custom logic at specific stages of the deployment process. Currently, you can use Lambda functions as hook targets.\n For more information, see [Lifecycle hooks for Amazon ECS service deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-lifecycle-hooks.html) in the *Amazon Elastic Container Service Developer Guide*.", + "additionalProperties": false, + "type": "object", + "properties": { + "LifecycleStages": { + "minItems": 1, + "description": "The lifecycle stages at which to run the hook. Choose from these valid values:\n + RECONCILE_SERVICE\n The reconciliation stage that only happens when you start a new service deployment with more than 1 service revision in an ACTIVE state.\n You can use a lifecycle hook for this stage.\n + PRE_SCALE_UP\n The green service revision has not started. The blue service revision is handling 100% of the production traffic. There is no test traffic.\n You can use a lifecycle hook for this stage.\n + POST_SCALE_UP\n The green service revision has started. The blue service revision is handling 100% of the production traffic. There is no test traffic.\n You can use a lifecycle hook for this stage.\n + TEST_TRAFFIC_SHIFT\n The blue and green service revisions are running. The blue service revision handles 100% of the production traffic. The green service revision is migrating from 0% to 100% of test traffic.\n You can use a lifecycle hook for this stage.\n + POST_TEST_TRAFFIC_SHIFT\n The test traffic shift is complete. The green service revision handles 100% of the test traffic.\n You can use a lifecycle hook for this stage.\n + PRODUCTION_TRAFFIC_SHIFT\n Production traffic is shifting to the green service revision. The green service revision is migrating from 0% to 100% of production traffic.\n You can use a lifecycle hook for this stage.\n + POST_PRODUCTION_TRAFFIC_SHIFT\n The production traffic shift is complete.\n You can use a lifecycle hook for this stage.\n \n You must provide this parameter when configuring a deployment lifecycle hook.", + "type": "array", + "items": { + "type": "string", + "enum": [ + "RECONCILE_SERVICE", + "PRE_SCALE_UP", + "POST_SCALE_UP", + "TEST_TRAFFIC_SHIFT", + "POST_TEST_TRAFFIC_SHIFT", + "PRODUCTION_TRAFFIC_SHIFT", + "POST_PRODUCTION_TRAFFIC_SHIFT" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: RECONCILE_SERVICE | PRE_SCALE_UP | POST_SCALE_UP | TEST_TRAFFIC_SHIFT | POST_TEST_TRAFFIC_SHIFT | PRODUCTION_TRAFFIC_SHIFT | POST_PRODUCTION_TRAFFIC_SHIFT \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The lifecycle stages at which to run the hook. Choose from these valid values:\n + RECONCILE_SERVICE\n The reconciliation stage that only happens when you start a new service deployment with more than 1 service revision in an ACTIVE state.\n You can use a lifecycle hook for this stage.\n + PRE_SCALE_UP\n The green service revision has not started. The blue service revision is handling 100% of the production traffic. There is no test traffic.\n You can use a lifecycle hook for this stage.\n + POST_SCALE_UP\n The green service revision has started. The blue service revision is handling 100% of the production traffic. There is no test traffic.\n You can use a lifecycle hook for this stage.\n + TEST_TRAFFIC_SHIFT\n The blue and green service revisions are running. The blue service revision handles 100% of the production traffic. The green service revision is migrating from 0% to 100% of test traffic.\n You can use a lifecycle hook for this stage.\n + POST_TEST_TRAFFIC_SHIFT\n The test traffic shift is complete. The green service revision handles 100% of the test traffic.\n You can use a lifecycle hook for this stage.\n + PRODUCTION_TRAFFIC_SHIFT\n Production traffic is shifting to the green service revision. The green service revision is migrating from 0% to 100% of production traffic.\n You can use a lifecycle hook for this stage.\n + POST_PRODUCTION_TRAFFIC_SHIFT\n The production traffic shift is complete.\n You can use a lifecycle hook for this stage.\n \n You must provide this parameter when configuring a deployment lifecycle hook.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "HookTargetArn": { + "description": "The Amazon Resource Name (ARN) of the hook target. Currently, only Lambda function ARNs are supported.\n You must provide this parameter when configuring a deployment lifecycle hook.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the hook target. Currently, only Lambda function ARNs are supported.\n You must provide this parameter when configuring a deployment lifecycle hook.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "RoleArn": { + "description": "The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call Lambda functions on your behalf.\n For more information, see [Permissions required for Lambda functions in Amazon ECS blue/green deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/blue-green-permissions.html) in the *Amazon Elastic Container Service Developer Guide*.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call Lambda functions on your behalf.\n For more information, see [Permissions required for Lambda functions in Amazon ECS blue/green deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/blue-green-permissions.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "HookTargetArn", + "RoleArn", + "LifecycleStages" + ], + "markdownDescription": "A deployment lifecycle hook runs custom logic at specific stages of the deployment process. Currently, you can use Lambda functions as hook targets.\n For more information, see [Lifecycle hooks for Amazon ECS service deployments](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-lifecycle-hooks.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DeploymentController": { "description": "The deployment controller to use for the service.", "additionalProperties": false, "type": "object", "properties": { "Type": { - "description": "The deployment controller type to use. There are three deployment controller types available:\n + ECS The rolling update (ECS) deployment type involves replacing the current running version of the container with the latest version. The number of containers Amazon ECS adds or removes from the service during a rolling update is controlled by adjusting the minimum and maximum number of healthy tasks allowed during a service deployment, as specified in the DeploymentConfiguration. + CODE_DEPLOY The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment model powered by , which allows you to verify a new deployment of a service before sending production traffic to it. + EXTERNAL The external (EXTERNAL) deployment type enables you to use any third-party deployment controller for full control over the deployment process for an Amazon ECS service.", + "description": "The deployment controller type to use.\n The deployment controller is the mechanism that determines how tasks are deployed for your service. The valid options are:\n + ECS\n When you create a service which uses the ``ECS`` deployment controller, you can choose between the following deployment strategies:\n + ``ROLLING``: When you create a service which uses the *rolling update* (``ROLLING``) deployment strategy, the ECS service scheduler replaces the currently running tasks with new tasks. The number of tasks that ECS adds or removes from the service during a rolling update is controlled by the service deployment configuration. \n Rolling update deployments are best suited for the following scenarios:\n + Gradual service updates: You need to update your service incrementally without taking the entire service offline at once.\n + Limited resource requirements: You want to avoid the additional resource costs of running two complete environments simultaneously (as required by blue/green deployments).\n + Acceptable deployment time: Your application can tolerate a longer deployment process, as rolling updates replace tasks one by one.\n + No need for instant roll back: Your service can tolerate a rollback process that takes minutes rather than seconds.\n + Simple deployment process: You prefer a straightforward deployment approach without the complexity of managing multiple environments, target groups, and listeners.\n + No load balancer requirement: Your service doesn't use or require a load balancer, ALB, NLB, or Service Connect (which are required for blue/green deployments).\n + Stateful applications: Your application maintains state that makes it difficult to run two parallel environments.\n + Cost sensitivity: You want to minimize deployment costs by not running duplicate environments during deployment.\n \n Rolling updates are the default deployment strategy for services and provide a balance between deployment safety and resource efficiency for many common application scenarios.\n + ``BLUE_GREEN``: A *blue/green* deployment strategy (``BLUE_GREEN``) is a release methodology that reduces downtime and risk by running two identical production environments called blue and green. With ECS blue/green deployments, you can validate new service revisions before directing production traffic to them. This approach provides a safer way to deploy changes with the ability to quickly roll back if needed.\n ECS blue/green deployments are best suited for the following scenarios:\n + Service validation: When you need to validate new service revisions before directing production traffic to them\n + Zero downtime: When your service requires zero-downtime deployments\n + Instant roll back: When you need the ability to quickly roll back if issues are detected\n + Load balancer requirement: When your service uses ALB, NLB, or Service Connect\n \n \n + External\n Use a third-party deployment controller.\n + Blue/green deployment (powered by ACD)\n ACD installs an updated version of the application as a new replacement task set and reroutes production traffic from the original application task set to the replacement task set. The original task set is terminated after a successful deployment. Use this deployment controller to verify a new deployment of a service before sending production traffic to it.\n \n When updating the deployment controller for a service, consider the following depending on the type of migration you're performing.\n + If you have a template that contains the ``EXTERNAL`` deployment controller information as well as ``TaskSet`` and ``PrimaryTaskSet`` resources, and you remove the task set resources from the template when updating from ``EXTERNAL`` to ``ECS``, the ``DescribeTaskSet`` and ``DeleteTaskSet`` API calls will return a 400 error after the deployment controller is updated to ``ECS``. This results in a delete failure on the task set resources, even though the stack transitions to ``UPDATE_COMPLETE`` status. For more information, see [Resource removed from stack but not deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-resource-removed-not-deleted) in the CFNlong User Guide. To fix this issue, delete the task sets directly using the ECS``DeleteTaskSet`` API. For more information about how to delete a task set, see [DeleteTaskSet](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeleteTaskSet.html) in the ECSlong API Reference.\n + If you're migrating from ``CODE_DEPLOY`` to ``ECS`` with a new task definition and CFN performs a rollback operation, the ECS``UpdateService`` request fails with the following error:\n Resource handler returned message: \"Invalid request provided: Unable to update task definition on services with a CODE_DEPLOY deployment controller. \n + After a successful migration from ``ECS`` to ``EXTERNAL`` deployment controller, you need to manually remove the ``ACTIVE`` task set, because ECS no longer manages the deployment. For information about how to delete a task set, see [DeleteTaskSet](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeleteTaskSet.html) in the ECSlong API Reference.", "type": "string", "enum": [ "CODE_DEPLOY", "ECS", "EXTERNAL" ], - "markdownDescription": "The deployment controller type to use. There are three deployment controller types available:\n + ECS The rolling update (ECS) deployment type involves replacing the current running version of the container with the latest version. The number of containers Amazon ECS adds or removes from the service during a rolling update is controlled by adjusting the minimum and maximum number of healthy tasks allowed during a service deployment, as specified in the DeploymentConfiguration. + CODE_DEPLOY The blue/green (CODE_DEPLOY) deployment type uses the blue/green deployment model powered by , which allows you to verify a new deployment of a service before sending production traffic to it. + EXTERNAL The external (EXTERNAL) deployment type enables you to use any third-party deployment controller for full control over the deployment process for an Amazon ECS service.\n\n---\n\nRequired: No \nType: String \nAllowed Values: CODE_DEPLOY | ECS | EXTERNAL \nUpdate requires: No interruption\n" + "markdownDescription": "The deployment controller type to use.\n The deployment controller is the mechanism that determines how tasks are deployed for your service. The valid options are:\n + ECS\n When you create a service which uses the ``ECS`` deployment controller, you can choose between the following deployment strategies:\n + ``ROLLING``: When you create a service which uses the *rolling update* (``ROLLING``) deployment strategy, the ECS service scheduler replaces the currently running tasks with new tasks. The number of tasks that ECS adds or removes from the service during a rolling update is controlled by the service deployment configuration. \n Rolling update deployments are best suited for the following scenarios:\n + Gradual service updates: You need to update your service incrementally without taking the entire service offline at once.\n + Limited resource requirements: You want to avoid the additional resource costs of running two complete environments simultaneously (as required by blue/green deployments).\n + Acceptable deployment time: Your application can tolerate a longer deployment process, as rolling updates replace tasks one by one.\n + No need for instant roll back: Your service can tolerate a rollback process that takes minutes rather than seconds.\n + Simple deployment process: You prefer a straightforward deployment approach without the complexity of managing multiple environments, target groups, and listeners.\n + No load balancer requirement: Your service doesn't use or require a load balancer, ALB, NLB, or Service Connect (which are required for blue/green deployments).\n + Stateful applications: Your application maintains state that makes it difficult to run two parallel environments.\n + Cost sensitivity: You want to minimize deployment costs by not running duplicate environments during deployment.\n \n Rolling updates are the default deployment strategy for services and provide a balance between deployment safety and resource efficiency for many common application scenarios.\n + ``BLUE_GREEN``: A *blue/green* deployment strategy (``BLUE_GREEN``) is a release methodology that reduces downtime and risk by running two identical production environments called blue and green. With ECS blue/green deployments, you can validate new service revisions before directing production traffic to them. This approach provides a safer way to deploy changes with the ability to quickly roll back if needed.\n ECS blue/green deployments are best suited for the following scenarios:\n + Service validation: When you need to validate new service revisions before directing production traffic to them\n + Zero downtime: When your service requires zero-downtime deployments\n + Instant roll back: When you need the ability to quickly roll back if issues are detected\n + Load balancer requirement: When your service uses ALB, NLB, or Service Connect\n \n \n + External\n Use a third-party deployment controller.\n + Blue/green deployment (powered by ACD)\n ACD installs an updated version of the application as a new replacement task set and reroutes production traffic from the original application task set to the replacement task set. The original task set is terminated after a successful deployment. Use this deployment controller to verify a new deployment of a service before sending production traffic to it.\n \n When updating the deployment controller for a service, consider the following depending on the type of migration you're performing.\n + If you have a template that contains the ``EXTERNAL`` deployment controller information as well as ``TaskSet`` and ``PrimaryTaskSet`` resources, and you remove the task set resources from the template when updating from ``EXTERNAL`` to ``ECS``, the ``DescribeTaskSet`` and ``DeleteTaskSet`` API calls will return a 400 error after the deployment controller is updated to ``ECS``. This results in a delete failure on the task set resources, even though the stack transitions to ``UPDATE_COMPLETE`` status. For more information, see [Resource removed from stack but not deleted](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-resource-removed-not-deleted) in the CFNlong User Guide. To fix this issue, delete the task sets directly using the ECS``DeleteTaskSet`` API. For more information about how to delete a task set, see [DeleteTaskSet](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeleteTaskSet.html) in the ECSlong API Reference.\n + If you're migrating from ``CODE_DEPLOY`` to ``ECS`` with a new task definition and CFN performs a rollback operation, the ECS``UpdateService`` request fails with the following error:\n Resource handler returned message: \"Invalid request provided: Unable to update task definition on services with a CODE_DEPLOY deployment controller. \n + After a successful migration from ``ECS`` to ``EXTERNAL`` deployment controller, you need to manually remove the ``ACTIVE`` task set, because ECS no longer manages the deployment. For information about how to delete a task set, see [DeleteTaskSet](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DeleteTaskSet.html) in the ECSlong API Reference.\n\n---\n\nRequired: No \nType: String \nAllowed Values: CODE_DEPLOY | ECS | EXTERNAL \nUpdate requires: No interruption\n" } }, "markdownDescription": "The deployment controller to use for the service.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -680,11 +813,35 @@ "additionalProperties": false, "type": "object", "properties": { + "BakeTimeInMinutes": { + "maximum": 1440, + "description": "The duration when both blue and green service revisions are running simultaneously after the production traffic has shifted.\n The following rules apply when you don't specify a value:\n + For rolling deployments, the value is set to 3 hours (180 minutes).\n + When you use an external deployment controller (``EXTERNAL``), or the ACD blue/green deployment controller (``CODE_DEPLOY``), the value is set to 3 hours (180 minutes).\n + For all other cases, the value is set to 36 hours (2160 minutes).", + "type": "integer", + "minimum": 0, + "markdownDescription": "The duration when both blue and green service revisions are running simultaneously after the production traffic has shifted.\n The following rules apply when you don't specify a value:\n + For rolling deployments, the value is set to 3 hours (180 minutes).\n + When you use an external deployment controller (``EXTERNAL``), or the ACD blue/green deployment controller (``CODE_DEPLOY``), the value is set to 3 hours (180 minutes).\n + For all other cases, the value is set to 36 hours (2160 minutes).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "LifecycleHooks": { + "description": "An array of deployment lifecycle hook objects to run custom logic at specific stages of the deployment lifecycle.", + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentLifecycleHook" + }, + "markdownDescription": "An array of deployment lifecycle hook objects to run custom logic at specific stages of the deployment lifecycle.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "Alarms": { "description": "Information about the CloudWatch alarms.", "$ref": "#/definitions/DeploymentAlarms", "markdownDescription": "Information about the CloudWatch alarms.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, + "Strategy": { + "description": "The deployment strategy for the service. Choose from these valid values:\n + ``ROLLING`` - When you create a service which uses the rolling update (``ROLLING``) deployment strategy, the Amazon ECS service scheduler replaces the currently running tasks with new tasks. The number of tasks that Amazon ECS adds or removes from the service during a rolling update is controlled by the service deployment configuration.\n + ``BLUE_GREEN`` - A blue/green deployment strategy (``BLUE_GREEN``) is a release methodology that reduces downtime and risk by running two identical production environments called blue and green. With Amazon ECS blue/green deployments, you can validate new service revisions before directing production traffic to them. This approach provides a safer way to deploy changes with the ability to quickly roll back if needed.", + "type": "string", + "enum": [ + "ROLLING", + "BLUE_GREEN" + ], + "markdownDescription": "The deployment strategy for the service. Choose from these valid values:\n + ``ROLLING`` - When you create a service which uses the rolling update (``ROLLING``) deployment strategy, the Amazon ECS service scheduler replaces the currently running tasks with new tasks. The number of tasks that Amazon ECS adds or removes from the service during a rolling update is controlled by the service deployment configuration.\n + ``BLUE_GREEN`` - A blue/green deployment strategy (``BLUE_GREEN``) is a release methodology that reduces downtime and risk by running two identical production environments called blue and green. With Amazon ECS blue/green deployments, you can validate new service revisions before directing production traffic to them. This approach provides a safer way to deploy changes with the ability to quickly roll back if needed.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ROLLING | BLUE_GREEN \nUpdate requires: No interruption\n" + }, "DeploymentCircuitBreaker": { "description": "The deployment circuit breaker can only be used for services using the rolling update (``ECS``) deployment type.\n The *deployment circuit breaker* determines whether a service deployment will fail if the service can't reach a steady state. If you use the deployment circuit breaker, a service deployment will transition to a failed state and stop launching new tasks. If you use the rollback option, when a service deployment fails, the service is rolled back to the last deployment that completed successfully. For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide*", "$ref": "#/definitions/DeploymentCircuitBreaker", @@ -817,7 +974,7 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "AvailabilityZoneRebalancing": { - "default": "DISABLED", + "default": "ENABLED", "description": "Indicates whether to use Availability Zone rebalancing for the service.\n For more information, see [Balancing an Amazon ECS service across Availability Zones](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-rebalancing.html) in the *Amazon Elastic Container Service Developer Guide*.", "type": "string", "enum": [ @@ -854,9 +1011,9 @@ "markdownDescription": "The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you don't specify a health check grace period value, the default value of ``0`` is used. If you don't use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.\n If your service's tasks take a while to start and respond to health checks, you can specify a health check grace period of up to 2,147,483,647 seconds (about 69 years). During that time, the Amazon ECS service scheduler ignores health check status. This grace period can prevent the service scheduler from marking tasks as unhealthy and stopping them before they have time to come up.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "EnableECSManagedTags": { - "description": "Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see [Tagging your Amazon ECS resources](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html) in the *Amazon Elastic Container Service Developer Guide*.\n When you use Amazon ECS managed tags, you need to set the ``propagateTags`` request parameter.", + "description": "Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see [Tagging your Amazon ECS resources](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html) in the *Amazon Elastic Container Service Developer Guide*.\n When you use Amazon ECS managed tags, you must set the ``propagateTags`` request parameter.", "type": "boolean", - "markdownDescription": "Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see [Tagging your Amazon ECS resources](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html) in the *Amazon Elastic Container Service Developer Guide*.\n When you use Amazon ECS managed tags, you need to set the ``propagateTags`` request parameter.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see [Tagging your Amazon ECS resources](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html) in the *Amazon Elastic Container Service Developer Guide*.\n When you use Amazon ECS managed tags, you must set the ``propagateTags`` request parameter.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "EnableExecuteCommand": { "description": "Determines whether the execute command functionality is turned on for the service. If ``true``, the execute command functionality is turned on for all containers in tasks as part of the service.", @@ -903,9 +1060,9 @@ "markdownDescription": "The VPC Lattice configuration for the service being created.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "DeploymentController": { - "description": "The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used.", + "description": "The deployment controller to use for the service.", "$ref": "#/definitions/DeploymentController", - "markdownDescription": "The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used.\n\n---\n\nRequired: No \nType: \nUpdate requires: Some interruptions\n" + "markdownDescription": "The deployment controller to use for the service.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "Role": { "description": "The name or full Amazon Resource Name (ARN) of the IAM role that allows Amazon ECS to make calls to your load balancer on your behalf. This parameter is only permitted if you are using a load balancer with your service and your task definition doesn't use the ``awsvpc`` network mode. If you specify the ``role`` parameter, you must also specify a load balancer object with the ``loadBalancers`` parameter.\n If your account has already created the Amazon ECS service-linked role, that role is used for your service unless you specify a role here. The service-linked role is required if your task definition uses the ``awsvpc`` network mode or if the service is configured to use service discovery, an external deployment controller, multiple target groups, or Elastic Inference accelerators in which case you don't specify a role here. For more information, see [Using service-linked roles for Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using-service-linked-roles.html) in the *Amazon Elastic Container Service Developer Guide*.\n If your specified role has a path other than ``/``, then you must either specify the full role ARN (this is recommended) or prefix the role name with the path. For example, if a role with the name ``bar`` has a path of ``/foo/`` then you would specify ``/foo/bar`` as the role name. For more information, see [Friendly names and paths](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names) in the *IAM User Guide*.", diff --git a/server/schema/resources/aws-ecs-taskdefinition.json b/server/schema/resources/aws-ecs-taskdefinition.json index fa1ba48c..578d9ab0 100644 --- a/server/schema/resources/aws-ecs-taskdefinition.json +++ b/server/schema/resources/aws-ecs-taskdefinition.json @@ -1,5 +1,4 @@ { - "sourceUrl": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html", "tagging": { "permissions": [ "ecs:TagResource", @@ -12,9 +11,40 @@ "tagProperty": "/properties/Tags", "cloudFormationSystemTags": true }, + "deprecatedProperties": [ + "/properties/InferenceAccelerators" + ], + "typeName": "AWS::ECS::TaskDefinition", + "readOnlyProperties": [ + "/properties/TaskDefinitionArn" + ], + "description": "Registers a new task definition from the supplied ``family`` and ``containerDefinitions``. Optionally, you can add data volumes to your containers with the ``volumes`` parameter. For more information about task definition parameters and defaults, see [Amazon ECS Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a role for your task with the ``taskRoleArn`` parameter. When you specify a role for a task, its containers can then use the latest versions of the CLI or SDKs to make API requests to the AWS services that are specified in the policy that's associated with the role. For more information, see [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a Docker networking mode for the containers in your task definition with the ``networkMode`` parameter. If you specify the ``awsvpc`` network mode, the task is allocated an elastic network interface, and you must specify a [NetworkConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html) when you create a service or run a task with the task definition. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*.\n In the following example or examples, the Authorization header contents (``AUTHPARAMS``) must be replaced with an AWS Signature Version 4 signature. For more information, see [Signature Version 4 Signing Process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) in the *General Reference*.\n You only need to learn how to sign HTTP requests if you intend to create them manually. When you use the [](https://docs.aws.amazon.com/cli/) or one of the [SDKs](https://docs.aws.amazon.com/tools/) to make requests to AWS, these tools automatically sign the requests for you, with the access key that you specify when you configure the tools. When you use these tools, you don't have to sign requests yourself.", + "createOnlyProperties": [ + "/properties/Family", + "/properties/ContainerDefinitions", + "/properties/Cpu", + "/properties/EnableFaultInjection", + "/properties/ExecutionRoleArn", + "/properties/InferenceAccelerators", + "/properties/Memory", + "/properties/NetworkMode", + "/properties/PlacementConstraints", + "/properties/ProxyConfiguration", + "/properties/RequiresCompatibilities", + "/properties/RuntimePlatform", + "/properties/TaskRoleArn", + "/properties/Volumes", + "/properties/PidMode", + "/properties/IpcMode", + "/properties/EphemeralStorage" + ], + "primaryIdentifier": [ + "/properties/TaskDefinitionArn" + ], + "sourceUrl": "https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html", "propertyTransform": { - "/properties/ExecutionRoleArn": "ExecutionRoleArn $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/\", ExecutionRoleArn])", - "/properties/TaskRoleArn": "TaskRoleArn $OR $split(TaskRoleArn, \"role/\")[-1] $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/\", TaskRoleArn])" + "/properties/ExecutionRoleArn": "ExecutionRoleArn $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,3}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/\", ExecutionRoleArn])", + "/properties/TaskRoleArn": "TaskRoleArn $OR $split(TaskRoleArn, \"role/\")[-1] $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,3}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/\", TaskRoleArn])" }, "handlers": { "read": { @@ -56,34 +86,7 @@ ] } }, - "typeName": "AWS::ECS::TaskDefinition", - "readOnlyProperties": [ - "/properties/TaskDefinitionArn" - ], - "description": "Registers a new task definition from the supplied ``family`` and ``containerDefinitions``. Optionally, you can add data volumes to your containers with the ``volumes`` parameter. For more information about task definition parameters and defaults, see [Amazon ECS Task Definitions](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_defintions.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a role for your task with the ``taskRoleArn`` parameter. When you specify a role for a task, its containers can then use the latest versions of the CLI or SDKs to make API requests to the AWS services that are specified in the policy that's associated with the role. For more information, see [IAM Roles for Tasks](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) in the *Amazon Elastic Container Service Developer Guide*.\n You can specify a Docker networking mode for the containers in your task definition with the ``networkMode`` parameter. If you specify the ``awsvpc`` network mode, the task is allocated an elastic network interface, and you must specify a [NetworkConfiguration](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_NetworkConfiguration.html) when you create a service or run a task with the task definition. For more information, see [Task Networking](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) in the *Amazon Elastic Container Service Developer Guide*.\n In the following example or examples, the Authorization header contents (``AUTHPARAMS``) must be replaced with an AWS Signature Version 4 signature. For more information, see [Signature Version 4 Signing Process](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) in the *General Reference*.\n You only need to learn how to sign HTTP requests if you intend to create them manually. When you use the [](https://docs.aws.amazon.com/cli/) or one of the [SDKs](https://docs.aws.amazon.com/tools/) to make requests to AWS, these tools automatically sign the requests for you, with the access key that you specify when you configure the tools. When you use these tools, you don't have to sign requests yourself.", - "createOnlyProperties": [ - "/properties/Family", - "/properties/ContainerDefinitions", - "/properties/Cpu", - "/properties/EnableFaultInjection", - "/properties/ExecutionRoleArn", - "/properties/InferenceAccelerators", - "/properties/Memory", - "/properties/NetworkMode", - "/properties/PlacementConstraints", - "/properties/ProxyConfiguration", - "/properties/RequiresCompatibilities", - "/properties/RuntimePlatform", - "/properties/TaskRoleArn", - "/properties/Volumes", - "/properties/PidMode", - "/properties/IpcMode", - "/properties/EphemeralStorage" - ], "additionalProperties": false, - "primaryIdentifier": [ - "/properties/TaskDefinitionArn" - ], "definitions": { "VolumeFrom": { "description": "Details on a data volume from another container in the same task definition.", @@ -261,9 +264,9 @@ "markdownDescription": "When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ``ReadonlyRootfs`` in the docker container create command and the ``--read-only`` option to docker run.\n This parameter is not supported for Windows containers.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "Image": { - "description": "The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``repository-url/image:tag`` or ``repository-url/image@digest``. Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to ``Image`` in the docker container create command and the ``IMAGE`` parameter of docker run.\n + When a new task starts, the Amazon ECS container agent pulls the latest version of the specified image and tag for the container to use. However, subsequent updates to a repository image aren't propagated to already running tasks.\n + Images in Amazon ECR repositories can be specified by either using the full ``registry/repository:tag`` or ``registry/repository@digest``. For example, ``012345678910.dkr.ecr..amazonaws.com/:latest`` or ``012345678910.dkr.ecr..amazonaws.com/@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE``. \n + Images in official repositories on Docker Hub use a single name (for example, ``ubuntu`` or ``mongo``).\n + Images in other repositories on Docker Hub are qualified with an organization name (for example, ``amazon/amazon-ecs-agent``).\n + Images in other online repositories are qualified further by a domain name (for example, ``quay.io/assemblyline/ubuntu``).", + "description": "The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``repository-url/image:tag`` or ``repository-url/image@digest``. For images using tags (repository-url/image:tag), up to 255 characters total are allowed, including letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs (#). For images using digests (repository-url/image@digest), the 255 character limit applies only to the repository URL and image name (everything before the @ sign). The only supported hash function is sha256, and the hash value after sha256: must be exactly 64 characters (only letters A-F, a-f, and numbers 0-9 are allowed). This parameter maps to ``Image`` in the docker container create command and the ``IMAGE`` parameter of docker run.\n + When a new task starts, the Amazon ECS container agent pulls the latest version of the specified image and tag for the container to use. However, subsequent updates to a repository image aren't propagated to already running tasks.\n + Images in Amazon ECR repositories can be specified by either using the full ``registry/repository:tag`` or ``registry/repository@digest``. For example, ``012345678910.dkr.ecr..amazonaws.com/:latest`` or ``012345678910.dkr.ecr..amazonaws.com/@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE``. \n + Images in official repositories on Docker Hub use a single name (for example, ``ubuntu`` or ``mongo``).\n + Images in other repositories on Docker Hub are qualified with an organization name (for example, ``amazon/amazon-ecs-agent``).\n + Images in other online repositories are qualified further by a domain name (for example, ``quay.io/assemblyline/ubuntu``).", "type": "string", - "markdownDescription": "The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``repository-url/image:tag`` or ``repository-url/image@digest``. Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to ``Image`` in the docker container create command and the ``IMAGE`` parameter of docker run.\n + When a new task starts, the Amazon ECS container agent pulls the latest version of the specified image and tag for the container to use. However, subsequent updates to a repository image aren't propagated to already running tasks.\n + Images in Amazon ECR repositories can be specified by either using the full ``registry/repository:tag`` or ``registry/repository@digest``. For example, ``012345678910.dkr.ecr..amazonaws.com/:latest`` or ``012345678910.dkr.ecr..amazonaws.com/@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE``. \n + Images in official repositories on Docker Hub use a single name (for example, ``ubuntu`` or ``mongo``).\n + Images in other repositories on Docker Hub are qualified with an organization name (for example, ``amazon/amazon-ecs-agent``).\n + Images in other online repositories are qualified further by a domain name (for example, ``quay.io/assemblyline/ubuntu``).\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``repository-url/image:tag`` or ``repository-url/image@digest``. For images using tags (repository-url/image:tag), up to 255 characters total are allowed, including letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs (#). For images using digests (repository-url/image@digest), the 255 character limit applies only to the repository URL and image name (everything before the @ sign). The only supported hash function is sha256, and the hash value after sha256: must be exactly 64 characters (only letters A-F, a-f, and numbers 0-9 are allowed). This parameter maps to ``Image`` in the docker container create command and the ``IMAGE`` parameter of docker run.\n + When a new task starts, the Amazon ECS container agent pulls the latest version of the specified image and tag for the container to use. However, subsequent updates to a repository image aren't propagated to already running tasks.\n + Images in Amazon ECR repositories can be specified by either using the full ``registry/repository:tag`` or ``registry/repository@digest``. For example, ``012345678910.dkr.ecr..amazonaws.com/:latest`` or ``012345678910.dkr.ecr..amazonaws.com/@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE``. \n + Images in official repositories on Docker Hub use a single name (for example, ``ubuntu`` or ``mongo``).\n + Images in other repositories on Docker Hub are qualified with an organization name (for example, ``amazon/amazon-ecs-agent``).\n + Images in other online repositories are qualified further by a domain name (for example, ``quay.io/assemblyline/ubuntu``).\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "Essential": { "description": "If the ``essential`` parameter of a container is marked as ``true``, and that container fails or stops for any reason, all other containers that are part of the task are stopped. If the ``essential`` parameter of a container is marked as ``false``, its failure doesn't affect the rest of the containers in a task. If this parameter is omitted, a container is assumed to be essential.\n All tasks must have at least one essential container. If you have an application that's composed of multiple containers, group containers that are used for a common purpose into components, and separate the different components into multiple task definitions. For more information, see [Application Architecture](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/application_architecture.html) in the *Amazon Elastic Container Service Developer Guide*.", @@ -431,13 +434,13 @@ "markdownDescription": "The mount points for data volumes in your container.\n This parameter maps to ``Volumes`` in the docker container create command and the ``--volume`` option to docker run.\n Windows containers can mount whole directories on the same drive as ``$env:ProgramData``. Windows containers can't mount directories on a different drive, and mount point can't be across drives.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "DependsOn": { - "description": "The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed.\n For tasks using the EC2 launch type, the container instances require at least version 1.26.0 of the container agent to turn on container dependencies. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see [Updating the Amazon ECS Container Agent](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html) in the *Amazon Elastic Container Service Developer Guide*. If you're using an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the ``ecs-init`` package. If your container instances are launched from version ``20190301`` or later, then they contain the required versions of the container agent and ``ecs-init``. For more information, see [Amazon ECS-optimized Linux AMI](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) in the *Amazon Elastic Container Service Developer Guide*.\n For tasks using the Fargate launch type, the task or service requires the following platforms:\n + Linux platform version ``1.3.0`` or later.\n + Windows platform version ``1.0.0`` or later.\n \n If the task definition is used in a blue/green deployment that uses [AWS::CodeDeploy::DeploymentGroup BlueGreenDeploymentConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-bluegreendeploymentconfiguration.html), the ``dependsOn`` parameter is not supported. For more information see [Issue #680](https://docs.aws.amazon.com/https://github.com/aws-cloudformation/cloudformation-coverage-roadmap/issues/680) on the on the GitHub website.", + "description": "The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed.\n For tasks using the EC2 launch type, the container instances require at least version 1.26.0 of the container agent to turn on container dependencies. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see [Updating the Amazon ECS Container Agent](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html) in the *Amazon Elastic Container Service Developer Guide*. If you're using an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the ``ecs-init`` package. If your container instances are launched from version ``20190301`` or later, then they contain the required versions of the container agent and ``ecs-init``. For more information, see [Amazon ECS-optimized Linux AMI](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) in the *Amazon Elastic Container Service Developer Guide*.\n For tasks using the Fargate launch type, the task or service requires the following platforms:\n + Linux platform version ``1.3.0`` or later.\n + Windows platform version ``1.0.0`` or later.\n \n If the task definition is used in a blue/green deployment that uses [AWS::CodeDeploy::DeploymentGroup BlueGreenDeploymentConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-bluegreendeploymentconfiguration.html), the ``dependsOn`` parameter is not supported.", "insertionOrder": false, "type": "array", "items": { "$ref": "#/definitions/ContainerDependency" }, - "markdownDescription": "The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed.\n For tasks using the EC2 launch type, the container instances require at least version 1.26.0 of the container agent to turn on container dependencies. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see [Updating the Amazon ECS Container Agent](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html) in the *Amazon Elastic Container Service Developer Guide*. If you're using an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the ``ecs-init`` package. If your container instances are launched from version ``20190301`` or later, then they contain the required versions of the container agent and ``ecs-init``. For more information, see [Amazon ECS-optimized Linux AMI](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) in the *Amazon Elastic Container Service Developer Guide*.\n For tasks using the Fargate launch type, the task or service requires the following platforms:\n + Linux platform version ``1.3.0`` or later.\n + Windows platform version ``1.0.0`` or later.\n \n If the task definition is used in a blue/green deployment that uses [AWS::CodeDeploy::DeploymentGroup BlueGreenDeploymentConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-bluegreendeploymentconfiguration.html), the ``dependsOn`` parameter is not supported. For more information see [Issue #680](https://docs.aws.amazon.com/https://github.com/aws-cloudformation/cloudformation-coverage-roadmap/issues/680) on the on the GitHub website.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed.\n For tasks using the EC2 launch type, the container instances require at least version 1.26.0 of the container agent to turn on container dependencies. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see [Updating the Amazon ECS Container Agent](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html) in the *Amazon Elastic Container Service Developer Guide*. If you're using an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the ``ecs-init`` package. If your container instances are launched from version ``20190301`` or later, then they contain the required versions of the container agent and ``ecs-init``. For more information, see [Amazon ECS-optimized Linux AMI](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html) in the *Amazon Elastic Container Service Developer Guide*.\n For tasks using the Fargate launch type, the task or service requires the following platforms:\n + Linux platform version ``1.3.0`` or later.\n + Windows platform version ``1.0.0`` or later.\n \n If the task definition is used in a blue/green deployment that uses [AWS::CodeDeploy::DeploymentGroup BlueGreenDeploymentConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-bluegreendeploymentconfiguration.html), the ``dependsOn`` parameter is not supported.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "DockerLabels": { "patternProperties": { @@ -584,10 +587,10 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "description": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS is changing the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``", + "description": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the non-blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``", "additionalProperties": false, "type": "object", - "markdownDescription": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS is changing the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "The configuration options to send to the log driver.\n The options you can specify depend on the log driver. Some of the options you can specify when you use the ``awslogs`` log driver to route logs to Amazon CloudWatch include the following:\n + awslogs-create-group Required: No Specify whether you want the log group to be created automatically. If this option isn't specified, it defaults to false. Your IAM policy must include the logs:CreateLogGroup permission before you attempt to use awslogs-create-group. + awslogs-region Required: Yes Specify the Region that the awslogs log driver is to send your Docker logs to. You can choose to send all of your logs from clusters in different Regions to a single region in CloudWatch Logs. This is so that they're all visible in one location. Otherwise, you can separate them by Region for more granularity. Make sure that the specified log group exists in the Region that you specify with this option. + awslogs-group Required: Yes Make sure to specify a log group that the awslogs log driver sends its log streams to. + awslogs-stream-prefix Required: Yes, when using Fargate.Optional when using EC2. Use the awslogs-stream-prefix option to associate a log stream with the specified prefix, the container name, and the ID of the Amazon ECS task that the container belongs to. If you specify a prefix with this option, then the log stream takes the format prefix-name/container-name/ecs-task-id. If you don't specify a prefix with this option, then the log stream is named after the container ID that's assigned by the Docker daemon on the container instance. Because it's difficult to trace logs back to the container that sent them with just the Docker container ID (which is only available on the container instance), we recommend that you specify a prefix with this option. For Amazon ECS services, you can use the service name as the prefix. Doing so, you can trace log streams to the service that the container belongs to, the name of the container that sent them, and the ID of the task that the container belongs to. You must specify a stream-prefix for your logs to have your logs appear in the Log pane when using the Amazon ECS console. + awslogs-datetime-format Required: No This option defines a multiline start pattern in Python strftime format. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. One example of a use case for using this format is for parsing output such as a stack dump, which might otherwise be logged in multiple entries. The correct pattern allows it to be captured in a single entry. For more information, see awslogs-datetime-format. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. + awslogs-multiline-pattern Required: No This option defines a multiline start pattern that uses a regular expression. A log message consists of a line that matches the pattern and any following lines that don\u2019t match the pattern. The matched line is the delimiter between log messages. For more information, see awslogs-multiline-pattern. This option is ignored if awslogs-datetime-format is also configured. You cannot configure both the awslogs-datetime-format and awslogs-multiline-pattern options. Multiline logging performs regular expression parsing and matching of all log messages. This might have a negative impact on logging performance. \n The following options apply to all supported log drivers.\n + mode Required: No Valid values: non-blocking | blocking This option defines the delivery mode of log messages from the container to the log driver specified using logDriver. The delivery mode you choose affects application availability when the flow of logs from container is interrupted. If you use the blocking mode and the flow of logs is interrupted, calls from container code to write to the stdout and stderr streams will block. The logging thread of the application will block as a result. This may cause the application to become unresponsive and lead to container healthcheck failure. If you use the non-blocking mode, the container's logs are instead stored in an in-memory intermediate buffer configured with the max-buffer-size option. This prevents the application from becoming unresponsive when logs cannot be sent. We recommend using this mode if you want to ensure service availability and are okay with some log loss. For more information, see Preventing log loss with non-blocking mode in the awslogs container log driver. You can set a default mode for all containers in a specific Region by using the defaultLogDriverMode account setting. If you don't specify the mode option or configure the account setting, Amazon ECS will default to the non-blocking mode. For more information about the account setting, see Default log driver mode in the Amazon Elastic Container Service Developer Guide. On June 25, 2025, Amazon ECS changed the default log driver mode from blocking to non-blocking to prioritize task availability over logging. To continue using the blocking mode after this change, do one of the following: Set the mode option in your container definition's logConfiguration as blocking. Set the defaultLogDriverMode account setting to blocking. + max-buffer-size Required: No Default value: 1m When non-blocking mode is used, the max-buffer-size log option controls the size of the buffer that's used for intermediate message storage. Make sure to specify an adequate buffer size based on your application. When the buffer fills up, further logs cannot be stored. Logs that cannot be stored are lost. \n To route logs using the ``splunk`` log router, you need to specify a ``splunk-token`` and a ``splunk-url``.\n When you use the ``awsfirelens`` log router to route logs to an AWS Service or AWS Partner Network destination for log storage and analytics, you can set the ``log-driver-buffer-limit`` option to limit the number of events that are buffered in memory, before being sent to the log router container. It can help to resolve potential log loss issue because high throughput might result in memory running out for the buffer inside of Docker.\n Other options you can specify when using ``awsfirelens`` to route logs depend on the destination. When you export logs to Amazon Data Firehose, you can specify the AWS Region with ``region`` and a name for the log stream with ``delivery_stream``.\n When you export logs to Amazon Kinesis Data Streams, you can specify an AWS Region with ``region`` and a data stream name with ``stream``.\n When you export logs to Amazon OpenSearch Service, you can specify options like ``Name``, ``Host`` (OpenSearch Service endpoint without protocol), ``Port``, ``Index``, ``Type``, ``Aws_auth``, ``Aws_region``, ``Suppress_Type_Name``, and ``tls``. For more information, see [Under the hood: FireLens for Amazon ECS Tasks](https://docs.aws.amazon.com/containers/under-the-hood-firelens-for-amazon-ecs-tasks/).\n When you export logs to Amazon S3, you can specify the bucket using the ``bucket`` option. You can also specify ``region``, ``total_file_size``, ``upload_timeout``, and ``use_put_object`` as options.\n This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version --format '{{.Server.APIVersion}}'``\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "LogDriver": { "description": "The log driver to use for the container.\n For tasks on FARGATElong, the supported log drivers are ``awslogs``, ``splunk``, and ``awsfirelens``.\n For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs``, ``fluentd``, ``gelf``, ``json-file``, ``journald``, ``syslog``, ``splunk``, and ``awsfirelens``.\n For more information about using the ``awslogs`` log driver, see [Send Amazon ECS logs to CloudWatch](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html) in the *Amazon Elastic Container Service Developer Guide*.\n For more information about using the ``awsfirelens`` log driver, see [Send Amazon ECS logs to an service or Partner](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html).\n If you have a custom driver that isn't listed, you can fork the Amazon ECS container agent project that's [available on GitHub](https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent) and customize it to work with that driver. We encourage you to submit pull requests for changes that you would like to have included. However, we don't currently provide support for running modified copies of this software.", @@ -1182,22 +1185,20 @@ "markdownDescription": "The type and amount of a resource to assign to a container. The supported resource types are GPUs and Elastic Inference accelerators. For more information, see [Working with GPUs on Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-gpu.html) or [Working with Amazon Elastic Inference on Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-inference.html) in the *Amazon Elastic Container Service Developer Guide*\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "InferenceAccelerator": { - "description": "Details on an Elastic Inference accelerator. For more information, see [Working with Amazon Elastic Inference on Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-inference.html) in the *Amazon Elastic Container Service Developer Guide*.", + "description": "", "additionalProperties": false, "type": "object", "properties": { "DeviceType": { - "description": "The Elastic Inference accelerator type to use.", "type": "string", - "markdownDescription": "The Elastic Inference accelerator type to use.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "DeviceName": { - "description": "The Elastic Inference accelerator device name. The ``deviceName`` must also be referenced in a container definition as a [ResourceRequirement](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ResourceRequirement.html).", "type": "string", - "markdownDescription": "The Elastic Inference accelerator device name. The ``deviceName`` must also be referenced in a container definition as a [ResourceRequirement](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ResourceRequirement.html).\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Details on an Elastic Inference accelerator. For more information, see [Working with Amazon Elastic Inference on Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-inference.html) in the *Amazon Elastic Container Service Developer Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Tag": { "description": "The metadata that you apply to a resource to help you categorize and organize them. Each tag consists of a key and an optional value. You define them.\n The following basic restrictions apply to tags:\n + Maximum number of tags per resource - 50\n + For each resource, each tag key must be unique, and each tag key can have only one value.\n + Maximum key length - 128 Unicode characters in UTF-8\n + Maximum value length - 256 Unicode characters in UTF-8\n + If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.\n + Tag keys and values are case-sensitive.\n + Do not use ``aws:``, ``AWS:``, or any upper or lowercase combination of such as a prefix for either keys or values as it is reserved for AWS use. You cannot edit or delete tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource limit.", @@ -1271,13 +1272,13 @@ }, "InferenceAccelerators": { "uniqueItems": true, - "description": "The Elastic Inference accelerators to use for the containers in the task.", + "description": "", "insertionOrder": false, "type": "array", "items": { "$ref": "#/definitions/InferenceAccelerator" }, - "markdownDescription": "The Elastic Inference accelerators to use for the containers in the task.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" }, "Memory": { "description": "The amount (in MiB) of memory used by the task.\n If your tasks runs on Amazon EC2 instances, you must specify either a task-level memory value or a container-level memory value. This field is optional and any value can be used. If a task-level memory value is specified, the container-level memory value is optional. For more information regarding container-level memory and memory reservation, see [ContainerDefinition](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html).\n If your tasks runs on FARGATElong, this field is required. You must use one of the following values. The value you choose determines your range of valid values for the ``cpu`` parameter.\n + 512 (0.5 GB), 1024 (1 GB), 2048 (2 GB) - Available ``cpu`` values: 256 (.25 vCPU)\n + 1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB) - Available ``cpu`` values: 512 (.5 vCPU)\n + 2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB) - Available ``cpu`` values: 1024 (1 vCPU)\n + Between 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB) - Available ``cpu`` values: 2048 (2 vCPU)\n + Between 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB) - Available ``cpu`` values: 4096 (4 vCPU)\n + Between 16 GB and 60 GB in 4 GB increments - Available ``cpu`` values: 8192 (8 vCPU)\n This option requires Linux platform ``1.4.0`` or later.\n + Between 32GB and 120 GB in 8 GB increments - Available ``cpu`` values: 16384 (16 vCPU)\n This option requires Linux platform ``1.4.0`` or later.", diff --git a/server/schema/resources/aws-efs-mounttarget.json b/server/schema/resources/aws-efs-mounttarget.json index e3e1a108..ee274a77 100644 --- a/server/schema/resources/aws-efs-mounttarget.json +++ b/server/schema/resources/aws-efs-mounttarget.json @@ -10,13 +10,13 @@ }, "IpAddress": { "type": "string", - "description": "Valid IPv4 address within the address range of the specified subnet.", - "markdownDescription": "Valid IPv4 address within the address range of the specified subnet.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "If the ``IpAddressType`` for the mount target is IPv4 ( ``IPV4_ONLY`` or ``DUAL_STACK``), then specify the IPv4 address to use. If you do not specify an ``IpAddress``, then Amazon EFS selects an unused IP address from the subnet specified for ``SubnetId``.", + "markdownDescription": "If the ``IpAddressType`` for the mount target is IPv4 ( ``IPV4_ONLY`` or ``DUAL_STACK``), then specify the IPv4 address to use. If you do not specify an ``IpAddress``, then Amazon EFS selects an unused IP address from the subnet specified for ``SubnetId``.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "Ipv6Address": { "type": "string", - "description": "", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "If the ``IPAddressType`` for the mount target is IPv6 (``IPV6_ONLY`` or ``DUAL_STACK``), then specify the IPv6 address to use. If you do not specify an ``Ipv6Address``, then Amazon EFS selects an unused IP address from the subnet specified for ``SubnetId``.", + "markdownDescription": "If the ``IPAddressType`` for the mount target is IPv6 (``IPV6_ONLY`` or ``DUAL_STACK``), then specify the IPv6 address to use. If you do not specify an ``Ipv6Address``, then Amazon EFS selects an unused IP address from the subnet specified for ``SubnetId``.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "IpAddressType": { "type": "string", @@ -25,8 +25,8 @@ "IPV6_ONLY", "DUAL_STACK" ], - "description": "", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: IPV4_ONLY | IPV6_ONLY | DUAL_STACK \nUpdate requires: Replacement\n" + "description": "The IP address type for the mount target. The possible values are ``IPV4_ONLY`` (only IPv4 addresses), ``IPV6_ONLY`` (only IPv6 addresses), and ``DUAL_STACK`` (dual-stack, both IPv4 and IPv6 addresses). If you don\u2019t specify an ``IpAddressType``, then ``IPV4_ONLY`` is used.\n The ``IPAddressType`` must match the IP type of the subnet. Additionally, the ``IPAddressType`` parameter overrides the value set as the default IP address for the subnet in the VPC. For example, if the ``IPAddressType`` is ``IPV4_ONLY`` and ``AssignIpv6AddressOnCreation`` is ``true``, then IPv4 is used for the mount target. For more information, see [Modify the IP addressing attributes of your subnet](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html).", + "markdownDescription": "The IP address type for the mount target. The possible values are ``IPV4_ONLY`` (only IPv4 addresses), ``IPV6_ONLY`` (only IPv6 addresses), and ``DUAL_STACK`` (dual-stack, both IPv4 and IPv6 addresses). If you don\u2019t specify an ``IpAddressType``, then ``IPV4_ONLY`` is used.\n The ``IPAddressType`` must match the IP type of the subnet. Additionally, the ``IPAddressType`` parameter overrides the value set as the default IP address for the subnet in the VPC. For example, if the ``IPAddressType`` is ``IPV4_ONLY`` and ``AssignIpv6AddressOnCreation`` is ``true``, then IPv4 is used for the mount target. For more information, see [Modify the IP addressing attributes of your subnet](https://docs.aws.amazon.com/vpc/latest/userguide/subnet-public-ip.html).\n\n---\n\nRequired: No \nType: String \nAllowed Values: IPV4_ONLY | IPV6_ONLY | DUAL_STACK \nUpdate requires: Replacement\n" }, "FileSystemId": { "type": "string", @@ -41,13 +41,13 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "description": "VPC security group IDs, of the form ``sg-xxxxxxxx``. These must be for the same VPC as the subnet specified. The maximum number of security groups depends on account quota. For more information, see [Amazon VPC Quotas](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html) in the *Amazon VPC User Guide* (see the *Security Groups* table).", - "markdownDescription": "VPC security group IDs, of the form ``sg-xxxxxxxx``. These must be for the same VPC as the subnet specified. The maximum number of security groups depends on account quota. For more information, see [Amazon VPC Quotas](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html) in the *Amazon VPC User Guide* (see the *Security Groups* table).\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "description": "VPC security group IDs, of the form ``sg-xxxxxxxx``. These must be for the same VPC as the subnet specified. The maximum number of security groups depends on account quota. For more information, see [Amazon VPC Quotas](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html) in the *Amazon VPC User Guide* (see the *Security Groups* table). If you don't specify a security group, then Amazon EFS uses the default security group for the subnet's VPC.", + "markdownDescription": "VPC security group IDs, of the form ``sg-xxxxxxxx``. These must be for the same VPC as the subnet specified. The maximum number of security groups depends on account quota. For more information, see [Amazon VPC Quotas](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html) in the *Amazon VPC User Guide* (see the *Security Groups* table). If you don't specify a security group, then Amazon EFS uses the default security group for the subnet's VPC.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, "SubnetId": { "type": "string", - "description": "The ID of the subnet to add the mount target in. For One Zone file systems, use the subnet that is associated with the file system's Availability Zone.", - "markdownDescription": "The ID of the subnet to add the mount target in. For One Zone file systems, use the subnet that is associated with the file system's Availability Zone.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "description": "The ID of the subnet to add the mount target in. For One Zone file systems, use the subnet that is associated with the file system's Availability Zone. The subnet type must be the same type as the ``IpAddressType``.", + "markdownDescription": "The ID of the subnet to add the mount target in. For One Zone file systems, use the subnet that is associated with the file system's Availability Zone. The subnet type must be the same type as the ``IpAddressType``.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-eks-addon.json b/server/schema/resources/aws-eks-addon.json index 126debcc..16cca60b 100644 --- a/server/schema/resources/aws-eks-addon.json +++ b/server/schema/resources/aws-eks-addon.json @@ -1,26 +1,111 @@ { + "tagging": { + "permissions": [ + "eks:TagResource", + "eks:UntagResource" + ], + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": false + }, "typeName": "AWS::EKS::Addon", + "readOnlyProperties": [ + "/properties/Arn" + ], "description": "Resource Schema for AWS::EKS::Addon", + "createOnlyProperties": [ + "/properties/ClusterName", + "/properties/AddonName" + ], + "primaryIdentifier": [ + "/properties/ClusterName", + "/properties/AddonName" + ], + "required": [ + "ClusterName", + "AddonName" + ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-eks.git", + "handlers": { + "read": { + "permissions": [ + "eks:DescribeAddon" + ] + }, + "create": { + "permissions": [ + "eks:CreateAddon", + "eks:DescribeAddon", + "eks:TagResource", + "iam:PassRole", + "iam:GetRole", + "eks:CreatePodIdentityAssociation" + ] + }, + "update": { + "permissions": [ + "iam:PassRole", + "iam:GetRole", + "eks:UpdateAddon", + "eks:DescribeAddon", + "eks:DescribeUpdate", + "eks:TagResource", + "eks:UntagResource", + "eks:CreatePodIdentityAssociation", + "eks:DeletePodIdentityAssociation", + "eks:UpdatePodIdentityAssociation" + ] + }, + "list": { + "permissions": [ + "eks:ListAddons" + ], + "handlerSchema": { + "properties": { + "ClusterName": { + "$ref": "resource-schema.json#/properties/ClusterName" + } + }, + "required": [ + "ClusterName" + ] + } + }, + "delete": { + "permissions": [ + "eks:DeleteAddon", + "eks:DescribeAddon", + "eks:DeletePodIdentityAssociation" + ] + } + }, + "writeOnlyProperties": [ + "/properties/ResolveConflicts", + "/properties/PreserveOnDelete", + "/properties/PodIdentityAssociations" + ], + "additionalProperties": false, "definitions": { "Tag": { "description": "A key-value pair to associate with a resource.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { - "Key": { - "type": "string", - "description": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", - "minLength": 1, - "maxLength": 127, - "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" - }, "Value": { - "type": "string", - "description": "The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", "minLength": 1, + "description": "The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "type": "string", "maxLength": 255, "markdownDescription": "The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "Key": { + "minLength": 1, + "description": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "type": "string", + "maxLength": 127, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" } }, "required": [ @@ -31,17 +116,17 @@ }, "PodIdentityAssociation": { "description": "A pod identity to associate with an add-on.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { "ServiceAccount": { - "type": "string", "description": "The Kubernetes service account that the pod identity association is created for.", + "type": "string", "markdownDescription": "The Kubernetes service account that the pod identity association is created for.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "RoleArn": { - "type": "string", "description": "The IAM role ARN that the pod identity association is created for.", + "type": "string", "markdownDescription": "The IAM role ARN that the pod identity association is created for.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:aws(-cn|-us-gov|-iso(-[a-z])?)?:iam::\\d{12}:(role)\\/* \nUpdate requires: No interruption\n" } }, @@ -53,161 +138,76 @@ } }, "properties": { - "ClusterName": { - "description": "Name of Cluster", - "type": "string", - "minLength": 1, - "markdownDescription": "Name of Cluster\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nUpdate requires: Replacement\n" - }, - "AddonName": { - "description": "Name of Addon", - "type": "string", - "minLength": 1, - "markdownDescription": "Name of Addon\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nUpdate requires: Replacement\n" - }, - "AddonVersion": { - "description": "Version of Addon", - "type": "string", - "minLength": 1, - "markdownDescription": "Version of Addon\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" - }, "PreserveOnDelete": { "description": "PreserveOnDelete parameter value", "type": "boolean", "markdownDescription": "PreserveOnDelete parameter value\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "ResolveConflicts": { - "description": "Resolve parameter value conflicts", - "type": "string", + "AddonVersion": { "minLength": 1, - "enum": [ - "NONE", - "OVERWRITE", - "PRESERVE" - ], - "markdownDescription": "Resolve parameter value conflicts\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | OVERWRITE | PRESERVE \nMinimum Length: 1 \nUpdate requires: No interruption\n" + "description": "Version of Addon", + "type": "string", + "markdownDescription": "Version of Addon\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" }, "ServiceAccountRoleArn": { + "minLength": 1, "description": "IAM role to bind to the add-on's service account", "type": "string", - "minLength": 1, "markdownDescription": "IAM role to bind to the add-on's service account\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" }, + "ClusterName": { + "minLength": 1, + "description": "Name of Cluster", + "type": "string", + "markdownDescription": "Name of Cluster\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nUpdate requires: Replacement\n" + }, + "AddonName": { + "minLength": 1, + "description": "Name of Addon", + "type": "string", + "markdownDescription": "Name of Addon\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nUpdate requires: Replacement\n" + }, "PodIdentityAssociations": { - "description": "An array of pod identities to apply to this add-on.", - "type": "array", "uniqueItems": true, + "description": "An array of pod identities to apply to this add-on.", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/PodIdentityAssociation" }, "markdownDescription": "An array of pod identities to apply to this add-on.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "ConfigurationValues": { - "description": "The configuration values to use with the add-on", - "type": "string", - "minLength": 1, - "markdownDescription": "The configuration values to use with the add-on\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" - }, "Arn": { "description": "Amazon Resource Name (ARN) of the add-on", "type": "string", "markdownDescription": "Amazon Resource Name (ARN) of the add-on\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, + "ResolveConflicts": { + "minLength": 1, + "description": "Resolve parameter value conflicts", + "type": "string", + "enum": [ + "NONE", + "OVERWRITE", + "PRESERVE" + ], + "markdownDescription": "Resolve parameter value conflicts\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | OVERWRITE | PRESERVE \nMinimum Length: 1 \nUpdate requires: No interruption\n" + }, "Tags": { - "description": "An array of key-value pairs to apply to this resource.", - "type": "array", "uniqueItems": true, + "description": "An array of key-value pairs to apply to this resource.", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/Tag" }, "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - } - }, - "tagging": { - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags", - "permissions": [ - "eks:TagResource", - "eks:UntagResource" - ] - }, - "additionalProperties": false, - "required": [ - "ClusterName", - "AddonName" - ], - "primaryIdentifier": [ - "/properties/ClusterName", - "/properties/AddonName" - ], - "createOnlyProperties": [ - "/properties/ClusterName", - "/properties/AddonName" - ], - "readOnlyProperties": [ - "/properties/Arn" - ], - "writeOnlyProperties": [ - "/properties/ResolveConflicts", - "/properties/PreserveOnDelete", - "/properties/PodIdentityAssociations" - ], - "handlers": { - "create": { - "permissions": [ - "eks:CreateAddon", - "eks:DescribeAddon", - "eks:TagResource", - "iam:PassRole", - "iam:GetRole", - "eks:CreatePodIdentityAssociation" - ] - }, - "read": { - "permissions": [ - "eks:DescribeAddon" - ] - }, - "delete": { - "permissions": [ - "eks:DeleteAddon", - "eks:DescribeAddon", - "eks:DeletePodIdentityAssociation" - ] }, - "list": { - "handlerSchema": { - "properties": { - "ClusterName": { - "$ref": "resource-schema.json#/properties/ClusterName" - } - }, - "required": [ - "ClusterName" - ] - }, - "permissions": [ - "eks:ListAddons" - ] - }, - "update": { - "permissions": [ - "iam:PassRole", - "iam:GetRole", - "eks:UpdateAddon", - "eks:DescribeAddon", - "eks:DescribeUpdate", - "eks:TagResource", - "eks:UntagResource", - "eks:CreatePodIdentityAssociation", - "eks:DeletePodIdentityAssociation", - "eks:UpdatePodIdentityAssociation" - ] + "ConfigurationValues": { + "minLength": 1, + "description": "The configuration values to use with the add-on", + "type": "string", + "markdownDescription": "The configuration values to use with the add-on\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" } }, "attributes": { diff --git a/server/schema/resources/aws-eks-cluster.json b/server/schema/resources/aws-eks-cluster.json index f7f4bce0..77e7172d 100644 --- a/server/schema/resources/aws-eks-cluster.json +++ b/server/schema/resources/aws-eks-cluster.json @@ -451,6 +451,11 @@ } }, "markdownDescription": "The current zonal shift configuration to use for the cluster.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DeletionProtection": { + "description": "Set this value to true to enable deletion protection for the cluster.", + "type": "boolean", + "markdownDescription": "Set this value to true to enable deletion protection for the cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "properties": { @@ -563,6 +568,11 @@ "type": "boolean", "markdownDescription": "Set this value to false to avoid creating the default networking add-ons when the cluster is created.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Replacement\n" }, + "DeletionProtection": { + "description": "Set this value to true to enable deletion protection for the cluster.", + "type": "boolean", + "markdownDescription": "Set this value to true to enable deletion protection for the cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, "ZonalShiftConfig": { "$ref": "#/definitions/ZonalShiftConfig" } diff --git a/server/schema/resources/aws-eks-podidentityassociation.json b/server/schema/resources/aws-eks-podidentityassociation.json index 04cee5b6..817698d4 100644 --- a/server/schema/resources/aws-eks-podidentityassociation.json +++ b/server/schema/resources/aws-eks-podidentityassociation.json @@ -1,127 +1,40 @@ { - "tagging": { - "permissions": [ - "eks:TagResource", - "eks:UntagResource" - ], - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "tagProperty": "/properties/Tags", - "cloudFormationSystemTags": true - }, "typeName": "AWS::EKS::PodIdentityAssociation", - "readOnlyProperties": [ - "/properties/AssociationArn", - "/properties/AssociationId" - ], "description": "An object representing an Amazon EKS PodIdentityAssociation.", - "createOnlyProperties": [ - "/properties/ClusterName", - "/properties/Namespace", - "/properties/ServiceAccount" - ], - "primaryIdentifier": [ - "/properties/AssociationArn" - ], - "required": [ - "ClusterName", - "RoleArn", - "Namespace", - "ServiceAccount" - ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-eks.git", - "handlers": { - "read": { - "permissions": [ - "eks:DescribePodIdentityAssociation" - ] - }, - "create": { - "permissions": [ - "eks:CreatePodIdentityAssociation", - "eks:DescribePodIdentityAssociation", - "eks:TagResource", - "iam:PassRole", - "iam:GetRole" - ] - }, - "update": { - "permissions": [ - "eks:DescribePodIdentityAssociation", - "eks:UpdatePodIdentityAssociation", - "eks:TagResource", - "eks:UntagResource", - "iam:PassRole", - "iam:GetRole" - ] - }, - "list": { - "permissions": [ - "eks:ListPodIdentityAssociations" - ], - "handlerSchema": { - "properties": { - "ClusterName": { - "$ref": "resource-schema.json#/properties/ClusterName" - } - }, - "required": [ - "ClusterName" - ] - } - }, - "delete": { - "permissions": [ - "eks:DeletePodIdentityAssociation", - "eks:DescribePodIdentityAssociation" - ] - } - }, - "additionalProperties": false, "definitions": { "Tag": { "description": "A key-value pair to associate with a resource.", - "additionalProperties": false, "type": "object", "properties": { - "Value": { - "minLength": 0, - "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", - "type": "string", - "maxLength": 256, - "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Key": { - "minLength": 1, - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 1, "maxLength": 128, "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ "Key", "Value" ], + "additionalProperties": false, "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { - "AssociationArn": { - "description": "The ARN of the pod identity association.", - "type": "string", - "markdownDescription": "The ARN of the pod identity association.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "ServiceAccount": { - "description": "The Kubernetes service account that the pod identity association is created for.", - "type": "string", - "markdownDescription": "The Kubernetes service account that the pod identity association is created for.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" - }, "ClusterName": { - "minLength": 1, "description": "The cluster that the pod identity association is created for.", "type": "string", + "minLength": 1, "markdownDescription": "The cluster that the pod identity association is created for.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nUpdate requires: Replacement\n" }, "RoleArn": { @@ -134,24 +47,130 @@ "type": "string", "markdownDescription": "The Kubernetes namespace that the pod identity association is created for.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, + "ServiceAccount": { + "description": "The Kubernetes service account that the pod identity association is created for.", + "type": "string", + "markdownDescription": "The Kubernetes service account that the pod identity association is created for.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + }, + "AssociationArn": { + "description": "The ARN of the pod identity association.", + "type": "string", + "markdownDescription": "The ARN of the pod identity association.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "AssociationId": { - "minLength": 1, "description": "The ID of the pod identity association.", "type": "string", + "minLength": 1, "markdownDescription": "The ID of the pod identity association.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\nRead only property: Yes" }, + "TargetRoleArn": { + "description": "The Target Role Arn of the pod identity association.", + "type": "string", + "minLength": 1, + "markdownDescription": "The Target Role Arn of the pod identity association.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" + }, + "ExternalId": { + "description": "The External Id of the pod identity association.", + "type": "string", + "minLength": 1, + "markdownDescription": "The External Id of the pod identity association.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DisableSessionTags": { + "description": "The Disable Session Tags of the pod identity association.", + "type": "boolean", + "minLength": 1, + "markdownDescription": "The Disable Session Tags of the pod identity association.\n\n---\n\nRequired: No \nType: Boolean \nMinimum Length: 1 \nUpdate requires: No interruption\n" + }, "Tags": { - "uniqueItems": true, "description": "An array of key-value pairs to apply to this resource.", - "insertionOrder": false, "type": "array", + "uniqueItems": true, + "insertionOrder": false, "items": { "$ref": "#/definitions/Tag" }, "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "eks:TagResource", + "eks:UntagResource" + ] + }, + "additionalProperties": false, + "required": [ + "ClusterName", + "RoleArn", + "Namespace", + "ServiceAccount" + ], + "primaryIdentifier": [ + "/properties/AssociationArn" + ], + "createOnlyProperties": [ + "/properties/ClusterName", + "/properties/Namespace", + "/properties/ServiceAccount" + ], + "readOnlyProperties": [ + "/properties/AssociationArn", + "/properties/AssociationId", + "/properties/ExternalId" + ], "replacementStrategy": "create_then_delete", + "handlers": { + "create": { + "permissions": [ + "eks:CreatePodIdentityAssociation", + "eks:DescribePodIdentityAssociation", + "eks:TagResource", + "iam:PassRole", + "iam:GetRole" + ] + }, + "read": { + "permissions": [ + "eks:DescribePodIdentityAssociation" + ] + }, + "update": { + "permissions": [ + "eks:DescribePodIdentityAssociation", + "eks:UpdatePodIdentityAssociation", + "eks:TagResource", + "eks:UntagResource", + "iam:PassRole", + "iam:GetRole" + ] + }, + "delete": { + "permissions": [ + "eks:DeletePodIdentityAssociation", + "eks:DescribePodIdentityAssociation" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "ClusterName": { + "$ref": "resource-schema.json#/properties/ClusterName" + } + }, + "required": [ + "ClusterName" + ] + }, + "permissions": [ + "eks:ListPodIdentityAssociations" + ] + } + }, "attributes": { "AssociationArn": { "description": "The ARN of the pod identity association.", @@ -159,10 +178,16 @@ "markdownDescription": "The ARN of the pod identity association.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "AssociationId": { - "minLength": 1, "description": "The ID of the pod identity association.", "type": "string", + "minLength": 1, "markdownDescription": "The ID of the pod identity association.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ExternalId": { + "description": "The External Id of the pod identity association.", + "type": "string", + "minLength": 1, + "markdownDescription": "The External Id of the pod identity association.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-elasticache-parametergroup.json b/server/schema/resources/aws-elasticache-parametergroup.json index 47186de0..611303e5 100644 --- a/server/schema/resources/aws-elasticache-parametergroup.json +++ b/server/schema/resources/aws-elasticache-parametergroup.json @@ -80,45 +80,50 @@ "tagOnCreate": true, "tagUpdatable": true, "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "elasticache:AddTagsToResource", + "elasticache:RemoveTagsFromResource", + "elasticache:ListTagsForResource" + ] }, "handlers": { "create": { "permissions": [ - "ElastiCache:CreateCacheParameterGroup", - "ElastiCache:DescribeCacheParameterGroups", - "ElastiCache:AddTagsToResource", - "ElastiCache:ModifyCacheParameterGroup", + "elasticache:CreateCacheParameterGroup", + "elasticache:DescribeCacheParameterGroups", + "elasticache:AddTagsToResource", + "elasticache:ModifyCacheParameterGroup", "iam:CreateServiceLinkedRole", "iam:PutRolePolicy" ] }, "read": { "permissions": [ - "ElastiCache:DescribeCacheParameterGroups", - "ElastiCache:DescribeCacheParameters", - "ElastiCache:ListTagsForResource" + "elasticache:DescribeCacheParameterGroups", + "elasticache:DescribeCacheParameters", + "elasticache:ListTagsForResource" ] }, "update": { "permissions": [ - "ElastiCache:ModifyCacheParameterGroup", - "ElastiCache:DescribeCacheParameterGroups", - "ElastiCache:DescribeCacheParameters", - "ElastiCache:DescribeEngineDefaultParameters", - "ElastiCache:AddTagsToResource", - "ElastiCache:RemoveTagsFromResource" + "elasticache:ModifyCacheParameterGroup", + "elasticache:DescribeCacheParameterGroups", + "elasticache:DescribeCacheParameters", + "elasticache:DescribeEngineDefaultParameters", + "elasticache:AddTagsToResource", + "elasticache:RemoveTagsFromResource" ] }, "delete": { "permissions": [ - "ElastiCache:DescribeCacheParameterGroups", - "ElastiCache:DeleteCacheParameterGroup" + "elasticache:DescribeCacheParameterGroups", + "elasticache:DeleteCacheParameterGroup" ] }, "list": { "permissions": [ - "ElastiCache:DescribeCacheParameterGroups" + "elasticache:DescribeCacheParameterGroups" ] } }, diff --git a/server/schema/resources/aws-elasticache-subnetgroup.json b/server/schema/resources/aws-elasticache-subnetgroup.json index e32dce58..b4f785fe 100644 --- a/server/schema/resources/aws-elasticache-subnetgroup.json +++ b/server/schema/resources/aws-elasticache-subnetgroup.json @@ -71,7 +71,12 @@ "tagOnCreate": true, "tagUpdatable": true, "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "elasticache:AddTagsToResource", + "elasticache:RemoveTagsFromResource", + "elasticache:ListTagsForResource" + ] }, "handlers": { "create": { diff --git a/server/schema/resources/aws-elasticbeanstalk-application.json b/server/schema/resources/aws-elasticbeanstalk-application.json index 3c2b6fa4..6ebce840 100644 --- a/server/schema/resources/aws-elasticbeanstalk-application.json +++ b/server/schema/resources/aws-elasticbeanstalk-application.json @@ -115,7 +115,21 @@ "handlers": { "create": { "permissions": [ - "elasticbeanstalk:CreateApplication" + "elasticbeanstalk:CreateApplication", + "elasticbeanstalk:DescribeApplications", + "s3:CreateBucket", + "s3:PutBucketAcl", + "s3:PutBucketObjectLockConfiguration", + "s3:PutBucketVersioning", + "s3:PutBucketOwnershipControls", + "s3:PutBucketPolicy", + "s3:PutBucketPublicAccessBlock", + "s3:PutObject", + "s3:ListBucket", + "s3:GetObject", + "s3:GetBucketLocation", + "s3:GetBucketPolicy", + "iam:PassRole" ] }, "read": { @@ -126,12 +140,16 @@ "update": { "permissions": [ "elasticbeanstalk:UpdateApplication", - "elasticbeanstalk:UpdateApplicationResourceLifecycle" + "elasticbeanstalk:UpdateApplicationResourceLifecycle", + "elasticbeanstalk:DescribeApplications", + "iam:PassRole" ] }, "delete": { "permissions": [ - "elasticbeanstalk:DeleteApplication" + "elasticbeanstalk:DeleteApplication", + "elasticbeanstalk:DescribeApplications", + "s3:ListBucket" ] }, "list": { diff --git a/server/schema/resources/aws-elasticbeanstalk-applicationversion.json b/server/schema/resources/aws-elasticbeanstalk-applicationversion.json index 37982c7a..0f4e77fd 100644 --- a/server/schema/resources/aws-elasticbeanstalk-applicationversion.json +++ b/server/schema/resources/aws-elasticbeanstalk-applicationversion.json @@ -84,12 +84,14 @@ }, "update": { "permissions": [ - "elasticbeanstalk:UpdateApplicationVersion" + "elasticbeanstalk:UpdateApplicationVersion", + "elasticbeanstalk:DescribeApplicationVersions" ] }, "delete": { "permissions": [ - "elasticbeanstalk:DeleteApplicationVersion" + "elasticbeanstalk:DeleteApplicationVersion", + "elasticbeanstalk:DescribeApplicationVersions" ] }, "list": { diff --git a/server/schema/resources/aws-elasticbeanstalk-configurationtemplate.json b/server/schema/resources/aws-elasticbeanstalk-configurationtemplate.json index fe4c11a4..d53f8e28 100644 --- a/server/schema/resources/aws-elasticbeanstalk-configurationtemplate.json +++ b/server/schema/resources/aws-elasticbeanstalk-configurationtemplate.json @@ -134,23 +134,55 @@ "handlers": { "create": { "permissions": [ - "elasticbeanstalk:CreateConfigurationTemplate" + "elasticbeanstalk:CreateConfigurationTemplate", + "s3:CreateBucket", + "s3:PutBucketAcl", + "s3:PutBucketObjectLockConfiguration", + "s3:PutBucketVersioning", + "s3:PutBucketOwnershipControls", + "s3:PutBucketPolicy", + "s3:PutBucketPublicAccessBlock", + "s3:PutObject", + "s3:ListBucket", + "s3:GetObject", + "s3:GetBucketLocation", + "s3:GetBucketPolicy", + "ec2:DescribeImages", + "ec2:CreateLaunchTemplate" ] }, "read": { "permissions": [ - "elasticbeanstalk:DescribeConfigurationSettings" + "elasticbeanstalk:DescribeConfigurationSettings", + "ec2:CreateLaunchTemplate", + "s3:ListBucket", + "s3:GetObject", + "s3:GetBucketLocation", + "s3:GetBucketPolicy" ] }, "update": { "permissions": [ - "elasticbeanstalk:UpdateConfigurationTemplate" + "elasticbeanstalk:UpdateConfigurationTemplate", + "ec2:CreateLaunchTemplate", + "s3:PutObject", + "s3:ListBucket", + "s3:GetObject", + "s3:GetBucketLocation", + "s3:GetBucketPolicy", + "ec2:DescribeImages" ] }, "delete": { "permissions": [ "elasticbeanstalk:DeleteConfigurationTemplate", - "elasticbeanstalk:DescribeConfigurationSettings" + "elasticbeanstalk:DescribeConfigurationSettings", + "ec2:CreateLaunchTemplate", + "s3:ListBucket", + "s3:GetObject", + "s3:GetBucketLocation", + "s3:GetBucketPolicy", + "s3:DeleteObject" ] }, "list": { diff --git a/server/schema/resources/aws-elasticloadbalancingv2-listener.json b/server/schema/resources/aws-elasticloadbalancingv2-listener.json index 1db75be9..bcad8044 100644 --- a/server/schema/resources/aws-elasticloadbalancingv2-listener.json +++ b/server/schema/resources/aws-elasticloadbalancingv2-listener.json @@ -148,10 +148,6 @@ "type": "object", "properties": { "TargetGroupArn": { - "relationshipRef": { - "typeName": "AWS::ElasticLoadBalancingV2::TargetGroup", - "propertyPath": "/properties/TargetGroupArn" - }, "description": "The Amazon Resource Name (ARN) of the target group.", "type": "string", "markdownDescription": "The Amazon Resource Name (ARN) of the target group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -175,10 +171,6 @@ "markdownDescription": "The order for the action. This value is required for rules with multiple actions. The action with the lowest value for order is performed first.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "TargetGroupArn": { - "relationshipRef": { - "typeName": "AWS::ElasticLoadBalancingV2::TargetGroup", - "propertyPath": "/properties/TargetGroupArn" - }, "description": "The Amazon Resource Name (ARN) of the target group. Specify only when ``Type`` is ``forward`` and you want to route to a single target group. To route to one or more target groups, use ``ForwardConfig`` instead.", "type": "string", "markdownDescription": "The Amazon Resource Name (ARN) of the target group. Specify only when ``Type`` is ``forward`` and you want to route to a single target group. To route to one or more target groups, use ``ForwardConfig`` instead.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -249,10 +241,6 @@ "markdownDescription": "The ID of the Amazon Cognito user pool client.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "UserPoolDomain": { - "relationshipRef": { - "typeName": "AWS::Cognito::UserPoolDomain", - "propertyPath": "/properties/Id" - }, "description": "The domain prefix or fully-qualified domain name of the Amazon Cognito user pool.", "type": "string", "markdownDescription": "The domain prefix or fully-qualified domain name of the Amazon Cognito user pool.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" @@ -273,10 +261,6 @@ "markdownDescription": "The name of the cookie used to maintain session information. The default is AWSELBAuthSessionCookie.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "UserPoolArn": { - "relationshipRef": { - "typeName": "AWS::Cognito::UserPool", - "propertyPath": "/properties/Arn" - }, "description": "The Amazon Resource Name (ARN) of the Amazon Cognito user pool.", "type": "string", "markdownDescription": "The Amazon Resource Name (ARN) of the Amazon Cognito user pool.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" @@ -352,9 +336,9 @@ "markdownDescription": "Indicates whether target group stickiness is enabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "DurationSeconds": { - "description": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days).", + "description": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days). You must specify this value when enabling target group stickiness.", "type": "integer", - "markdownDescription": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days). You must specify this value when enabling target group stickiness.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "markdownDescription": "Information about the target group stickiness for a rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -534,13 +518,13 @@ "ListenerAttributes": { "arrayType": "AttributeList", "uniqueItems": true, - "description": "The listener attributes.", + "description": "The listener attributes. Attributes that you do not modify retain their current values.", "insertionOrder": false, "type": "array", "items": { "$ref": "#/definitions/ListenerAttribute" }, - "markdownDescription": "The listener attributes.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "The listener attributes. Attributes that you do not modify retain their current values.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "AlpnPolicy": { "description": "[TLS listener] The name of the Application-Layer Protocol Negotiation (ALPN) policy.", @@ -552,9 +536,9 @@ "markdownDescription": "[TLS listener] The name of the Application-Layer Protocol Negotiation (ALPN) policy.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "SslPolicy": { - "description": "[HTTPS and TLS listeners] The security policy that defines which protocols and ciphers are supported. For more information, see [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/describe-ssl-policies.html) in the *Application Load Balancers Guide* and [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/describe-ssl-policies.html) in the *Network Load Balancers Guide*.\n Updating the security policy can result in interruptions if the load balancer is handling a high volume of traffic. To decrease the possibility of an interruption if your load balancer is handling a high volume of traffic, create an additional load balancer or request an LCU reservation.", + "description": "[HTTPS and TLS listeners] The security policy that defines which protocols and ciphers are supported. For more information, see [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/describe-ssl-policies.html) in the *Application Load Balancers Guide* and [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/describe-ssl-policies.html) in the *Network Load Balancers Guide*.\n [HTTPS listeners] Updating the security policy can result in interruptions if the load balancer is handling a high volume of traffic. To decrease the possibility of an interruption if your load balancer is handling a high volume of traffic, create an additional load balancer or request an LCU reservation.", "type": "string", - "markdownDescription": "[HTTPS and TLS listeners] The security policy that defines which protocols and ciphers are supported. For more information, see [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/describe-ssl-policies.html) in the *Application Load Balancers Guide* and [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/describe-ssl-policies.html) in the *Network Load Balancers Guide*.\n Updating the security policy can result in interruptions if the load balancer is handling a high volume of traffic. To decrease the possibility of an interruption if your load balancer is handling a high volume of traffic, create an additional load balancer or request an LCU reservation.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "[HTTPS and TLS listeners] The security policy that defines which protocols and ciphers are supported. For more information, see [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/describe-ssl-policies.html) in the *Application Load Balancers Guide* and [Security policies](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/describe-ssl-policies.html) in the *Network Load Balancers Guide*.\n [HTTPS listeners] Updating the security policy can result in interruptions if the load balancer is handling a high volume of traffic. To decrease the possibility of an interruption if your load balancer is handling a high volume of traffic, create an additional load balancer or request an LCU reservation.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "LoadBalancerArn": { "description": "The Amazon Resource Name (ARN) of the load balancer.", @@ -577,12 +561,12 @@ }, "Certificates": { "uniqueItems": true, - "description": "The default SSL server certificate for a secure listener. You must provide exactly one certificate if the listener protocol is HTTPS or TLS.\n To create a certificate list for a secure listener, use [AWS::ElasticLoadBalancingV2::ListenerCertificate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html).", + "description": "The default SSL server certificate for a secure listener. You must provide exactly one certificate if the listener protocol is HTTPS or TLS.\n For an HTTPS listener, update requires some interruptions. For a TLS listener, update requires no interruption.\n To create a certificate list for a secure listener, use [AWS::ElasticLoadBalancingV2::ListenerCertificate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html).", "type": "array", "items": { "$ref": "#/definitions/Certificate" }, - "markdownDescription": "The default SSL server certificate for a secure listener. You must provide exactly one certificate if the listener protocol is HTTPS or TLS.\n To create a certificate list for a secure listener, use [AWS::ElasticLoadBalancingV2::ListenerCertificate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html).\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "The default SSL server certificate for a secure listener. You must provide exactly one certificate if the listener protocol is HTTPS or TLS.\n For an HTTPS listener, update requires some interruptions. For a TLS listener, update requires no interruption.\n To create a certificate list for a secure listener, use [AWS::ElasticLoadBalancingV2::ListenerCertificate](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenercertificate.html).\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "Protocol": { "description": "The protocol for connections from clients to the load balancer. For Application Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load Balancers, the supported protocols are TCP, TLS, UDP, and TCP_UDP. You can\u2019t specify the UDP or TCP_UDP protocol if dual-stack mode is enabled. You can't specify a protocol for a Gateway Load Balancer.", diff --git a/server/schema/resources/aws-elasticloadbalancingv2-listenerrule.json b/server/schema/resources/aws-elasticloadbalancingv2-listenerrule.json index a5a1c5f4..2a02fd6f 100644 --- a/server/schema/resources/aws-elasticloadbalancingv2-listenerrule.json +++ b/server/schema/resources/aws-elasticloadbalancingv2-listenerrule.json @@ -1,321 +1,355 @@ { + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, "typeName": "AWS::ElasticLoadBalancingV2::ListenerRule", + "readOnlyProperties": [ + "/properties/RuleArn", + "/properties/IsDefault" + ], "description": "Specifies a listener rule. The listener must be associated with an Application Load Balancer. Each rule consists of a priority, one or more actions, and one or more conditions.\n For more information, see [Quotas for your Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html) in the *User Guide for Application Load Balancers*.", + "createOnlyProperties": [ + "/properties/ListenerArn" + ], + "primaryIdentifier": [ + "/properties/RuleArn" + ], + "required": [ + "Actions", + "Priority", + "Conditions" + ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-elasticloadbalancingv2", - "additionalProperties": false, - "properties": { - "ListenerArn": { - "type": "string", - "description": "The Amazon Resource Name (ARN) of the listener.", - "markdownDescription": "The Amazon Resource Name (ARN) of the listener.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "RuleArn": { - "type": "string", - "description": "", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "handlers": { + "read": { + "permissions": [ + "elasticloadbalancing:DescribeRules" + ] }, - "Actions": { - "type": "array", - "uniqueItems": true, - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Action" - }, - "description": "The actions.\n The rule must include exactly one of the following types of actions: ``forward``, ``fixed-response``, or ``redirect``, and it must be the last action to be performed. If the rule is for an HTTPS listener, it can also optionally include an authentication action.", - "markdownDescription": "The actions.\n The rule must include exactly one of the following types of actions: ``forward``, ``fixed-response``, or ``redirect``, and it must be the last action to be performed. If the rule is for an HTTPS listener, it can also optionally include an authentication action.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "create": { + "permissions": [ + "elasticloadbalancing:CreateRule", + "elasticloadbalancing:DescribeRules", + "cognito-idp:DescribeUserPoolClient" + ] }, - "Priority": { - "type": "integer", - "description": "The rule priority. A listener can't have multiple rules with the same priority.\n If you try to reorder rules by updating their priorities, do not specify a new priority if an existing rule already uses this priority, as this can cause an error. If you need to reuse a priority with a different rule, you must remove it as a priority first, and then specify it in a subsequent update.", - "markdownDescription": "The rule priority. A listener can't have multiple rules with the same priority.\n If you try to reorder rules by updating their priorities, do not specify a new priority if an existing rule already uses this priority, as this can cause an error. If you need to reuse a priority with a different rule, you must remove it as a priority first, and then specify it in a subsequent update.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "update": { + "permissions": [ + "elasticloadbalancing:ModifyRule", + "elasticloadbalancing:SetRulePriorities", + "elasticloadbalancing:DescribeRules" + ] }, - "Conditions": { - "type": "array", - "uniqueItems": true, - "insertionOrder": false, - "items": { - "$ref": "#/definitions/RuleCondition" - }, - "description": "The conditions.\n The rule can optionally include up to one of each of the following conditions: ``http-request-method``, ``host-header``, ``path-pattern``, and ``source-ip``. A rule can also optionally include one or more of each of the following conditions: ``http-header`` and ``query-string``.", - "markdownDescription": "The conditions.\n The rule can optionally include up to one of each of the following conditions: ``http-request-method``, ``host-header``, ``path-pattern``, and ``source-ip``. A rule can also optionally include one or more of each of the following conditions: ``http-header`` and ``query-string``.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "list": { + "permissions": [ + "elasticloadbalancing:DescribeRules" + ], + "handlerSchema": { + "oneOf": [ + { + "required": [ + "ListenerArn" + ] + }, + { + "required": [ + "RuleArns" + ] + } + ], + "properties": { + "ListenerArn": { + "$ref": "resource-schema.json#/properties/ListenerArn" + }, + "RuleArns": { + "uniqueItems": false, + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "resource-schema.json#/properties/RuleArn" + }, + "markdownDescription": "\n\n---\n\nRequired: Conditional \nType: Array \nUpdate requires: No interruption\n" + } + } + } }, - "IsDefault": { - "type": "boolean", - "description": "", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\nRead only property: Yes" + "delete": { + "permissions": [ + "elasticloadbalancing:DeleteRule", + "elasticloadbalancing:DescribeRules" + ] } }, + "writeOnlyProperties": [ + "/properties/Actions/*/AuthenticateOidcConfig/ClientSecret", + "/properties/ListenerArn" + ], + "additionalProperties": false, "definitions": { "TargetGroupTuple": { - "type": "object", + "description": "Information about how traffic will be distributed between multiple target groups in a forward rule.", "additionalProperties": false, + "type": "object", "properties": { "TargetGroupArn": { - "type": "string", "description": "The Amazon Resource Name (ARN) of the target group.", + "type": "string", "markdownDescription": "The Amazon Resource Name (ARN) of the target group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Weight": { - "type": "integer", "description": "The weight. The range is 0 to 999.", + "type": "integer", "markdownDescription": "The weight. The range is 0 to 999.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, - "description": "Information about how traffic will be distributed between multiple target groups in a forward rule.", "markdownDescription": "Information about how traffic will be distributed between multiple target groups in a forward rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Action": { - "type": "object", + "description": "Specifies an action for a listener rule.", "additionalProperties": false, + "type": "object", "properties": { "Order": { - "type": "integer", "description": "The order for the action. This value is required for rules with multiple actions. The action with the lowest value for order is performed first.", + "type": "integer", "markdownDescription": "The order for the action. This value is required for rules with multiple actions. The action with the lowest value for order is performed first.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "TargetGroupArn": { - "type": "string", "description": "The Amazon Resource Name (ARN) of the target group. Specify only when ``Type`` is ``forward`` and you want to route to a single target group. To route to one or more target groups, use ``ForwardConfig`` instead.", + "type": "string", "markdownDescription": "The Amazon Resource Name (ARN) of the target group. Specify only when ``Type`` is ``forward`` and you want to route to a single target group. To route to one or more target groups, use ``ForwardConfig`` instead.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "FixedResponseConfig": { - "$ref": "#/definitions/FixedResponseConfig", "description": "[Application Load Balancer] Information for creating an action that returns a custom HTTP response. Specify only when ``Type`` is ``fixed-response``.", + "$ref": "#/definitions/FixedResponseConfig", "markdownDescription": "[Application Load Balancer] Information for creating an action that returns a custom HTTP response. Specify only when ``Type`` is ``fixed-response``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "AuthenticateCognitoConfig": { - "$ref": "#/definitions/AuthenticateCognitoConfig", "description": "[HTTPS listeners] Information for using Amazon Cognito to authenticate users. Specify only when ``Type`` is ``authenticate-cognito``.", + "$ref": "#/definitions/AuthenticateCognitoConfig", "markdownDescription": "[HTTPS listeners] Information for using Amazon Cognito to authenticate users. Specify only when ``Type`` is ``authenticate-cognito``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "Type": { - "type": "string", "description": "The type of action.", + "type": "string", "markdownDescription": "The type of action.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "RedirectConfig": { - "$ref": "#/definitions/RedirectConfig", "description": "[Application Load Balancer] Information for creating a redirect action. Specify only when ``Type`` is ``redirect``.", + "$ref": "#/definitions/RedirectConfig", "markdownDescription": "[Application Load Balancer] Information for creating a redirect action. Specify only when ``Type`` is ``redirect``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "ForwardConfig": { - "$ref": "#/definitions/ForwardConfig", "description": "Information for creating an action that distributes requests among one or more target groups. For Network Load Balancers, you can specify a single target group. Specify only when ``Type`` is ``forward``. If you specify both ``ForwardConfig`` and ``TargetGroupArn``, you can specify only one target group using ``ForwardConfig`` and it must be the same target group specified in ``TargetGroupArn``.", + "$ref": "#/definitions/ForwardConfig", "markdownDescription": "Information for creating an action that distributes requests among one or more target groups. For Network Load Balancers, you can specify a single target group. Specify only when ``Type`` is ``forward``. If you specify both ``ForwardConfig`` and ``TargetGroupArn``, you can specify only one target group using ``ForwardConfig`` and it must be the same target group specified in ``TargetGroupArn``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "AuthenticateOidcConfig": { - "$ref": "#/definitions/AuthenticateOidcConfig", "description": "[HTTPS listeners] Information about an identity provider that is compliant with OpenID Connect (OIDC). Specify only when ``Type`` is ``authenticate-oidc``.", + "$ref": "#/definitions/AuthenticateOidcConfig", "markdownDescription": "[HTTPS listeners] Information about an identity provider that is compliant with OpenID Connect (OIDC). Specify only when ``Type`` is ``authenticate-oidc``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, "required": [ "Type" ], - "description": "Specifies an action for a listener rule.", "markdownDescription": "Specifies an action for a listener rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "RuleCondition": { - "type": "object", + "description": "Specifies a condition for a listener rule.", "additionalProperties": false, + "type": "object", "properties": { "Field": { - "type": "string", "description": "The field in the HTTP request. The following are the possible values:\n + ``http-header`` \n + ``http-request-method`` \n + ``host-header`` \n + ``path-pattern`` \n + ``query-string`` \n + ``source-ip``", + "type": "string", "markdownDescription": "The field in the HTTP request. The following are the possible values:\n + ``http-header`` \n + ``http-request-method`` \n + ``host-header`` \n + ``path-pattern`` \n + ``query-string`` \n + ``source-ip``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "HttpHeaderConfig": { + "description": "Information for an HTTP header condition. Specify only when ``Field`` is ``http-header``.", + "$ref": "#/definitions/HttpHeaderConfig", + "markdownDescription": "Information for an HTTP header condition. Specify only when ``Field`` is ``http-header``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, "Values": { - "type": "array", - "uniqueItems": true, - "insertionOrder": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, "description": "The condition value. Specify only when ``Field`` is ``host-header`` or ``path-pattern``. Alternatively, to specify multiple host names or multiple path patterns, use ``HostHeaderConfig`` or ``PathPatternConfig``.\n If ``Field`` is ``host-header`` and you're not using ``HostHeaderConfig``, you can specify a single host name (for example, my.example.com). A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters.\n + A-Z, a-z, 0-9\n + - .\n + * (matches 0 or more characters)\n + ? (matches exactly 1 character)\n \n If ``Field`` is ``path-pattern`` and you're not using ``PathPatternConfig``, you can specify a single path pattern (for example, /img/*). A path pattern is case-sensitive, can be up to 128 characters in length, and can contain any of the following characters.\n + A-Z, a-z, 0-9\n + _ - . $ / ~ \" ' @ : +\n + & (using &)\n + * (matches 0 or more characters)\n + ? (matches exactly 1 character)", - "markdownDescription": "The condition value. Specify only when ``Field`` is ``host-header`` or ``path-pattern``. Alternatively, to specify multiple host names or multiple path patterns, use ``HostHeaderConfig`` or ``PathPatternConfig``.\n If ``Field`` is ``host-header`` and you're not using ``HostHeaderConfig``, you can specify a single host name (for example, my.example.com). A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters.\n + A-Z, a-z, 0-9\n + - .\n + * (matches 0 or more characters)\n + ? (matches exactly 1 character)\n \n If ``Field`` is ``path-pattern`` and you're not using ``PathPatternConfig``, you can specify a single path pattern (for example, /img/*). A path pattern is case-sensitive, can be up to 128 characters in length, and can contain any of the following characters.\n + A-Z, a-z, 0-9\n + _ - . $ / ~ \" ' @ : +\n + & (using &)\n + * (matches 0 or more characters)\n + ? (matches exactly 1 character)\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "$ref": "#/definitions/ListOfStrings", + "markdownDescription": "The condition value. Specify only when ``Field`` is ``host-header`` or ``path-pattern``. Alternatively, to specify multiple host names or multiple path patterns, use ``HostHeaderConfig`` or ``PathPatternConfig``.\n If ``Field`` is ``host-header`` and you're not using ``HostHeaderConfig``, you can specify a single host name (for example, my.example.com). A host name is case insensitive, can be up to 128 characters in length, and can contain any of the following characters.\n + A-Z, a-z, 0-9\n + - .\n + * (matches 0 or more characters)\n + ? (matches exactly 1 character)\n \n If ``Field`` is ``path-pattern`` and you're not using ``PathPatternConfig``, you can specify a single path pattern (for example, /img/*). A path pattern is case-sensitive, can be up to 128 characters in length, and can contain any of the following characters.\n + A-Z, a-z, 0-9\n + _ - . $ / ~ \" ' @ : +\n + & (using &)\n + * (matches 0 or more characters)\n + ? (matches exactly 1 character)\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "QueryStringConfig": { + "description": "Information for a query string condition. Specify only when ``Field`` is ``query-string``.", + "$ref": "#/definitions/QueryStringConfig", + "markdownDescription": "Information for a query string condition. Specify only when ``Field`` is ``query-string``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "HostHeaderConfig": { + "description": "Information for a host header condition. Specify only when ``Field`` is ``host-header``.", + "$ref": "#/definitions/HostHeaderConfig", + "markdownDescription": "Information for a host header condition. Specify only when ``Field`` is ``host-header``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "HttpRequestMethodConfig": { - "$ref": "#/definitions/HttpRequestMethodConfig", "description": "Information for an HTTP method condition. Specify only when ``Field`` is ``http-request-method``.", + "$ref": "#/definitions/HttpRequestMethodConfig", "markdownDescription": "Information for an HTTP method condition. Specify only when ``Field`` is ``http-request-method``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "PathPatternConfig": { - "$ref": "#/definitions/PathPatternConfig", "description": "Information for a path pattern condition. Specify only when ``Field`` is ``path-pattern``.", + "$ref": "#/definitions/PathPatternConfig", "markdownDescription": "Information for a path pattern condition. Specify only when ``Field`` is ``path-pattern``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, - "HttpHeaderConfig": { - "$ref": "#/definitions/HttpHeaderConfig", - "description": "Information for an HTTP header condition. Specify only when ``Field`` is ``http-header``.", - "markdownDescription": "Information for an HTTP header condition. Specify only when ``Field`` is ``http-header``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, "SourceIpConfig": { - "$ref": "#/definitions/SourceIpConfig", "description": "Information for a source IP condition. Specify only when ``Field`` is ``source-ip``.", + "$ref": "#/definitions/SourceIpConfig", "markdownDescription": "Information for a source IP condition. Specify only when ``Field`` is ``source-ip``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, - "HostHeaderConfig": { - "$ref": "#/definitions/HostHeaderConfig", - "description": "Information for a host header condition. Specify only when ``Field`` is ``host-header``.", - "markdownDescription": "Information for a host header condition. Specify only when ``Field`` is ``host-header``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, - "QueryStringConfig": { - "$ref": "#/definitions/QueryStringConfig", - "description": "Information for a query string condition. Specify only when ``Field`` is ``query-string``.", - "markdownDescription": "Information for a query string condition. Specify only when ``Field`` is ``query-string``.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, - "description": "Specifies a condition for a listener rule.", "markdownDescription": "Specifies a condition for a listener rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ListOfStrings": { + "uniqueItems": true, + "insertionOrder": false, + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "QueryStringConfig": { - "type": "object", + "description": "Information about a query string condition.\n The query string component of a URI starts after the first '?' character and is terminated by either a '#' character or the end of the URI. A typical query string contains key/value pairs separated by '&' characters. The allowed characters are specified by RFC 3986. Any character can be percentage encoded.", "additionalProperties": false, + "type": "object", "properties": { "Values": { - "type": "array", "uniqueItems": true, + "description": "The key/value pairs or values to find in the query string. The maximum size of each string is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). To search for a literal '*' or '?' character in a query string, you must escape these characters in ``Values`` using a '\\' character.\n If you specify multiple key/value pairs or values, the condition is satisfied if one of them is found in the query string.", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/QueryStringKeyValue" }, - "description": "The key/value pairs or values to find in the query string. The maximum size of each string is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). To search for a literal '*' or '?' character in a query string, you must escape these characters in ``Values`` using a '\\' character.\n If you specify multiple key/value pairs or values, the condition is satisfied if one of them is found in the query string.", "markdownDescription": "The key/value pairs or values to find in the query string. The maximum size of each string is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). To search for a literal '*' or '?' character in a query string, you must escape these characters in ``Values`` using a '\\' character.\n If you specify multiple key/value pairs or values, the condition is satisfied if one of them is found in the query string.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "description": "Information about a query string condition.\n The query string component of a URI starts after the first '?' character and is terminated by either a '#' character or the end of the URI. A typical query string contains key/value pairs separated by '&' characters. The allowed characters are specified by RFC 3986. Any character can be percentage encoded.", "markdownDescription": "Information about a query string condition.\n The query string component of a URI starts after the first '?' character and is terminated by either a '#' character or the end of the URI. A typical query string contains key/value pairs separated by '&' characters. The allowed characters are specified by RFC 3986. Any character can be percentage encoded.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "TargetGroupStickinessConfig": { - "type": "object", + "description": "Information about the target group stickiness for a rule.", "additionalProperties": false, + "type": "object", "properties": { "Enabled": { - "type": "boolean", "description": "Indicates whether target group stickiness is enabled.", + "type": "boolean", "markdownDescription": "Indicates whether target group stickiness is enabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "DurationSeconds": { + "description": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days). You must specify this value when enabling target group stickiness.", "type": "integer", - "description": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days).", - "markdownDescription": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The time period, in seconds, during which requests from a client should be routed to the same target group. The range is 1-604800 seconds (7 days). You must specify this value when enabling target group stickiness.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, - "description": "Information about the target group stickiness for a rule.", "markdownDescription": "Information about the target group stickiness for a rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "PathPatternConfig": { - "type": "object", + "description": "Information about a path pattern condition.", "additionalProperties": false, + "type": "object", "properties": { "Values": { - "type": "array", - "uniqueItems": true, - "insertionOrder": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, "description": "The path patterns to compare against the request URL. The maximum size of each string is 128 characters. The comparison is case sensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If you specify multiple strings, the condition is satisfied if one of them matches the request URL. The path pattern is compared only to the path of the URL, not to its query string.", - "markdownDescription": "The path patterns to compare against the request URL. The maximum size of each string is 128 characters. The comparison is case sensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If you specify multiple strings, the condition is satisfied if one of them matches the request URL. The path pattern is compared only to the path of the URL, not to its query string.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "$ref": "#/definitions/ListOfStrings", + "markdownDescription": "The path patterns to compare against the request URL. The maximum size of each string is 128 characters. The comparison is case sensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If you specify multiple strings, the condition is satisfied if one of them matches the request URL. The path pattern is compared only to the path of the URL, not to its query string.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, - "description": "Information about a path pattern condition.", "markdownDescription": "Information about a path pattern condition.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "FixedResponseConfig": { - "type": "object", + "description": "Specifies information required when returning a custom HTTP response.", "additionalProperties": false, + "type": "object", "properties": { "ContentType": { - "type": "string", "description": "The content type.\n Valid Values: text/plain | text/css | text/html | application/javascript | application/json", + "type": "string", "markdownDescription": "The content type.\n Valid Values: text/plain | text/css | text/html | application/javascript | application/json\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "StatusCode": { - "type": "string", "description": "The HTTP response code (2XX, 4XX, or 5XX).", + "type": "string", "markdownDescription": "The HTTP response code (2XX, 4XX, or 5XX).\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "MessageBody": { - "type": "string", "description": "The message.", + "type": "string", "markdownDescription": "The message.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, "required": [ "StatusCode" ], - "description": "Specifies information required when returning a custom HTTP response.", "markdownDescription": "Specifies information required when returning a custom HTTP response.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "HttpHeaderConfig": { - "type": "object", + "description": "Information about an HTTP header condition.\n There is a set of standard HTTP header fields. You can also define custom HTTP header fields.", "additionalProperties": false, + "type": "object", "properties": { "Values": { - "type": "array", - "uniqueItems": true, - "insertionOrder": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, "description": "The strings to compare against the value of the HTTP header. The maximum size of each string is 128 characters. The comparison strings are case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If the same header appears multiple times in the request, we search them in order until a match is found.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the value of the HTTP header. To require that all of the strings are a match, create one condition per string.", - "markdownDescription": "The strings to compare against the value of the HTTP header. The maximum size of each string is 128 characters. The comparison strings are case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If the same header appears multiple times in the request, we search them in order until a match is found.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the value of the HTTP header. To require that all of the strings are a match, create one condition per string.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "$ref": "#/definitions/ListOfStrings", + "markdownDescription": "The strings to compare against the value of the HTTP header. The maximum size of each string is 128 characters. The comparison strings are case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If the same header appears multiple times in the request, we search them in order until a match is found.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the value of the HTTP header. To require that all of the strings are a match, create one condition per string.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "HttpHeaderName": { - "type": "string", "description": "The name of the HTTP header field. The maximum size is 40 characters. The header name is case insensitive. The allowed characters are specified by RFC 7230. Wildcards are not supported.", + "type": "string", "markdownDescription": "The name of the HTTP header field. The maximum size is 40 characters. The header name is case insensitive. The allowed characters are specified by RFC 7230. Wildcards are not supported.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "description": "Information about an HTTP header condition.\n There is a set of standard HTTP header fields. You can also define custom HTTP header fields.", "markdownDescription": "Information about an HTTP header condition.\n There is a set of standard HTTP header fields. You can also define custom HTTP header fields.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "AuthenticateCognitoConfig": { - "type": "object", + "description": "Specifies information required when integrating with Amazon Cognito to authenticate users.", "additionalProperties": false, + "type": "object", "properties": { "OnUnauthenticatedRequest": { - "type": "string", "description": "The behavior if the user is not authenticated. The following are possible values:\n + deny```` - Return an HTTP 401 Unauthorized error.\n + allow```` - Allow the request to be forwarded to the target.\n + authenticate```` - Redirect the request to the IdP authorization endpoint. This is the default value.", + "type": "string", "markdownDescription": "The behavior if the user is not authenticated. The following are possible values:\n + deny```` - Return an HTTP 401 Unauthorized error.\n + allow```` - Allow the request to be forwarded to the target.\n + authenticate```` - Redirect the request to the IdP authorization endpoint. This is the default value.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "UserPoolClientId": { - "type": "string", "description": "The ID of the Amazon Cognito user pool client.", + "type": "string", "markdownDescription": "The ID of the Amazon Cognito user pool client.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "UserPoolDomain": { - "type": "string", "description": "The domain prefix or fully-qualified domain name of the Amazon Cognito user pool.", + "type": "string", "markdownDescription": "The domain prefix or fully-qualified domain name of the Amazon Cognito user pool.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "SessionTimeout": { - "type": "integer", "description": "The maximum duration of the authentication session, in seconds. The default is 604800 seconds (7 days).", + "type": "integer", "markdownDescription": "The maximum duration of the authentication session, in seconds. The default is 604800 seconds (7 days).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "Scope": { - "type": "string", "description": "The set of user claims to be requested from the IdP. The default is ``openid``.\n To verify which scope values your IdP supports and how to separate multiple values, see the documentation for your IdP.", + "type": "string", "markdownDescription": "The set of user claims to be requested from the IdP. The default is ``openid``.\n To verify which scope values your IdP supports and how to separate multiple values, see the documentation for your IdP.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "SessionCookieName": { - "type": "string", "description": "The name of the cookie used to maintain session information. The default is AWSELBAuthSessionCookie.", + "type": "string", "markdownDescription": "The name of the cookie used to maintain session information. The default is AWSELBAuthSessionCookie.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "UserPoolArn": { - "type": "string", "description": "The Amazon Resource Name (ARN) of the Amazon Cognito user pool.", + "type": "string", "markdownDescription": "The Amazon Resource Name (ARN) of the Amazon Cognito user pool.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "AuthenticationRequestExtraParams": { - "type": "object", - "additionalProperties": false, "patternProperties": { "[a-zA-Z0-9]+": { "type": "string", @@ -323,6 +357,8 @@ } }, "description": "The query parameters (up to 10) to include in the redirect request to the authorization endpoint.", + "additionalProperties": false, + "type": "object", "markdownDescription": "The query parameters (up to 10) to include in the redirect request to the authorization endpoint.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, @@ -331,191 +367,189 @@ "UserPoolDomain", "UserPoolArn" ], - "description": "Specifies information required when integrating with Amazon Cognito to authenticate users.", "markdownDescription": "Specifies information required when integrating with Amazon Cognito to authenticate users.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "RedirectConfig": { - "type": "object", + "description": "Information about a redirect action.\n A URI consists of the following components: protocol://hostname:port/path?query. You must modify at least one of the following components to avoid a redirect loop: protocol, hostname, port, or path. Any components that you do not modify retain their original values.\n You can reuse URI components using the following reserved keywords:\n + #{protocol}\n + #{host}\n + #{port}\n + #{path} (the leading \"/\" is removed)\n + #{query}\n \n For example, you can change the path to \"/new/#{path}\", the hostname to \"example.#{host}\", or the query to \"#{query}&value=xyz\".", "additionalProperties": false, + "type": "object", "properties": { "Path": { - "type": "string", "description": "The absolute path, starting with the leading \"/\". This component is not percent-encoded. The path can contain #{host}, #{path}, and #{port}.", + "type": "string", "markdownDescription": "The absolute path, starting with the leading \"/\". This component is not percent-encoded. The path can contain #{host}, #{path}, and #{port}.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Query": { - "type": "string", "description": "The query parameters, URL-encoded when necessary, but not percent-encoded. Do not include the leading \"?\", as it is automatically added. You can specify any of the reserved keywords.", + "type": "string", "markdownDescription": "The query parameters, URL-encoded when necessary, but not percent-encoded. Do not include the leading \"?\", as it is automatically added. You can specify any of the reserved keywords.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Port": { - "type": "string", "description": "The port. You can specify a value from 1 to 65535 or #{port}.", + "type": "string", "markdownDescription": "The port. You can specify a value from 1 to 65535 or #{port}.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Host": { - "type": "string", "description": "The hostname. This component is not percent-encoded. The hostname can contain #{host}.", + "type": "string", "markdownDescription": "The hostname. This component is not percent-encoded. The hostname can contain #{host}.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Protocol": { - "type": "string", "description": "The protocol. You can specify HTTP, HTTPS, or #{protocol}. You can redirect HTTP to HTTP, HTTP to HTTPS, and HTTPS to HTTPS. You can't redirect HTTPS to HTTP.", + "type": "string", "markdownDescription": "The protocol. You can specify HTTP, HTTPS, or #{protocol}. You can redirect HTTP to HTTP, HTTP to HTTPS, and HTTPS to HTTPS. You can't redirect HTTPS to HTTP.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "StatusCode": { - "type": "string", "description": "The HTTP redirect code. The redirect is either permanent (HTTP 301) or temporary (HTTP 302).", + "type": "string", "markdownDescription": "The HTTP redirect code. The redirect is either permanent (HTTP 301) or temporary (HTTP 302).\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, "required": [ "StatusCode" ], - "description": "Information about a redirect action.\n A URI consists of the following components: protocol://hostname:port/path?query. You must modify at least one of the following components to avoid a redirect loop: protocol, hostname, port, or path. Any components that you do not modify retain their original values.\n You can reuse URI components using the following reserved keywords:\n + #{protocol}\n + #{host}\n + #{port}\n + #{path} (the leading \"/\" is removed)\n + #{query}\n \n For example, you can change the path to \"/new/#{path}\", the hostname to \"example.#{host}\", or the query to \"#{query}&value=xyz\".", "markdownDescription": "Information about a redirect action.\n A URI consists of the following components: protocol://hostname:port/path?query. You must modify at least one of the following components to avoid a redirect loop: protocol, hostname, port, or path. Any components that you do not modify retain their original values.\n You can reuse URI components using the following reserved keywords:\n + #{protocol}\n + #{host}\n + #{port}\n + #{path} (the leading \"/\" is removed)\n + #{query}\n \n For example, you can change the path to \"/new/#{path}\", the hostname to \"example.#{host}\", or the query to \"#{query}&value=xyz\".\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "QueryStringKeyValue": { - "type": "object", + "description": "Information about a key/value pair.", "additionalProperties": false, + "type": "object", "properties": { "Value": { - "type": "string", "description": "The value.", + "type": "string", "markdownDescription": "The value.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Key": { - "type": "string", "description": "The key. You can omit the key.", + "type": "string", "markdownDescription": "The key. You can omit the key.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "description": "Information about a key/value pair.", "markdownDescription": "Information about a key/value pair.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "ForwardConfig": { - "type": "object", + "description": "Information for creating an action that distributes requests among one or more target groups. For Network Load Balancers, you can specify a single target group. Specify only when ``Type`` is ``forward``. If you specify both ``ForwardConfig`` and ``TargetGroupArn``, you can specify only one target group using ``ForwardConfig`` and it must be the same target group specified in ``TargetGroupArn``.", "additionalProperties": false, + "type": "object", "properties": { "TargetGroupStickinessConfig": { - "$ref": "#/definitions/TargetGroupStickinessConfig", "description": "Information about the target group stickiness for a rule.", + "$ref": "#/definitions/TargetGroupStickinessConfig", "markdownDescription": "Information about the target group stickiness for a rule.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "TargetGroups": { - "type": "array", "uniqueItems": true, + "description": "Information about how traffic will be distributed between multiple target groups in a forward rule.", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/TargetGroupTuple" }, - "description": "Information about how traffic will be distributed between multiple target groups in a forward rule.", "markdownDescription": "Information about how traffic will be distributed between multiple target groups in a forward rule.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "description": "Information for creating an action that distributes requests among one or more target groups. For Network Load Balancers, you can specify a single target group. Specify only when ``Type`` is ``forward``. If you specify both ``ForwardConfig`` and ``TargetGroupArn``, you can specify only one target group using ``ForwardConfig`` and it must be the same target group specified in ``TargetGroupArn``.", "markdownDescription": "Information for creating an action that distributes requests among one or more target groups. For Network Load Balancers, you can specify a single target group. Specify only when ``Type`` is ``forward``. If you specify both ``ForwardConfig`` and ``TargetGroupArn``, you can specify only one target group using ``ForwardConfig`` and it must be the same target group specified in ``TargetGroupArn``.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "HostHeaderConfig": { - "type": "object", + "description": "Information about a host header condition.", "additionalProperties": false, + "type": "object", "properties": { "Values": { - "type": "array", - "uniqueItems": true, - "insertionOrder": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "description": "The host names. The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If you specify multiple strings, the condition is satisfied if one of the strings matches the host name.", - "markdownDescription": "The host names. The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).\n If you specify multiple strings, the condition is satisfied if one of the strings matches the host name.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "description": "The host names. The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). You must include at least one \".\" character. You can include only alphabetical characters after the final \".\" character.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the host name.", + "$ref": "#/definitions/ListOfStrings", + "markdownDescription": "The host names. The maximum size of each name is 128 characters. The comparison is case insensitive. The following wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1 character). You must include at least one \".\" character. You can include only alphabetical characters after the final \".\" character.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the host name.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, - "description": "Information about a host header condition.", "markdownDescription": "Information about a host header condition.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "HttpRequestMethodConfig": { - "type": "object", + "description": "Information about an HTTP method condition.\n HTTP defines a set of request methods, also referred to as HTTP verbs. For more information, see the [HTTP Method Registry](https://docs.aws.amazon.com/https://www.iana.org/assignments/http-methods/http-methods.xhtml). You can also define custom HTTP methods.", "additionalProperties": false, + "type": "object", "properties": { "Values": { - "type": "array", - "uniqueItems": true, - "insertionOrder": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, "description": "The name of the request method. The maximum size is 40 characters. The allowed characters are A-Z, hyphen (-), and underscore (_). The comparison is case sensitive. Wildcards are not supported; therefore, the method name must be an exact match.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the HTTP request method. We recommend that you route GET and HEAD requests in the same way, because the response to a HEAD request may be cached.", - "markdownDescription": "The name of the request method. The maximum size is 40 characters. The allowed characters are A-Z, hyphen (-), and underscore (_). The comparison is case sensitive. Wildcards are not supported; therefore, the method name must be an exact match.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the HTTP request method. We recommend that you route GET and HEAD requests in the same way, because the response to a HEAD request may be cached.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "$ref": "#/definitions/ListOfStrings", + "markdownDescription": "The name of the request method. The maximum size is 40 characters. The allowed characters are A-Z, hyphen (-), and underscore (_). The comparison is case sensitive. Wildcards are not supported; therefore, the method name must be an exact match.\n If you specify multiple strings, the condition is satisfied if one of the strings matches the HTTP request method. We recommend that you route GET and HEAD requests in the same way, because the response to a HEAD request may be cached.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, - "description": "Information about an HTTP method condition.\n HTTP defines a set of request methods, also referred to as HTTP verbs. For more information, see the [HTTP Method Registry](https://docs.aws.amazon.com/https://www.iana.org/assignments/http-methods/http-methods.xhtml). You can also define custom HTTP methods.", "markdownDescription": "Information about an HTTP method condition.\n HTTP defines a set of request methods, also referred to as HTTP verbs. For more information, see the [HTTP Method Registry](https://docs.aws.amazon.com/https://www.iana.org/assignments/http-methods/http-methods.xhtml). You can also define custom HTTP methods.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "AuthenticateOidcConfig": { - "type": "object", + "anyOf": [ + { + "required": [ + "ClientSecret" + ] + }, + { + "required": [ + "UseExistingClientSecret" + ] + } + ], + "description": "Specifies information required using an identity provide (IdP) that is compliant with OpenID Connect (OIDC) to authenticate users.", "additionalProperties": false, + "type": "object", "properties": { "OnUnauthenticatedRequest": { - "type": "string", "description": "The behavior if the user is not authenticated. The following are possible values:\n + deny```` - Return an HTTP 401 Unauthorized error.\n + allow```` - Allow the request to be forwarded to the target.\n + authenticate```` - Redirect the request to the IdP authorization endpoint. This is the default value.", + "type": "string", "markdownDescription": "The behavior if the user is not authenticated. The following are possible values:\n + deny```` - Return an HTTP 401 Unauthorized error.\n + allow```` - Allow the request to be forwarded to the target.\n + authenticate```` - Redirect the request to the IdP authorization endpoint. This is the default value.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "TokenEndpoint": { - "type": "string", "description": "The token endpoint of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.", + "type": "string", "markdownDescription": "The token endpoint of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: No interruption\n" }, + "UseExistingClientSecret": { + "description": "Indicates whether to use the existing client secret when modifying a rule. If you are creating a rule, you can omit this parameter or set it to false.", + "type": "boolean", + "markdownDescription": "Indicates whether to use the existing client secret when modifying a rule. If you are creating a rule, you can omit this parameter or set it to false.\n\n---\n\nRequired: Conditional \nType: Boolean \nUpdate requires: No interruption\n" + }, "SessionTimeout": { - "type": "integer", "description": "The maximum duration of the authentication session, in seconds. The default is 604800 seconds (7 days).", + "type": "integer", "markdownDescription": "The maximum duration of the authentication session, in seconds. The default is 604800 seconds (7 days).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "Scope": { - "type": "string", "description": "The set of user claims to be requested from the IdP. The default is ``openid``.\n To verify which scope values your IdP supports and how to separate multiple values, see the documentation for your IdP.", + "type": "string", "markdownDescription": "The set of user claims to be requested from the IdP. The default is ``openid``.\n To verify which scope values your IdP supports and how to separate multiple values, see the documentation for your IdP.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Issuer": { - "type": "string", "description": "The OIDC issuer identifier of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.", + "type": "string", "markdownDescription": "The OIDC issuer identifier of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: No interruption\n" }, "ClientSecret": { - "type": "string", "description": "The OAuth 2.0 client secret. This parameter is required if you are creating a rule. If you are modifying a rule, you can omit this parameter if you set ``UseExistingClientSecret`` to true.", + "type": "string", "markdownDescription": "The OAuth 2.0 client secret. This parameter is required if you are creating a rule. If you are modifying a rule, you can omit this parameter if you set ``UseExistingClientSecret`` to true.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: No interruption\n" }, "UserInfoEndpoint": { - "type": "string", "description": "The user info endpoint of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.", + "type": "string", "markdownDescription": "The user info endpoint of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: No interruption\n" }, "ClientId": { - "type": "string", "description": "The OAuth 2.0 client identifier.", + "type": "string", "markdownDescription": "The OAuth 2.0 client identifier.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: No interruption\n" }, "AuthorizationEndpoint": { - "type": "string", "description": "The authorization endpoint of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.", + "type": "string", "markdownDescription": "The authorization endpoint of the IdP. This must be a full URL, including the HTTPS protocol, the domain, and the path.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: No interruption\n" }, "SessionCookieName": { - "type": "string", "description": "The name of the cookie used to maintain session information. The default is AWSELBAuthSessionCookie.", + "type": "string", "markdownDescription": "The name of the cookie used to maintain session information. The default is AWSELBAuthSessionCookie.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "UseExistingClientSecret": { - "type": "boolean", - "description": "Indicates whether to use the existing client secret when modifying a rule. If you are creating a rule, you can omit this parameter or set it to false.", - "markdownDescription": "Indicates whether to use the existing client secret when modifying a rule. If you are creating a rule, you can omit this parameter or set it to false.\n\n---\n\nRequired: Conditional \nType: Boolean \nUpdate requires: No interruption\n" - }, "AuthenticationRequestExtraParams": { - "type": "object", - "additionalProperties": false, "patternProperties": { "[a-zA-Z0-9]+": { "type": "string", @@ -523,6 +557,8 @@ } }, "description": "The query parameters (up to 10) to include in the redirect request to the authorization endpoint.", + "additionalProperties": false, + "type": "object", "markdownDescription": "The query parameters (up to 10) to include in the redirect request to the authorization endpoint.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, @@ -533,136 +569,80 @@ "ClientId", "AuthorizationEndpoint" ], - "anyOf": [ - { - "required": [ - "ClientSecret" - ] - }, - { - "required": [ - "UseExistingClientSecret" - ] - } - ], - "description": "Specifies information required using an identity provide (IdP) that is compliant with OpenID Connect (OIDC) to authenticate users.", "markdownDescription": "Specifies information required using an identity provide (IdP) that is compliant with OpenID Connect (OIDC) to authenticate users.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "SourceIpConfig": { - "type": "object", + "description": "Information about a source IP condition.\n You can use this condition to route based on the IP address of the source that connects to the load balancer. If a client is behind a proxy, this is the IP address of the proxy not the IP address of the client.", "additionalProperties": false, + "type": "object", "properties": { "Values": { - "type": "array", "uniqueItems": true, + "description": "The source IP addresses, in CIDR format. You can use both IPv4 and IPv6 addresses. Wildcards are not supported.\n If you specify multiple addresses, the condition is satisfied if the source IP address of the request matches one of the CIDR blocks. This condition is not satisfied by the addresses in the X-Forwarded-For header.", "insertionOrder": false, + "type": "array", "items": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "description": "The source IP addresses, in CIDR format. You can use both IPv4 and IPv6 addresses. Wildcards are not supported.\n If you specify multiple addresses, the condition is satisfied if the source IP address of the request matches one of the CIDR blocks. This condition is not satisfied by the addresses in the X-Forwarded-For header.", "markdownDescription": "The source IP addresses, in CIDR format. You can use both IPv4 and IPv6 addresses. Wildcards are not supported.\n If you specify multiple addresses, the condition is satisfied if the source IP address of the request matches one of the CIDR blocks. This condition is not satisfied by the addresses in the X-Forwarded-For header.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "description": "Information about a source IP condition.\n You can use this condition to route based on the IP address of the source that connects to the load balancer. If a client is behind a proxy, this is the IP address of the proxy not the IP address of the client.", "markdownDescription": "Information about a source IP condition.\n You can use this condition to route based on the IP address of the source that connects to the load balancer. If a client is behind a proxy, this is the IP address of the proxy not the IP address of the client.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, - "required": [ - "Actions", - "Priority", - "Conditions" - ], - "createOnlyProperties": [ - "/properties/ListenerArn" - ], - "primaryIdentifier": [ - "/properties/RuleArn" - ], - "readOnlyProperties": [ - "/properties/RuleArn", - "/properties/IsDefault" - ], - "writeOnlyProperties": [ - "/properties/Actions/*/AuthenticateOidcConfig/ClientSecret", - "/properties/ListenerArn" - ], - "tagging": { - "taggable": false, - "tagOnCreate": false, - "tagUpdatable": false, - "cloudFormationSystemTags": false - }, - "handlers": { - "create": { - "permissions": [ - "elasticloadbalancing:CreateRule", - "elasticloadbalancing:DescribeRules", - "cognito-idp:DescribeUserPoolClient" - ] + "properties": { + "ListenerArn": { + "description": "The Amazon Resource Name (ARN) of the listener.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the listener.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, - "delete": { - "permissions": [ - "elasticloadbalancing:DeleteRule", - "elasticloadbalancing:DescribeRules" - ] + "IsDefault": { + "description": "", + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\nRead only property: Yes" }, - "list": { - "handlerSchema": { - "properties": { - "ListenerArn": { - "$ref": "resource-schema.json#/properties/ListenerArn" - }, - "RuleArns": { - "type": "array", - "uniqueItems": false, - "insertionOrder": false, - "items": { - "$ref": "resource-schema.json#/properties/RuleArn" - }, - "markdownDescription": "\n\n---\n\nRequired: Conditional \nType: Array \nUpdate requires: No interruption\n" - } - }, - "oneOf": [ - { - "required": [ - "ListenerArn" - ] - }, - { - "required": [ - "RuleArns" - ] - } - ] + "Actions": { + "uniqueItems": true, + "description": "The actions.\n The rule must include exactly one of the following types of actions: ``forward``, ``fixed-response``, or ``redirect``, and it must be the last action to be performed. If the rule is for an HTTPS listener, it can also optionally include an authentication action.", + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/Action" }, - "permissions": [ - "elasticloadbalancing:DescribeRules" - ] + "markdownDescription": "The actions.\n The rule must include exactly one of the following types of actions: ``forward``, ``fixed-response``, or ``redirect``, and it must be the last action to be performed. If the rule is for an HTTPS listener, it can also optionally include an authentication action.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, - "read": { - "permissions": [ - "elasticloadbalancing:DescribeRules" - ] + "Priority": { + "description": "The rule priority. A listener can't have multiple rules with the same priority.\n If you try to reorder rules by updating their priorities, do not specify a new priority if an existing rule already uses this priority, as this can cause an error. If you need to reuse a priority with a different rule, you must remove it as a priority first, and then specify it in a subsequent update.", + "type": "integer", + "markdownDescription": "The rule priority. A listener can't have multiple rules with the same priority.\n If you try to reorder rules by updating their priorities, do not specify a new priority if an existing rule already uses this priority, as this can cause an error. If you need to reuse a priority with a different rule, you must remove it as a priority first, and then specify it in a subsequent update.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, - "update": { - "permissions": [ - "elasticloadbalancing:ModifyRule", - "elasticloadbalancing:SetRulePriorities", - "elasticloadbalancing:DescribeRules" - ] - } - }, - "attributes": { "RuleArn": { - "type": "string", "description": "", + "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, + "Conditions": { + "uniqueItems": true, + "description": "The conditions.\n The rule can optionally include up to one of each of the following conditions: ``http-request-method``, ``host-header``, ``path-pattern``, and ``source-ip``. A rule can also optionally include one or more of each of the following conditions: ``http-header`` and ``query-string``.", + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/RuleCondition" + }, + "markdownDescription": "The conditions.\n The rule can optionally include up to one of each of the following conditions: ``http-request-method``, ``host-header``, ``path-pattern``, and ``source-ip``. A rule can also optionally include one or more of each of the following conditions: ``http-header`` and ``query-string``.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "attributes": { "IsDefault": { - "type": "boolean", "description": "", + "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\nRead only property: Yes" + }, + "RuleArn": { + "description": "", + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-elasticloadbalancingv2-loadbalancer.json b/server/schema/resources/aws-elasticloadbalancingv2-loadbalancer.json index fa11c715..e07ad129 100644 --- a/server/schema/resources/aws-elasticloadbalancingv2-loadbalancer.json +++ b/server/schema/resources/aws-elasticloadbalancingv2-loadbalancer.json @@ -28,14 +28,14 @@ }, "LoadBalancerAttributes": { "type": "array", - "description": "The load balancer attributes.", + "description": "The load balancer attributes. Attributes that you do not modify retain their current values.", "uniqueItems": true, "insertionOrder": false, "arrayType": "AttributeList", "items": { "$ref": "#/definitions/LoadBalancerAttribute" }, - "markdownDescription": "The load balancer attributes.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "The load balancer attributes. Attributes that you do not modify retain their current values.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "MinimumLoadBalancerCapacity": { "type": "object", diff --git a/server/schema/resources/aws-emrserverless-application.json b/server/schema/resources/aws-emrserverless-application.json index 4f17f850..8812fc73 100644 --- a/server/schema/resources/aws-emrserverless-application.json +++ b/server/schema/resources/aws-emrserverless-application.json @@ -46,6 +46,21 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "IdentityCenterConfiguration": { + "description": "The IAM IdentityCenter configuration for trusted-identity-propagation on this application. Supported with release labels emr-7.8.0 and above.", + "additionalProperties": false, + "type": "object", + "properties": { + "IdentityCenterInstanceArn": { + "description": "The IAM IdentityCenter instance arn", + "type": "string", + "maxLength": 1024, + "minLength": 1, + "markdownDescription": "The IAM IdentityCenter instance arn\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nPattern: ^arn:(aws[a-zA-Z0-9-]*):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$ \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "The IAM IdentityCenter configuration for trusted-identity-propagation on this application. Supported with release labels emr-7.8.0 and above.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "ConfigurationList": { "type": "array", "description": "Runtime configuration for batch and interactive JobRun.", @@ -656,6 +671,11 @@ "description": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above.", "$ref": "#/definitions/SchedulerConfiguration", "markdownDescription": "The scheduler configuration for batch and streaming jobs running on this application. Supported with release labels emr-7.0.0 and above.\n\n---\n\nRequired: No \nType: \nUpdate requires: Some interruptions\n" + }, + "IdentityCenterConfiguration": { + "description": "The IAM IdentityCenter configuration for trusted-identity-propagation on this application. Supported with release labels emr-7.8.0 and above.", + "$ref": "#/definitions/IdentityCenterConfiguration", + "markdownDescription": "The IAM IdentityCenter configuration for trusted-identity-propagation on this application. Supported with release labels emr-7.8.0 and above.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, "additionalProperties": false, @@ -736,7 +756,14 @@ "ec2:CreateNetworkInterface", "ecr:BatchGetImage", "ecr:DescribeImages", - "ecr:GetDownloadUrlForLayer" + "ecr:GetDownloadUrlForLayer", + "sso:DescribeInstance", + "sso:CreateApplication", + "sso:DeleteApplication", + "sso:PutApplicationAuthenticationMethod", + "sso:PutApplicationAssignmentConfiguration", + "sso:PutApplicationGrant", + "sso:PutApplicationAccessScope" ] }, "read": { @@ -783,7 +810,8 @@ "delete": { "permissions": [ "emr-serverless:DeleteApplication", - "emr-serverless:GetApplication" + "emr-serverless:GetApplication", + "sso:DeleteApplication" ] }, "list": { diff --git a/server/schema/resources/aws-entityresolution-matchingworkflow.json b/server/schema/resources/aws-entityresolution-matchingworkflow.json index 6f4ef0d9..06b397f4 100644 --- a/server/schema/resources/aws-entityresolution-matchingworkflow.json +++ b/server/schema/resources/aws-entityresolution-matchingworkflow.json @@ -138,6 +138,9 @@ "RuleBasedProperties": { "$ref": "#/definitions/RuleBasedProperties" }, + "RuleConditionProperties": { + "$ref": "#/definitions/RuleConditionProperties" + }, "ProviderProperties": { "$ref": "#/definitions/ProviderProperties" } @@ -199,6 +202,40 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "RuleConditionProperties": { + "type": "object", + "properties": { + "Rules": { + "type": "array", + "insertionOrder": false, + "minItems": 1, + "maxItems": 15, + "items": { + "$ref": "#/definitions/RuleCondition" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Rules" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RuleCondition": { + "type": "object", + "properties": { + "RuleName": { + "$ref": "#/definitions/AttributeName" + }, + "Condition": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "Rule": { "type": "object", "properties": { diff --git a/server/schema/resources/aws-events-endpoint.json b/server/schema/resources/aws-events-endpoint.json index a0726a62..99098f76 100644 --- a/server/schema/resources/aws-events-endpoint.json +++ b/server/schema/resources/aws-events-endpoint.json @@ -75,7 +75,7 @@ "type": "string", "minLength": 1, "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: ^arn:aws[a-z-]*:events:[a-z]{2}-[a-z-]+-\\d+:\\d{12}:event-bus/[\\w.-]+$ \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: ^arn:aws[a-z-]*:events:[a-z]+-[a-z-]+-\\d+:\\d{12}:event-bus/[\\w.-]+$ \nUpdate requires: No interruption\n" }, "EndpointEventBus": { "type": "object", diff --git a/server/schema/resources/aws-events-eventbus.json b/server/schema/resources/aws-events-eventbus.json index f6f1c2c4..5ef05f47 100644 --- a/server/schema/resources/aws-events-eventbus.json +++ b/server/schema/resources/aws-events-eventbus.json @@ -56,6 +56,34 @@ } }, "markdownDescription": "Dead Letter Queue for the event bus.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "LogConfig": { + "description": "The logging configuration settings for vended logs.", + "type": "object", + "additionalProperties": false, + "properties": { + "IncludeDetail": { + "type": "string", + "description": "Configures whether or not to include event detail, input transformer details, target properties, and target input in the applicable log messages.", + "enum": [ + "FULL", + "NONE" + ], + "markdownDescription": "Configures whether or not to include event detail, input transformer details, target properties, and target input in the applicable log messages.\n\n---\n\nRequired: No \nType: String \nAllowed Values: FULL | NONE \nUpdate requires: No interruption\n" + }, + "Level": { + "type": "string", + "description": "Configures the log level of the EventBus and determines which log messages are sent to Ingestion Hub for delivery.", + "enum": [ + "INFO", + "ERROR", + "TRACE", + "OFF" + ], + "markdownDescription": "Configures the log level of the EventBus and determines which log messages are sent to Ingestion Hub for delivery.\n\n---\n\nRequired: No \nType: String \nAllowed Values: INFO | ERROR | TRACE | OFF \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "The logging configuration settings for vended logs.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "tagging": { diff --git a/server/schema/resources/aws-fsx-s3accesspointattachment.json b/server/schema/resources/aws-fsx-s3accesspointattachment.json new file mode 100644 index 00000000..4df8b35a --- /dev/null +++ b/server/schema/resources/aws-fsx-s3accesspointattachment.json @@ -0,0 +1,242 @@ +{ + "typeName": "AWS::FSx::S3AccessPointAttachment", + "description": "Resource type definition for AWS::FSx::S3AccessPointAttachment", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "properties": { + "Name": { + "description": "The Name of the S3AccessPointAttachment", + "type": "string", + "minLength": 3, + "maxLength": 50, + "markdownDescription": "The Name of the S3AccessPointAttachment\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 3 \nMaximum Length: 50 \nPattern: ^(?=[a-z0-9])[a-z0-9-]{1,48}[a-z0-9]$ \nUpdate requires: Replacement\n" + }, + "Type": { + "description": "", + "type": "string", + "enum": [ + "OPENZFS" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: OPENZFS \nUpdate requires: Replacement\n" + }, + "OpenZFSConfiguration": { + "description": "", + "$ref": "#/definitions/S3AccessPointOpenZFSConfiguration", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: \nUpdate requires: Replacement\n" + }, + "S3AccessPoint": { + "description": "", + "$ref": "#/definitions/S3AccessPoint", + "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: Replacement\nRead only property: Yes" + } + }, + "definitions": { + "S3AccessPointVpcConfiguration": { + "type": "object", + "additionalProperties": false, + "properties": { + "VpcId": { + "description": "", + "type": "string", + "minLength": 12, + "maxLength": 21, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 12 \nMaximum Length: 21 \nPattern: ^(vpc-[0-9a-f]{8,})$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "VpcId" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "S3AccessPoint": { + "type": "object", + "additionalProperties": false, + "properties": { + "ResourceARN": { + "description": "", + "type": "string", + "minLength": 8, + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 8 \nMaximum Length: 1024 \nPattern: ^arn:[^:]{1,63}:[^:]{0,63}:[^:]{0,63}:(?:|\\d{12}):[^/].{0,1023}$ \nUpdate requires: No interruption\n" + }, + "Alias": { + "description": "", + "type": "string", + "minLength": 1, + "maxLength": 63, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 63 \nPattern: ^[0-9a-z\\\\-]{1,63} \nUpdate requires: No interruption\n" + }, + "VpcConfiguration": { + "description": "", + "$ref": "#/definitions/S3AccessPointVpcConfiguration", + "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Policy": { + "description": "", + "type": [ + "object", + "string" + ], + "minLength": 1, + "maxLength": 200000, + "markdownDescription": "\n\n---\n\nRequired: No \nType: ['object', 'string'] \nMinimum Length: 1 \nMaximum Length: 200000 \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "FileSystemGID": { + "type": "object", + "additionalProperties": false, + "properties": { + "Gid": { + "description": "", + "type": "number", + "minimum": 0, + "maximum": 4294967295, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Gid" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OpenZFSPosixFileSystemUser": { + "type": "object", + "additionalProperties": false, + "properties": { + "Uid": { + "description": "", + "type": "number", + "minimum": 0, + "maximum": 4294967295, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + }, + "Gid": { + "description": "", + "type": "number", + "minimum": 0, + "maximum": 4294967295, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + }, + "SecondaryGids": { + "description": "", + "type": "array", + "items": { + "$ref": "#/definitions/FileSystemGID" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Uid", + "Gid" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OpenZFSFileSystemIdentity": { + "type": "object", + "additionalProperties": false, + "properties": { + "Type": { + "description": "", + "type": "string", + "enum": [ + "POSIX" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: POSIX \nUpdate requires: No interruption\n" + }, + "PosixUser": { + "description": "", + "$ref": "#/definitions/OpenZFSPosixFileSystemUser", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Type", + "PosixUser" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "S3AccessPointOpenZFSConfiguration": { + "type": "object", + "additionalProperties": false, + "properties": { + "VolumeId": { + "description": "", + "type": "string", + "minLength": 23, + "maxLength": 23, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 23 \nMaximum Length: 23 \nPattern: ^(fsvol-[0-9a-f]{17,})$ \nUpdate requires: No interruption\n" + }, + "FileSystemIdentity": { + "description": "", + "$ref": "#/definitions/OpenZFSFileSystemIdentity", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "VolumeId", + "FileSystemIdentity" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "replacementStrategy": "delete_then_create", + "required": [ + "Name", + "Type", + "OpenZFSConfiguration" + ], + "createOnlyProperties": [ + "/properties/Name", + "/properties/Type", + "/properties/OpenZFSConfiguration", + "/properties/S3AccessPoint" + ], + "readOnlyProperties": [ + "/properties/S3AccessPoint/ResourceARN", + "/properties/S3AccessPoint/Alias" + ], + "writeOnlyProperties": [ + "/properties/S3AccessPoint/Policy" + ], + "primaryIdentifier": [ + "/properties/Name" + ], + "tagging": { + "taggable": false + }, + "handlers": { + "create": { + "permissions": [ + "fsx:CreateAndAttachS3AccessPoint", + "fsx:DescribeS3AccessPointAttachments", + "s3:CreateAccessPoint", + "s3:GetAccessPoint", + "s3:PutAccessPointPolicy" + ] + }, + "read": { + "permissions": [ + "fsx:DescribeS3AccessPointAttachments", + "s3:GetAccessPoint" + ] + }, + "delete": { + "permissions": [ + "fsx:DescribeS3AccessPointAttachments", + "fsx:DetachAndDeleteS3AccessPoint", + "s3:DeleteAccessPoint", + "s3:GetAccessPoint" + ] + }, + "list": { + "permissions": [ + "fsx:DescribeS3AccessPointAttachments", + "s3:GetAccessPoint" + ] + } + }, + "attributes": {} +} \ No newline at end of file diff --git a/server/schema/resources/aws-gamelift-build.json b/server/schema/resources/aws-gamelift-build.json index 6dcb94da..88403385 100644 --- a/server/schema/resources/aws-gamelift-build.json +++ b/server/schema/resources/aws-gamelift-build.json @@ -138,8 +138,7 @@ "/properties/ServerSdkVersion" ], "writeOnlyProperties": [ - "/properties/StorageLocation", - "/properties/ServerSdkVersion" + "/properties/StorageLocation" ], "readOnlyProperties": [ "/properties/BuildId", @@ -154,7 +153,8 @@ "gamelift:DescribeBuild", "gamelift:CreateBuild", "gamelift:ListTagsForResource", - "gamelift:TagResource" + "gamelift:TagResource", + "iam:PassRole" ] }, "read": { diff --git a/server/schema/resources/aws-gamelift-containerfleet.json b/server/schema/resources/aws-gamelift-containerfleet.json index b2fee84b..64a7fb4a 100644 --- a/server/schema/resources/aws-gamelift-containerfleet.json +++ b/server/schema/resources/aws-gamelift-containerfleet.json @@ -121,6 +121,13 @@ "LogDestination": { "$ref": "#/definitions/LogDestination" }, + "LogGroupArn": { + "description": "If log destination is CLOUDWATCH, logs are sent to the specified log group in Amazon CloudWatch.", + "type": "string", + "minLength": 1, + "maxLength": 512, + "markdownDescription": "If log destination is CLOUDWATCH, logs are sent to the specified log group in Amazon CloudWatch.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: [a-zA-Z0-9:/\\-\\*]+ \nUpdate requires: No interruption\n" + }, "S3BucketName": { "description": "The name of the S3 bucket to pull logs from if S3 is the LogDestination", "type": "string", @@ -143,10 +150,10 @@ "type": "object", "properties": { "DesiredEC2Instances": { - "description": "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.", + "description": "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits. If any auto-scaling policy is defined for the container fleet, the desired instance will only be applied once during fleet creation and will be ignored in updates to avoid conflicts with auto-scaling. During updates with any auto-scaling policy defined, if current desired instance is lower than the new MinSize, it will be increased to the new MinSize; if current desired instance is larger than the new MaxSize, it will be decreased to the new MaxSize.", "type": "integer", "minimum": 0, - "markdownDescription": "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits. If any auto-scaling policy is defined for the container fleet, the desired instance will only be applied once during fleet creation and will be ignored in updates to avoid conflicts with auto-scaling. During updates with any auto-scaling policy defined, if current desired instance is lower than the new MinSize, it will be increased to the new MinSize; if current desired instance is larger than the new MaxSize, it will be decreased to the new MaxSize.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" }, "MinSize": { "description": "The minimum value allowed for the fleet's instance count for a location.", @@ -586,7 +593,6 @@ ], "writeOnlyProperties": [ "/properties/DeploymentConfiguration", - "/properties/GameServerContainerGroupsPerInstance", "/properties/GameServerContainerGroupDefinitionName", "/properties/PerInstanceContainerGroupDefinitionName" ], diff --git a/server/schema/resources/aws-gamelift-fleet.json b/server/schema/resources/aws-gamelift-fleet.json index 70a11670..3378c286 100644 --- a/server/schema/resources/aws-gamelift-fleet.json +++ b/server/schema/resources/aws-gamelift-fleet.json @@ -406,13 +406,14 @@ "markdownDescription": "Configuration for Anywhere fleet.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "ApplyCapacity": { - "description": "Determines whether to apply fleet or location capacities on fleet creation.", + "description": "Determines when and how to apply fleet or location capacities. Allowed options are ON_UPDATE (default), ON_CREATE_AND_UPDATE and ON_CREATE_AND_UPDATE_WITH_AUTOSCALING. If you choose ON_CREATE_AND_UPDATE_WITH_AUTOSCALING, MinSize and MaxSize will still be applied on creation and on updates, but DesiredEC2Instances will only be applied once on fleet creation and will be ignored during updates to prevent conflicts with auto-scaling. During updates with ON_CREATE_AND_UPDATE_WITH_AUTOSCALING chosen, if current desired instance is lower than the new MinSize, it will be increased to the new MinSize; if current desired instance is larger than the new MaxSize, it will be decreased to the new MaxSize.", "type": "string", "enum": [ "ON_UPDATE", - "ON_CREATE_AND_UPDATE" + "ON_CREATE_AND_UPDATE", + "ON_CREATE_AND_UPDATE_WITH_AUTOSCALING" ], - "markdownDescription": "Determines whether to apply fleet or location capacities on fleet creation.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ON_UPDATE | ON_CREATE_AND_UPDATE \nUpdate requires: Replacement\n" + "markdownDescription": "Determines when and how to apply fleet or location capacities. Allowed options are ON_UPDATE (default), ON_CREATE_AND_UPDATE and ON_CREATE_AND_UPDATE_WITH_AUTOSCALING. If you choose ON_CREATE_AND_UPDATE_WITH_AUTOSCALING, MinSize and MaxSize will still be applied on creation and on updates, but DesiredEC2Instances will only be applied once on fleet creation and will be ignored during updates to prevent conflicts with auto-scaling. During updates with ON_CREATE_AND_UPDATE_WITH_AUTOSCALING chosen, if current desired instance is lower than the new MinSize, it will be increased to the new MinSize; if current desired instance is larger than the new MaxSize, it will be decreased to the new MaxSize.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ON_UPDATE | ON_CREATE_AND_UPDATE | ON_CREATE_AND_UPDATE_WITH_AUTOSCALING \nUpdate requires: No interruption\n" }, "CertificateConfiguration": { "description": "Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.", @@ -613,7 +614,6 @@ ], "additionalProperties": false, "createOnlyProperties": [ - "/properties/ApplyCapacity", "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/EC2InstanceType", diff --git a/server/schema/resources/aws-glue-job.json b/server/schema/resources/aws-glue-job.json index 384d27c2..6e8caff4 100644 --- a/server/schema/resources/aws-glue-job.json +++ b/server/schema/resources/aws-glue-job.json @@ -169,9 +169,15 @@ "G.025X", "G.4X", "G.8X", - "Z.2X" + "Z.2X", + "G.12X", + "G.16X", + "R.1X", + "R.2X", + "R.4X", + "R.8X" ], - "markdownDescription": "TThe type of predefined worker that is allocated when a job runs.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Standard | G.1X | G.2X | G.025X | G.4X | G.8X | Z.2X \nUpdate requires: No interruption\n" + "markdownDescription": "TThe type of predefined worker that is allocated when a job runs.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Standard | G.1X | G.2X | G.025X | G.4X | G.8X | Z.2X | G.12X | G.16X | R.1X | R.2X | R.4X | R.8X \nUpdate requires: No interruption\n" }, "ExecutionClass": { "type": "string", diff --git a/server/schema/resources/aws-guardduty-ipset.json b/server/schema/resources/aws-guardduty-ipset.json index 553a9603..bca10f12 100644 --- a/server/schema/resources/aws-guardduty-ipset.json +++ b/server/schema/resources/aws-guardduty-ipset.json @@ -45,6 +45,10 @@ "maxLength": 300, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 300 \nUpdate requires: No interruption\n" }, + "ExpectedBucketOwner": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "Tags": { "type": "array", "insertionOrder": false, diff --git a/server/schema/resources/aws-guardduty-threatintelset.json b/server/schema/resources/aws-guardduty-threatintelset.json index 4bb4e63d..e12d0866 100644 --- a/server/schema/resources/aws-guardduty-threatintelset.json +++ b/server/schema/resources/aws-guardduty-threatintelset.json @@ -46,6 +46,10 @@ "maxLength": 300, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 300 \nUpdate requires: No interruption\n" }, + "ExpectedBucketOwner": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "Tags": { "type": "array", "items": { diff --git a/server/schema/resources/aws-imagebuilder-component.json b/server/schema/resources/aws-imagebuilder-component.json index d67aa4e8..65781343 100644 --- a/server/schema/resources/aws-imagebuilder-component.json +++ b/server/schema/resources/aws-imagebuilder-component.json @@ -11,12 +11,12 @@ "Name": { "description": "The name of the component.", "type": "string", - "markdownDescription": "The name of the component.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The name of the component.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "Version": { "description": "The version of the component.", "type": "string", - "markdownDescription": "The version of the component.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The version of the component.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "Description": { "description": "The description of the component.", @@ -45,14 +45,14 @@ "Linux", "macOS" ], - "markdownDescription": "The platform of the component.\n\n---\n\nRequired: Conditional \nType: String \nAllowed Values: Windows | Linux | macOS \nUpdate requires: Replacement\n" + "markdownDescription": "The platform of the component.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: Windows | Linux | macOS \nUpdate requires: Replacement\n" }, "Data": { "description": "The data of the component.", "type": "string", "minLength": 1, "maxLength": 16000, - "markdownDescription": "The data of the component.\n\n---\n\nRequired: Conditional \nType: String \nMinimum Length: 1 \nMaximum Length: 16000 \nUpdate requires: Replacement\n" + "markdownDescription": "The data of the component.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 16000 \nUpdate requires: Replacement\n" }, "KmsKeyId": { "description": "The KMS key identifier used to encrypt the component.", @@ -74,12 +74,12 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "markdownDescription": "The tags associated with the component.\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "The tags associated with the component.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Uri": { "description": "The uri of the component.", "type": "string", - "markdownDescription": "The uri of the component.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The uri of the component.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "SupportedOsVersions": { "description": "The operating system (OS) version supported by the component.", @@ -98,18 +98,6 @@ "Platform", "Version" ], - "oneOf": [ - { - "required": [ - "Data" - ] - }, - { - "required": [ - "Uri" - ] - } - ], "primaryIdentifier": [ "/properties/Arn" ], @@ -131,13 +119,12 @@ "/properties/Data", "/properties/Uri", "/properties/KmsKeyId", - "/properties/SupportedOsVersions", - "/properties/Tags" + "/properties/SupportedOsVersions" ], "tagging": { "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "cloudFormationSystemTags": true, "tagProperty": "/properties/Tags", "permissions": [ @@ -164,6 +151,12 @@ "imagebuilder:CreateComponent" ] }, + "update": { + "permissions": [ + "imagebuilder:TagResource", + "imagebuilder:UntagResource" + ] + }, "read": { "permissions": [ "imagebuilder:GetComponent", diff --git a/server/schema/resources/aws-imagebuilder-containerrecipe.json b/server/schema/resources/aws-imagebuilder-containerrecipe.json index c7fb182c..594a06dc 100644 --- a/server/schema/resources/aws-imagebuilder-containerrecipe.json +++ b/server/schema/resources/aws-imagebuilder-containerrecipe.json @@ -41,12 +41,12 @@ "DockerfileTemplateData": { "description": "Dockerfiles are text documents that are used to build Docker containers, and ensure that they contain all of the elements required by the application running inside. The template data consists of contextual variables where Image Builder places build information or scripts, based on your container image recipe.", "type": "string", - "markdownDescription": "Dockerfiles are text documents that are used to build Docker containers, and ensure that they contain all of the elements required by the application running inside. The template data consists of contextual variables where Image Builder places build information or scripts, based on your container image recipe.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "Dockerfiles are text documents that are used to build Docker containers, and ensure that they contain all of the elements required by the application running inside. The template data consists of contextual variables where Image Builder places build information or scripts, based on your container image recipe.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "DockerfileTemplateUri": { "description": "The S3 URI for the Dockerfile that will be used to build your container image.", "type": "string", - "markdownDescription": "The S3 URI for the Dockerfile that will be used to build your container image.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The S3 URI for the Dockerfile that will be used to build your container image.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "PlatformOverride": { "description": "Specifies the operating system platform when you use a custom source image.", @@ -100,7 +100,7 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Tags that are attached to the container recipe.\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "Tags that are attached to the container recipe.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "definitions": { @@ -286,18 +286,6 @@ "oneOf": [ { "required": [ - "DockerfileTemplateData", - "Name", - "Version", - "Components", - "ParentImage", - "TargetRepository", - "ContainerType" - ] - }, - { - "required": [ - "DockerfileTemplateUri", "Name", "Version", "Components", @@ -327,8 +315,7 @@ "/properties/KmsKeyId", "/properties/PlatformOverride", "/properties/WorkingDirectory", - "/properties/Components", - "/properties/Tags" + "/properties/Components" ], "writeOnlyProperties": [ "/properties/DockerfileTemplateData", @@ -336,13 +323,10 @@ "/properties/ImageOsVersionOverride", "/properties/PlatformOverride" ], - "propertyTransform": { - "/properties/InstanceConfiguration/BlockDeviceMappings/*/Ebs/VolumeType": "$uppercase(VolumeType)" - }, "tagging": { "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "cloudFormationSystemTags": true, "tagProperty": "/properties/Tags", "permissions": [ @@ -380,6 +364,12 @@ "kms:Decrypt" ] }, + "update": { + "permissions": [ + "imagebuilder:TagResource", + "imagebuilder:UntagResource" + ] + }, "delete": { "permissions": [ "imagebuilder:UntagResource", diff --git a/server/schema/resources/aws-imagebuilder-image.json b/server/schema/resources/aws-imagebuilder-image.json index a1624a6e..a4a308d2 100644 --- a/server/schema/resources/aws-imagebuilder-image.json +++ b/server/schema/resources/aws-imagebuilder-image.json @@ -7,7 +7,7 @@ ], "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "tagProperty": "/properties/Tags", "cloudFormationSystemTags": true }, @@ -53,6 +53,12 @@ ], "timeoutInMinutes": 720 }, + "update": { + "permissions": [ + "imagebuilder:TagResource", + "imagebuilder:UntagResource" + ] + }, "list": { "permissions": [ "imagebuilder:ListImages", @@ -94,8 +100,7 @@ "/properties/DistributionConfigurationArn", "/properties/ImageTestsConfiguration", "/properties/ImageScanningConfiguration", - "/properties/EnhancedImageMetadataEnabled", - "/properties/Tags" + "/properties/EnhancedImageMetadataEnabled" ], "additionalProperties": false, "primaryIdentifier": [ @@ -305,7 +310,7 @@ "description": "The tags associated with the image.", "additionalProperties": false, "type": "object", - "markdownDescription": "The tags associated with the image.\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "The tags associated with the image.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "attributes": { diff --git a/server/schema/resources/aws-imagebuilder-imagerecipe.json b/server/schema/resources/aws-imagebuilder-imagerecipe.json index fb1bbc33..0ca8a35b 100644 --- a/server/schema/resources/aws-imagebuilder-imagerecipe.json +++ b/server/schema/resources/aws-imagebuilder-imagerecipe.json @@ -66,7 +66,7 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "markdownDescription": "The tags of the image recipe.\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "The tags of the image recipe.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "definitions": { @@ -256,16 +256,12 @@ "/properties/ParentImage", "/properties/Description", "/properties/BlockDeviceMappings", - "/properties/WorkingDirectory", - "/properties/Tags" + "/properties/WorkingDirectory" ], - "propertyTransform": { - "/properties/BlockDeviceMappings/*/Ebs/VolumeType": "$uppercase(VolumeType)" - }, "tagging": { "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "cloudFormationSystemTags": true, "tagProperty": "/properties/Tags", "permissions": [ @@ -291,6 +287,12 @@ "imagebuilder:GetImageRecipe" ] }, + "update": { + "permissions": [ + "imagebuilder:TagResource", + "imagebuilder:UntagResource" + ] + }, "delete": { "permissions": [ "imagebuilder:UntagResource", diff --git a/server/schema/resources/aws-imagebuilder-workflow.json b/server/schema/resources/aws-imagebuilder-workflow.json index bfa55f45..0fe9ebb6 100644 --- a/server/schema/resources/aws-imagebuilder-workflow.json +++ b/server/schema/resources/aws-imagebuilder-workflow.json @@ -11,12 +11,12 @@ "Name": { "description": "The name of the workflow.", "type": "string", - "markdownDescription": "The name of the workflow.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The name of the workflow.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "Version": { "description": "The version of the workflow.", "type": "string", - "markdownDescription": "The version of the workflow.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The version of the workflow.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "Description": { "description": "The description of the workflow.", @@ -36,19 +36,19 @@ "TEST", "DISTRIBUTION" ], - "markdownDescription": "The type of the workflow denotes whether the workflow is used to build, test, or distribute.\n\n---\n\nRequired: Conditional \nType: String \nAllowed Values: BUILD | TEST | DISTRIBUTION \nUpdate requires: Replacement\n" + "markdownDescription": "The type of the workflow denotes whether the workflow is used to build, test, or distribute.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: BUILD | TEST | DISTRIBUTION \nUpdate requires: Replacement\n" }, "Data": { "description": "The data of the workflow.", "type": "string", "minLength": 1, "maxLength": 16000, - "markdownDescription": "The data of the workflow.\n\n---\n\nRequired: Conditional \nType: String \nMinimum Length: 1 \nMaximum Length: 16000 \nUpdate requires: Replacement\n" + "markdownDescription": "The data of the workflow.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 16000 \nUpdate requires: Replacement\n" }, "Uri": { "description": "The uri of the workflow.", "type": "string", - "markdownDescription": "The uri of the workflow.\n\n---\n\nRequired: Conditional \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The uri of the workflow.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "KmsKeyId": { "description": "The KMS key identifier used to encrypt the workflow.", @@ -65,7 +65,7 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "markdownDescription": "The tags associated with the workflow.\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "The tags associated with the workflow.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "additionalProperties": false, @@ -74,18 +74,6 @@ "Type", "Version" ], - "oneOf": [ - { - "required": [ - "Data" - ] - }, - { - "required": [ - "Uri" - ] - } - ], "primaryIdentifier": [ "/properties/Arn" ], @@ -104,13 +92,12 @@ "/properties/Data", "/properties/Uri", "/properties/Type", - "/properties/KmsKeyId", - "/properties/Tags" + "/properties/KmsKeyId" ], "tagging": { "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "cloudFormationSystemTags": true, "tagProperty": "/properties/Tags", "permissions": [ @@ -142,6 +129,12 @@ "kms:Decrypt" ] }, + "update": { + "permissions": [ + "imagebuilder:TagResource", + "imagebuilder:UntagResource" + ] + }, "delete": { "permissions": [ "imagebuilder:GetWorkflow", diff --git a/server/schema/resources/aws-inspectorv2-cisscanconfiguration.json b/server/schema/resources/aws-inspectorv2-cisscanconfiguration.json index 9d7d915d..2981441f 100644 --- a/server/schema/resources/aws-inspectorv2-cisscanconfiguration.json +++ b/server/schema/resources/aws-inspectorv2-cisscanconfiguration.json @@ -220,7 +220,11 @@ "tagOnCreate": true, "tagUpdatable": true, "cloudFormationSystemTags": true, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "inspector2:TagResource", + "inspector2:UntagResource" + ] }, "handlers": { "create": { diff --git a/server/schema/resources/aws-inspectorv2-filter.json b/server/schema/resources/aws-inspectorv2-filter.json index 971ea0df..a6da2fdb 100644 --- a/server/schema/resources/aws-inspectorv2-filter.json +++ b/server/schema/resources/aws-inspectorv2-filter.json @@ -3,6 +3,17 @@ "description": "Inspector Filter resource schema", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-inspector.git", "definitions": { + "FilterTagMap": { + "type": "object", + "patternProperties": { + "^.{2,127}$": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^.{1,255}$ \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "StringComparison": { "type": "string", "enum": [ @@ -173,12 +184,18 @@ "Epoch": { "$ref": "#/definitions/NumberFilter" }, + "FilePath": { + "$ref": "#/definitions/StringFilter" + }, "Name": { "$ref": "#/definitions/StringFilter" }, "Release": { "$ref": "#/definitions/StringFilter" }, + "SourceLambdaLayerArn": { + "$ref": "#/definitions/StringFilter" + }, "SourceLayerHash": { "$ref": "#/definitions/StringFilter" }, @@ -205,6 +222,15 @@ "AwsAccountId": { "$ref": "#/definitions/StringFilterList" }, + "CodeVulnerabilityDetectorName": { + "$ref": "#/definitions/StringFilterList" + }, + "CodeVulnerabilityDetectorTags": { + "$ref": "#/definitions/StringFilterList" + }, + "CodeVulnerabilityFilePath": { + "$ref": "#/definitions/StringFilterList" + }, "ComponentId": { "$ref": "#/definitions/StringFilterList" }, @@ -226,9 +252,6 @@ "EcrImageHash": { "$ref": "#/definitions/StringFilterList" }, - "EcrImageTags": { - "$ref": "#/definitions/StringFilterList" - }, "EcrImagePushedAt": { "$ref": "#/definitions/DateFilterList" }, @@ -238,6 +261,15 @@ "EcrImageRepositoryName": { "$ref": "#/definitions/StringFilterList" }, + "EcrImageTags": { + "$ref": "#/definitions/StringFilterList" + }, + "EpssScore": { + "$ref": "#/definitions/NumberFilterList" + }, + "ExploitAvailable": { + "$ref": "#/definitions/StringFilterList" + }, "FindingArn": { "$ref": "#/definitions/StringFilterList" }, @@ -250,9 +282,27 @@ "FirstObservedAt": { "$ref": "#/definitions/DateFilterList" }, + "FixAvailable": { + "$ref": "#/definitions/StringFilterList" + }, "InspectorScore": { "$ref": "#/definitions/NumberFilterList" }, + "LambdaFunctionExecutionRoleArn": { + "$ref": "#/definitions/StringFilterList" + }, + "LambdaFunctionLastModifiedAt": { + "$ref": "#/definitions/DateFilterList" + }, + "LambdaFunctionLayers": { + "$ref": "#/definitions/StringFilterList" + }, + "LambdaFunctionName": { + "$ref": "#/definitions/StringFilterList" + }, + "LambdaFunctionRuntime": { + "$ref": "#/definitions/StringFilterList" + }, "LastObservedAt": { "$ref": "#/definitions/DateFilterList" }, @@ -350,10 +400,21 @@ "maxLength": 128, "minLength": 1, "markdownDescription": "Findings filter ARN.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "$ref": "#/definitions/FilterTagMap" } }, "tagging": { - "taggable": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "inspector2:TagResource", + "inspector2:UntagResource" + ] }, "required": [ "Name", @@ -371,18 +432,23 @@ "create": { "permissions": [ "inspector2:CreateFilter", - "inspector2:ListFilters" + "inspector2:ListFilters", + "inspector2:TagResource" ] }, "read": { "permissions": [ - "inspector2:ListFilters" + "inspector2:ListFilters", + "inspector2:ListTagsForResource" ] }, "update": { "permissions": [ "inspector2:ListFilters", - "inspector2:UpdateFilter" + "inspector2:UpdateFilter", + "inspector2:TagResource", + "inspector2:UntagResource", + "inspector2:ListTagsForResource" ] }, "delete": { diff --git a/server/schema/resources/aws-iot-authorizer.json b/server/schema/resources/aws-iot-authorizer.json index d6231273..9450afe4 100644 --- a/server/schema/resources/aws-iot-authorizer.json +++ b/server/schema/resources/aws-iot-authorizer.json @@ -112,13 +112,15 @@ "iot:CreateAuthorizer", "iot:DescribeAuthorizer", "iot:TagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "read": { "permissions": [ "iot:DescribeAuthorizer", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "update": { @@ -127,14 +129,16 @@ "iot:DescribeAuthorizer", "iot:TagResource", "iot:UntagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "delete": { "permissions": [ "iot:UpdateAuthorizer", "iot:DeleteAuthorizer", - "iot:DescribeAuthorizer" + "iot:DescribeAuthorizer", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iot-cacertificate.json b/server/schema/resources/aws-iot-cacertificate.json index 361d076c..318f8e74 100644 --- a/server/schema/resources/aws-iot-cacertificate.json +++ b/server/schema/resources/aws-iot-cacertificate.json @@ -160,13 +160,15 @@ "iot:RegisterCACertificate", "iot:DescribeCACertificate", "iot:TagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "read": { "permissions": [ "iot:DescribeCACertificate", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "update": { @@ -177,14 +179,16 @@ "iot:DescribeCACertificate", "iot:TagResource", "iot:UntagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "delete": { "permissions": [ "iot:UpdateCACertificate", "iot:DeleteCACertificate", - "iot:DescribeCACertificate" + "iot:DescribeCACertificate", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iot-certificate.json b/server/schema/resources/aws-iot-certificate.json index 520d7567..a6973706 100644 --- a/server/schema/resources/aws-iot-certificate.json +++ b/server/schema/resources/aws-iot-certificate.json @@ -81,25 +81,29 @@ "iot:CreateCertificateFromCsr", "iot:RegisterCertificate", "iot:RegisterCertificateWithoutCA", - "iot:DescribeCertificate" + "iot:DescribeCertificate", + "kms:Decrypt" ] }, "read": { "permissions": [ - "iot:DescribeCertificate" + "iot:DescribeCertificate", + "kms:Decrypt" ] }, "update": { "permissions": [ "iot:UpdateCertificate", - "iot:DescribeCertificate" + "iot:DescribeCertificate", + "kms:Decrypt" ] }, "delete": { "permissions": [ "iot:DeleteCertificate", "iot:UpdateCertificate", - "iot:DescribeCertificate" + "iot:DescribeCertificate", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iot-certificateprovider.json b/server/schema/resources/aws-iot-certificateprovider.json index 25e9cec2..e2cd2ad4 100644 --- a/server/schema/resources/aws-iot-certificateprovider.json +++ b/server/schema/resources/aws-iot-certificateprovider.json @@ -110,13 +110,15 @@ "iot:CreateCertificateProvider", "iot:DescribeCertificateProvider", "iot:TagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "read": { "permissions": [ "iot:DescribeCertificateProvider", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "update": { @@ -125,13 +127,15 @@ "iot:DescribeCertificateProvider", "iot:TagResource", "iot:UntagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "delete": { "permissions": [ "iot:DeleteCertificateProvider", - "iot:DescribeCertificateProvider" + "iot:DescribeCertificateProvider", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iot-domainconfiguration.json b/server/schema/resources/aws-iot-domainconfiguration.json index d1a08f6a..b5af4f99 100644 --- a/server/schema/resources/aws-iot-domainconfiguration.json +++ b/server/schema/resources/aws-iot-domainconfiguration.json @@ -265,13 +265,15 @@ "iot:DescribeDomainConfiguration", "iot:TagResource", "iot:ListTagsForResource", - "acm:GetCertificate" + "acm:GetCertificate", + "kms:Decrypt" ] }, "read": { "permissions": [ "iot:DescribeDomainConfiguration", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "update": { @@ -280,14 +282,16 @@ "iot:DescribeDomainConfiguration", "iot:ListTagsForResource", "iot:TagResource", - "iot:UntagResource" + "iot:UntagResource", + "kms:Decrypt" ] }, "delete": { "permissions": [ "iot:DescribeDomainConfiguration", "iot:DeleteDomainConfiguration", - "iot:UpdateDomainConfiguration" + "iot:UpdateDomainConfiguration", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iot-encryptionconfiguration.json b/server/schema/resources/aws-iot-encryptionconfiguration.json new file mode 100644 index 00000000..f90804dc --- /dev/null +++ b/server/schema/resources/aws-iot-encryptionconfiguration.json @@ -0,0 +1,149 @@ +{ + "typeName": "AWS::IoT::EncryptionConfiguration", + "description": "Resource Type definition for AWS::IoT::EncryptionConfiguration", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "definitions": {}, + "properties": { + "AccountId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "EncryptionType": { + "type": "string", + "enum": [ + "CUSTOMER_MANAGED_KMS_KEY", + "AWS_OWNED_KMS_KEY" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: CUSTOMER_MANAGED_KMS_KEY | AWS_OWNED_KMS_KEY \nUpdate requires: No interruption\n" + }, + "KmsAccessRoleArn": { + "type": "string", + "minLength": 20, + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "KmsKeyArn": { + "type": "string", + "minLength": 20, + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "ConfigurationDetails": { + "type": "object", + "properties": { + "ConfigurationStatus": { + "type": "string", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: HEALTHY | UNHEALTHY \nUpdate requires: No interruption\n" + }, + "ErrorCode": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ErrorMessage": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "LastModifiedDate": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "additionalProperties": false, + "required": [ + "EncryptionType" + ], + "readOnlyProperties": [ + "/properties/AccountId", + "/properties/ConfigurationDetails", + "/properties/LastModifiedDate" + ], + "primaryIdentifier": [ + "/properties/AccountId" + ], + "handlers": { + "create": { + "permissions": [ + "iot:UpdateEncryptionConfiguration", + "iot:DescribeEncryptionConfiguration", + "kms:Encrypt", + "kms:Decrypt", + "kms:DescribeKey", + "iam:PassRole" + ] + }, + "read": { + "permissions": [ + "iot:DescribeEncryptionConfiguration" + ] + }, + "update": { + "permissions": [ + "iot:UpdateEncryptionConfiguration", + "iot:DescribeEncryptionConfiguration", + "kms:Encrypt", + "kms:Decrypt", + "kms:DescribeKey", + "iam:PassRole" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateEncryptionConfiguration", + "iot:DescribeEncryptionConfiguration", + "kms:Decrypt" + ] + }, + "list": { + "permissions": [ + "iot:DescribeEncryptionConfiguration" + ] + } + }, + "attributes": { + "AccountId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ConfigurationDetails": { + "type": "object", + "properties": { + "ConfigurationStatus": { + "type": "string", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: HEALTHY | UNHEALTHY \nUpdate requires: No interruption\n" + }, + "ErrorCode": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ErrorMessage": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "LastModifiedDate": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-iot-fleetmetric.json b/server/schema/resources/aws-iot-fleetmetric.json index 1ed809ff..0e12ed84 100644 --- a/server/schema/resources/aws-iot-fleetmetric.json +++ b/server/schema/resources/aws-iot-fleetmetric.json @@ -2,7 +2,18 @@ "typeName": "AWS::IoT::FleetMetric", "description": "An aggregated metric of certain devices in your fleet", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-iot.git", - "taggable": true, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + }, "definitions": { "Tag": { "description": "A key-value pair to associate with a resource", diff --git a/server/schema/resources/aws-iot-policy.json b/server/schema/resources/aws-iot-policy.json index 9c54b5d1..5135066e 100644 --- a/server/schema/resources/aws-iot-policy.json +++ b/server/schema/resources/aws-iot-policy.json @@ -86,13 +86,15 @@ "iot:CreatePolicy", "iot:GetPolicy", "iot:TagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "read": { "permissions": [ "iot:GetPolicy", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "delete": { @@ -100,7 +102,8 @@ "iot:DeletePolicy", "iot:GetPolicy", "iot:ListPolicyVersions", - "iot:DeletePolicyVersion" + "iot:DeletePolicyVersion", + "kms:Decrypt" ] }, "update": { @@ -112,7 +115,8 @@ "iot:SetDefaultPolicyVersion", "iot:TagResource", "iot:UntagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iot-provisioningtemplate.json b/server/schema/resources/aws-iot-provisioningtemplate.json index b1f99145..1cad22c7 100644 --- a/server/schema/resources/aws-iot-provisioningtemplate.json +++ b/server/schema/resources/aws-iot-provisioningtemplate.json @@ -122,13 +122,15 @@ "iot:CreateProvisioningTemplate", "iot:DescribeProvisioningTemplate", "iot:TagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "read": { "permissions": [ "iot:DescribeProvisioningTemplate", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "update": { @@ -142,13 +144,15 @@ "iot:DescribeProvisioningTemplate", "iot:TagResource", "iot:UntagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "delete": { "permissions": [ "iot:DeleteProvisioningTemplate", - "iot:DescribeProvisioningTemplate" + "iot:DescribeProvisioningTemplate", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iot-rolealias.json b/server/schema/resources/aws-iot-rolealias.json index 6fd7c777..d969c04a 100644 --- a/server/schema/resources/aws-iot-rolealias.json +++ b/server/schema/resources/aws-iot-rolealias.json @@ -99,7 +99,8 @@ "iot:CreateRoleAlias", "iot:DescribeRoleAlias", "iot:TagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "read": { @@ -107,7 +108,8 @@ "iam:GetRole", "iam:PassRole", "iot:DescribeRoleAlias", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "update": { @@ -118,13 +120,15 @@ "iot:DescribeRoleAlias", "iot:TagResource", "iot:UntagResource", - "iot:ListTagsForResource" + "iot:ListTagsForResource", + "kms:Decrypt" ] }, "delete": { "permissions": [ "iot:DeleteRoleAlias", - "iot:DescribeRoleAlias" + "iot:DescribeRoleAlias", + "kms:Decrypt" ] }, "list": { diff --git a/server/schema/resources/aws-iotfleetwise-campaign.json b/server/schema/resources/aws-iotfleetwise-campaign.json index 5e000f0f..44775e57 100644 --- a/server/schema/resources/aws-iotfleetwise-campaign.json +++ b/server/schema/resources/aws-iotfleetwise-campaign.json @@ -628,7 +628,7 @@ "items": { "$ref": "#/definitions/SignalInformation" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" }, "SignalsToFetch": { "type": "array", @@ -638,7 +638,7 @@ }, "maxItems": 10, "minItems": 0, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" }, "DataDestinationConfigs": { "minItems": 1, @@ -648,7 +648,7 @@ "items": { "$ref": "#/definitions/DataDestinationConfig" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" }, "StartTime": { "format": "date-time", @@ -770,7 +770,10 @@ "/properties/Compression", "/properties/StartTime", "/properties/ExpiryTime", - "/properties/DataPartitions" + "/properties/DataPartitions", + "/properties/SignalsToCollect", + "/properties/SignalsToFetch", + "/properties/DataDestinationConfigs" ], "additionalProperties": false, "primaryIdentifier": [ diff --git a/server/schema/resources/aws-iotsitewise-asset.json b/server/schema/resources/aws-iotsitewise-asset.json index cc6c47f8..a2dde1fa 100644 --- a/server/schema/resources/aws-iotsitewise-asset.json +++ b/server/schema/resources/aws-iotsitewise-asset.json @@ -171,7 +171,18 @@ } }, "additionalProperties": false, - "taggable": true, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "iotsitewise:TagResource", + "iotsitewise:UntagResource", + "iotsitewise:ListTagsForResource" + ] + }, "required": [ "AssetName", "AssetModelId" diff --git a/server/schema/resources/aws-iotsitewise-assetmodel.json b/server/schema/resources/aws-iotsitewise-assetmodel.json index bb64c68c..45af994a 100644 --- a/server/schema/resources/aws-iotsitewise-assetmodel.json +++ b/server/schema/resources/aws-iotsitewise-assetmodel.json @@ -426,6 +426,54 @@ }, "markdownDescription": "Contains information about an asset model hierarchy.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "EnforcedAssetModelInterfacePropertyMapping": { + "description": "Contains information about enforced interface property and asset model property", + "type": "object", + "additionalProperties": false, + "required": [ + "InterfaceAssetModelPropertyExternalId" + ], + "properties": { + "AssetModelPropertyExternalId": { + "description": "The external ID of the enforced asset model property", + "type": "string", + "markdownDescription": "The external ID of the enforced asset model property\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "AssetModelPropertyLogicalId": { + "description": "The logical ID of the enforced asset model property", + "type": "string", + "markdownDescription": "The logical ID of the enforced asset model property\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "InterfaceAssetModelPropertyExternalId": { + "description": "The external ID of the enforced interface property", + "type": "string", + "markdownDescription": "The external ID of the enforced interface property\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Contains information about enforced interface property and asset model property\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EnforcedAssetModelInterfaceRelationship": { + "description": "Contains information about enforced interface hierarchy and asset model hierarchy", + "type": "object", + "additionalProperties": false, + "properties": { + "InterfaceAssetModelId": { + "description": "The ID of the interface that is enforced to the asset model", + "type": "string", + "markdownDescription": "The ID of the interface that is enforced to the asset model\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "PropertyMappings": { + "description": "Contains information about enforced interface property and asset model property", + "type": "array", + "insertionOrder": true, + "items": { + "$ref": "#/definitions/EnforcedAssetModelInterfacePropertyMapping" + }, + "markdownDescription": "Contains information about enforced interface property and asset model property\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Contains information about enforced interface hierarchy and asset model hierarchy\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "Tag": { "type": "object", "additionalProperties": false, @@ -455,9 +503,9 @@ "markdownDescription": "The ID of the asset model.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" }, "AssetModelType": { - "description": "The type of the asset model (ASSET_MODEL OR COMPONENT_MODEL)", + "description": "The type of the asset model (ASSET_MODEL OR COMPONENT_MODEL or INTERFACE)", "type": "string", - "markdownDescription": "The type of the asset model (ASSET_MODEL OR COMPONENT_MODEL)\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "The type of the asset model (ASSET_MODEL OR COMPONENT_MODEL or INTERFACE)\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "AssetModelExternalId": { "description": "The external ID of the asset model.", @@ -508,6 +556,15 @@ }, "markdownDescription": "The hierarchy definitions of the asset model. Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. You can specify up to 10 hierarchies per asset model.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, + "EnforcedAssetModelInterfaceRelationships": { + "description": "a list of asset model and interface relationships", + "type": "array", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EnforcedAssetModelInterfaceRelationship" + }, + "markdownDescription": "a list of asset model and interface relationships\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "Tags": { "description": "A list of key-value pairs that contain metadata for the asset model.", "type": "array", @@ -581,7 +638,9 @@ "iotsitewise:ListAssetModelCompositeModels", "iotsitewise:UpdateAssetModelCompositeModel", "iotsitewise:DescribeAssetModelCompositeModel", - "iotsitewise:CreateAssetModelCompositeModel" + "iotsitewise:CreateAssetModelCompositeModel", + "iotsitewise:PutAssetModelInterfaceRelationship", + "iotsitewise:DescribeAssetModelInterfaceRelationship" ] }, "read": { @@ -590,7 +649,8 @@ "iotsitewise:ListAssetModelProperties", "iotsitewise:DescribeAssetModelCompositeModel", "iotsitewise:ListAssetModelCompositeModels", - "iotsitewise:ListTagsForResource" + "iotsitewise:ListTagsForResource", + "iotsitewise:DescribeAssetModelInterfaceRelationship" ] }, "update": { @@ -605,7 +665,10 @@ "iotsitewise:UpdateAssetModelCompositeModel", "iotsitewise:DeleteAssetModelCompositeModel", "iotsitewise:DescribeAssetModelCompositeModel", - "iotsitewise:UpdateAssetModel" + "iotsitewise:UpdateAssetModel", + "iotsitewise:PutAssetModelInterfaceRelationship", + "iotsitewise:DeleteAssetModelInterfaceRelationship", + "iotsitewise:DescribeAssetModelInterfaceRelationship" ] }, "delete": { diff --git a/server/schema/resources/aws-iotsitewise-computationmodel.json b/server/schema/resources/aws-iotsitewise-computationmodel.json new file mode 100644 index 00000000..6ef204c1 --- /dev/null +++ b/server/schema/resources/aws-iotsitewise-computationmodel.json @@ -0,0 +1,282 @@ +{ + "typeName": "AWS::IoTSiteWise::ComputationModel", + "description": "Resource schema for AWS::IoTSiteWise::ComputationModel.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-IoTSiteWise.git", + "definitions": { + "ComputationModelConfiguration": { + "type": "object", + "additionalProperties": false, + "properties": { + "AnomalyDetection": { + "description": "Contains configuration for anomaly detection computation model.", + "$ref": "#/definitions/AnomalyDetectionComputationModelConfiguration", + "markdownDescription": "Contains configuration for anomaly detection computation model.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AnomalyDetectionComputationModelConfiguration": { + "type": "object", + "additionalProperties": false, + "required": [ + "InputProperties", + "ResultProperty" + ], + "properties": { + "InputProperties": { + "type": "string", + "minLength": 4, + "maxLength": 67, + "description": "Input properties for anomaly detection.", + "markdownDescription": "Input properties for anomaly detection.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 4 \nMaximum Length: 67 \nPattern: ^\\$\\{[a-z][a-z0-9_]*\\}$ \nUpdate requires: No interruption\n" + }, + "ResultProperty": { + "type": "string", + "minLength": 4, + "maxLength": 67, + "description": "Result property for anomaly detection.", + "markdownDescription": "Result property for anomaly detection.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 4 \nMaximum Length: 67 \nPattern: ^\\$\\{[a-z][a-z0-9_]*\\}$ \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ComputationModelDataBinding": { + "type": "object", + "additionalProperties": false, + "patternProperties": { + "^[a-z][a-z0-9_]{0,63}$": { + "$ref": "#/definitions/ComputationModelDataBindingValue" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ComputationModelDataBindingValue": { + "type": "object", + "additionalProperties": false, + "properties": { + "AssetModelProperty": { + "description": "Defines an asset model property binding.", + "$ref": "#/definitions/AssetModelPropertyBindingValue", + "markdownDescription": "Defines an asset model property binding.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "AssetProperty": { + "description": "Defines an asset property binding.", + "$ref": "#/definitions/AssetPropertyBindingValue", + "markdownDescription": "Defines an asset property binding.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "List": { + "description": "Defines a list of computation model binding values.", + "type": "array", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/ComputationModelDataBindingValue" + }, + "markdownDescription": "Defines a list of computation model binding values.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AssetModelPropertyBindingValue": { + "type": "object", + "additionalProperties": false, + "required": [ + "AssetModelId", + "PropertyId" + ], + "properties": { + "AssetModelId": { + "type": "string", + "minLength": 36, + "maxLength": 36, + "description": "The ID of the asset model.", + "markdownDescription": "The ID of the asset model.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\n" + }, + "PropertyId": { + "type": "string", + "minLength": 36, + "maxLength": 36, + "description": "The ID of the asset model property.", + "markdownDescription": "The ID of the asset model property.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AssetPropertyBindingValue": { + "type": "object", + "additionalProperties": false, + "required": [ + "AssetId", + "PropertyId" + ], + "properties": { + "AssetId": { + "type": "string", + "minLength": 36, + "maxLength": 36, + "description": "The ID of the asset.", + "markdownDescription": "The ID of the asset.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\n" + }, + "PropertyId": { + "type": "string", + "minLength": 36, + "maxLength": 36, + "description": "The ID of the asset property.", + "markdownDescription": "The ID of the asset property.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Key" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "ComputationModelId": { + "description": "The ID of the computation model.", + "type": "string", + "minLength": 36, + "maxLength": 36, + "markdownDescription": "The ID of the computation model.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputationModelArn": { + "description": "The ARN of the computation model.", + "type": "string", + "minLength": 1, + "maxLength": 1600, + "markdownDescription": "The ARN of the computation model.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1600 \nPattern: ^arn:aws(-cn|-us-gov)?:[a-zA-Z0-9-:/_\\.]+$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputationModelName": { + "description": "The name of the computation model.", + "type": "string", + "minLength": 1, + "maxLength": 256, + "markdownDescription": "The name of the computation model.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-zA-Z0-9 _\\-#$*!@]+$ \nUpdate requires: No interruption\n" + }, + "ComputationModelDescription": { + "description": "A description about the computation model.", + "type": "string", + "minLength": 1, + "maxLength": 2048, + "markdownDescription": "A description about the computation model.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: ^[a-zA-Z0-9 _\\-#$*!@]+$ \nUpdate requires: No interruption\n" + }, + "ComputationModelConfiguration": { + "description": "The configuration for the computation model.", + "$ref": "#/definitions/ComputationModelConfiguration", + "markdownDescription": "The configuration for the computation model.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, + "ComputationModelDataBinding": { + "description": "The data binding for the computation model.", + "$ref": "#/definitions/ComputationModelDataBinding", + "markdownDescription": "The data binding for the computation model.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "iotsitewise:TagResource", + "iotsitewise:UntagResource", + "iotsitewise:ListTagsForResource" + ] + }, + "required": [ + "ComputationModelName", + "ComputationModelConfiguration", + "ComputationModelDataBinding" + ], + "readOnlyProperties": [ + "/properties/ComputationModelArn", + "/properties/ComputationModelId" + ], + "primaryIdentifier": [ + "/properties/ComputationModelId" + ], + "handlers": { + "create": { + "permissions": [ + "iotsitewise:CreateComputationModel", + "iotsitewise:DescribeComputationModel", + "iotsitewise:ListTagsForResource", + "iotsitewise:TagResource" + ] + }, + "read": { + "permissions": [ + "iotsitewise:DescribeComputationModel", + "iotsitewise:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iotsitewise:UpdateComputationModel", + "iotsitewise:DescribeComputationModel", + "iotsitewise:ListTagsForResource", + "iotsitewise:TagResource", + "iotsitewise:UntagResource" + ] + }, + "delete": { + "permissions": [ + "iotsitewise:DeleteComputationModel", + "iotsitewise:DescribeComputationModel", + "iotsitewise:ListTagsForResource" + ] + }, + "list": { + "permissions": [ + "iotsitewise:ListComputationModels", + "iotsitewise:ListTagsForResource" + ] + } + }, + "attributes": { + "ComputationModelId": { + "description": "The ID of the computation model.", + "type": "string", + "minLength": 36, + "maxLength": 36, + "markdownDescription": "The ID of the computation model.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputationModelArn": { + "description": "The ARN of the computation model.", + "type": "string", + "minLength": 1, + "maxLength": 1600, + "markdownDescription": "The ARN of the computation model.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1600 \nPattern: ^arn:aws(-cn|-us-gov)?:[a-zA-Z0-9-:/_\\.]+$ \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-ivs-playbackrestrictionpolicy.json b/server/schema/resources/aws-ivs-playbackrestrictionpolicy.json index 011bcff7..3c9cb9a7 100644 --- a/server/schema/resources/aws-ivs-playbackrestrictionpolicy.json +++ b/server/schema/resources/aws-ivs-playbackrestrictionpolicy.json @@ -48,7 +48,7 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "default": [], - "markdownDescription": "A list of country codes that control geoblocking restriction. Allowed values are the officially assigned ISO 3166-1 alpha-2 codes. Default: All countries (an empty array).\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "A list of country codes that control geoblocking restriction. Allowed values are the officially assigned ISO 3166-1 alpha-2 codes. Default: All countries (an empty array).\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "AllowedOrigins": { "description": "A list of origin sites that control CORS restriction. Allowed values are the same as valid values of the Origin header defined at https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin", @@ -59,7 +59,7 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "default": [], - "markdownDescription": "A list of origin sites that control CORS restriction. Allowed values are the same as valid values of the Origin header defined at https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "A list of origin sites that control CORS restriction. Allowed values are the same as valid values of the Origin header defined at https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Origin\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "EnableStrictOriginEnforcement": { "description": "Whether channel playback is constrained by origin site.", @@ -87,10 +87,6 @@ } }, "additionalProperties": false, - "required": [ - "AllowedCountries", - "AllowedOrigins" - ], "tagging": { "taggable": true, "tagOnCreate": true, diff --git a/server/schema/resources/aws-ivs-stage.json b/server/schema/resources/aws-ivs-stage.json index 7767fb49..3ef3289f 100644 --- a/server/schema/resources/aws-ivs-stage.json +++ b/server/schema/resources/aws-ivs-stage.json @@ -59,6 +59,94 @@ "AUDIO_VIDEO" ], "markdownDescription": "Types of media to be recorded. Default: AUDIO_VIDEO.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "HlsConfiguration": { + "description": "HLS configuration object for individual participant recording.", + "type": "object", + "additionalProperties": false, + "properties": { + "ParticipantRecordingHlsConfiguration": { + "description": "An object representing a configuration of participant HLS recordings for individual participant recording.", + "type": "object", + "additionalProperties": false, + "properties": { + "TargetSegmentDurationSeconds": { + "description": "Defines the target duration for recorded segments generated when recording a stage participant. Segments may have durations longer than the specified value when needed to ensure each segment begins with a keyframe. Default: 6.", + "type": "integer", + "minimum": 2, + "maximum": 10, + "default": 6, + "markdownDescription": "Defines the target duration for recorded segments generated when recording a stage participant. Segments may have durations longer than the specified value when needed to ensure each segment begins with a keyframe. Default: 6.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "An object representing a configuration of participant HLS recordings for individual participant recording.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "required": [], + "markdownDescription": "HLS configuration object for individual participant recording.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RecordingReconnectWindowSeconds": { + "description": "If a stage publisher disconnects and then reconnects within the specified interval, the multiple recordings will be considered a single recording and merged together. The default value is 0, which disables merging.", + "type": "integer", + "minimum": 0, + "maximum": 300, + "default": 0, + "markdownDescription": "If a stage publisher disconnects and then reconnects within the specified interval, the multiple recordings will be considered a single recording and merged together. The default value is 0, which disables merging.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "ThumbnailConfiguration": { + "description": "A complex type that allows you to enable/disable the recording of thumbnails for individual participant recording and modify the interval at which thumbnails are generated for the live session.", + "type": "object", + "additionalProperties": false, + "properties": { + "ParticipantThumbnailConfiguration": { + "description": "An object representing a configuration of thumbnails for recorded video from an individual participant.", + "type": "object", + "additionalProperties": false, + "properties": { + "RecordingMode": { + "description": "Thumbnail recording mode. Default: DISABLED.", + "type": "string", + "enum": [ + "INTERVAL", + "DISABLED" + ], + "default": "INTERVAL", + "markdownDescription": "Thumbnail recording mode. Default: DISABLED.\n\n---\n\nRequired: No \nType: String \nAllowed Values: INTERVAL | DISABLED \nUpdate requires: No interruption\n" + }, + "Storage": { + "description": "Indicates the format in which thumbnails are recorded. SEQUENTIAL records all generated thumbnails in a serial manner, to the media/thumbnails/high directory. LATEST saves the latest thumbnail in media/latest_thumbnail/high/thumb.jpg and overwrites it at the interval specified by targetIntervalSeconds. You can enable both SEQUENTIAL and LATEST. Default: SEQUENTIAL.", + "type": "array", + "minItems": 0, + "maxItems": 2, + "uniqueItems": true, + "insertionOrder": false, + "items": { + "type": "string", + "enum": [ + "SEQUENTIAL", + "LATEST" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: SEQUENTIAL | LATEST \nUpdate requires: No interruption\n" + }, + "default": [ + "SEQUENTIAL" + ], + "markdownDescription": "Indicates the format in which thumbnails are recorded. SEQUENTIAL records all generated thumbnails in a serial manner, to the media/thumbnails/high directory. LATEST saves the latest thumbnail in media/latest_thumbnail/high/thumb.jpg and overwrites it at the interval specified by targetIntervalSeconds. You can enable both SEQUENTIAL and LATEST. Default: SEQUENTIAL.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "TargetIntervalSeconds": { + "description": "The targeted thumbnail-generation interval in seconds. This is configurable only if recordingMode is INTERVAL. Default: 60.", + "type": "integer", + "minimum": 1, + "maximum": 86400, + "default": 60, + "markdownDescription": "The targeted thumbnail-generation interval in seconds. This is configurable only if recordingMode is INTERVAL. Default: 60.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "An object representing a configuration of thumbnails for recorded video from an individual participant.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "required": [], + "markdownDescription": "A complex type that allows you to enable/disable the recording of thumbnails for individual participant recording and modify the interval at which thumbnails are generated for the live session.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "required": [ diff --git a/server/schema/resources/aws-kendra-datasource.json b/server/schema/resources/aws-kendra-datasource.json index c6f5a03a..f4a86128 100644 --- a/server/schema/resources/aws-kendra-datasource.json +++ b/server/schema/resources/aws-kendra-datasource.json @@ -1500,6 +1500,20 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "TemplateConfiguration": { + "type": "object", + "properties": { + "Template": { + "type": "object", + "markdownDescription": "\n\n---\n\nRequired: Yes \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "Template" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DataSourceConfiguration": { "type": "object", "properties": { @@ -1532,6 +1546,9 @@ }, "WorkDocsConfiguration": { "$ref": "#/definitions/WorkDocsConfiguration" + }, + "TemplateConfiguration": { + "$ref": "#/definitions/TemplateConfiguration" } }, "additionalProperties": false, @@ -1585,6 +1602,11 @@ "required": [ "WorkDocsConfiguration" ] + }, + { + "required": [ + "TemplateConfiguration" + ] } ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -1610,9 +1632,10 @@ "CONFLUENCE", "GOOGLEDRIVE", "WEBCRAWLER", - "WORKDOCS" + "WORKDOCS", + "TEMPLATE" ], - "markdownDescription": "Data source type\n\n---\n\nRequired: No \nType: String \nAllowed Values: S3 | SHAREPOINT | SALESFORCE | ONEDRIVE | SERVICENOW | DATABASE | CUSTOM | CONFLUENCE | GOOGLEDRIVE | WEBCRAWLER | WORKDOCS \nUpdate requires: No interruption\n" + "markdownDescription": "Data source type\n\n---\n\nRequired: No \nType: String \nAllowed Values: S3 | SHAREPOINT | SALESFORCE | ONEDRIVE | SERVICENOW | DATABASE | CUSTOM | CONFLUENCE | GOOGLEDRIVE | WEBCRAWLER | WORKDOCS | TEMPLATE \nUpdate requires: No interruption\n" }, "Description": { "description": "Description of data source", diff --git a/server/schema/resources/aws-kinesis-stream.json b/server/schema/resources/aws-kinesis-stream.json index 728bf752..3630cd96 100644 --- a/server/schema/resources/aws-kinesis-stream.json +++ b/server/schema/resources/aws-kinesis-stream.json @@ -187,8 +187,11 @@ "tagProperty": "/properties/Tags", "permissions": [ "kinesis:AddTagsToStream", + "kinesis:TagResource", "kinesis:RemoveTagsFromStream", - "kinesis:ListTagsForStream" + "kinesis:UntagResource", + "kinesis:ListTagsForStream", + "kinesis:ListTagsForResource" ] }, "handlers": { @@ -200,13 +203,15 @@ "kinesis:IncreaseStreamRetentionPeriod", "kinesis:StartStreamEncryption", "kinesis:AddTagsToStream", - "kinesis:ListTagsForStream" + "kinesis:ListTagsForStream", + "kinesis:ListTagsForResource" ] }, "read": { "permissions": [ "kinesis:DescribeStreamSummary", - "kinesis:ListTagsForStream" + "kinesis:ListTagsForStream", + "kinesis:ListTagsForResource" ] }, "update": { @@ -221,8 +226,11 @@ "kinesis:StartStreamEncryption", "kinesis:StopStreamEncryption", "kinesis:AddTagsToStream", + "kinesis:TagResource", "kinesis:RemoveTagsFromStream", - "kinesis:ListTagsForStream" + "kinesis:UntagResource", + "kinesis:ListTagsForStream", + "kinesis:ListTagsForResource" ], "timeoutInMinutes": 240 }, @@ -230,7 +238,8 @@ "permissions": [ "kinesis:DescribeStreamSummary", "kinesis:DeleteStream", - "kinesis:RemoveTagsFromStream" + "kinesis:RemoveTagsFromStream", + "kinesis:UntagResource" ] }, "list": { diff --git a/server/schema/resources/aws-kinesis-streamconsumer.json b/server/schema/resources/aws-kinesis-streamconsumer.json index d57f96d1..2a4a2d12 100644 --- a/server/schema/resources/aws-kinesis-streamconsumer.json +++ b/server/schema/resources/aws-kinesis-streamconsumer.json @@ -1,66 +1,149 @@ { + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "permissions": [ + "kinesis:TagResource", + "kinesis:UntagResource", + "kinesis:ListTagsForResource" + ], + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": false, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": false + }, + "handlers": { + "read": { + "permissions": [ + "kinesis:DescribeStreamConsumer", + "kinesis:ListTagsForResource" + ] + }, + "create": { + "permissions": [ + "kinesis:RegisterStreamConsumer", + "kinesis:DescribeStreamConsumer", + "kinesis:TagResource" + ] + }, + "list": { + "permissions": [ + "kinesis:ListStreamConsumers" + ] + }, + "delete": { + "permissions": [ + "kinesis:DeregisterStreamConsumer", + "kinesis:DescribeStreamConsumer", + "kinesis:UntagResource" + ] + } + }, "typeName": "AWS::Kinesis::StreamConsumer", + "readOnlyProperties": [ + "/properties/ConsumerARN", + "/properties/ConsumerStatus", + "/properties/ConsumerCreationTimestamp" + ], "description": "Resource Type definition for AWS::Kinesis::StreamConsumer", + "createOnlyProperties": [ + "/properties/ConsumerName", + "/properties/StreamARN", + "/properties/Tags" + ], "additionalProperties": false, + "primaryIdentifier": [ + "/properties/ConsumerARN" + ], + "definitions": { + "Tag": { + "description": "An arbitrary set of tags (key-value pairs) to associate with the Kinesis consumer.", + "additionalProperties": false, + "type": "object", + "properties": { + "Value": { + "minLength": 0, + "description": "The value for the tag. You can specify a value that is 0 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "type": "string", + "maxLength": 255, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "Key": { + "minLength": 1, + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "type": "string", + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "An arbitrary set of tags (key-value pairs) to associate with the Kinesis consumer.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, "properties": { - "Id": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, "ConsumerCreationTimestamp": { + "description": "Timestamp when the consumer was created.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "Timestamp when the consumer was created.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "ConsumerName": { + "minLength": 1, + "description": "The name of the Kinesis Stream Consumer. For a given Kinesis data stream, each consumer must have a unique name. However, consumer names don't have to be unique across data streams.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "maxLength": 128, + "markdownDescription": "The name of the Kinesis Stream Consumer. For a given Kinesis data stream, each consumer must have a unique name. However, consumer names don't have to be unique across data streams.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^[a-zA-Z0-9_.-]+$ \nUpdate requires: Replacement\n" }, "ConsumerARN": { + "description": "The ARN returned by Kinesis Data Streams when you registered the consumer. If you don't know the ARN of the consumer that you want to deregister, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream. The description of a consumer contains its ARN.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The ARN returned by Kinesis Data Streams when you registered the consumer. If you don't know the ARN of the consumer that you want to deregister, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream. The description of a consumer contains its ARN.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "ConsumerStatus": { + "description": "A consumer can't read data while in the CREATING or DELETING states. Valid Values: CREATING | DELETING | ACTIVE", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "A consumer can't read data while in the CREATING or DELETING states. Valid Values: CREATING | DELETING | ACTIVE\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "StreamARN": { + "minLength": 1, + "description": "The Amazon resource name (ARN) of the Kinesis data stream that you want to register the consumer with.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "maxLength": 2048, + "markdownDescription": "The Amazon resource name (ARN) of the Kinesis data stream that you want to register the consumer with.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: ^arn:aws.*:kinesis:.*:\\d{12}:stream/\\S+ \nUpdate requires: Replacement\n" + }, + "Tags": { + "maxItems": 50, + "uniqueItems": false, + "description": "An arbitrary set of tags (key\u2013value pairs) to associate with the Kinesis consumer.", + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An arbitrary set of tags (key\u2013value pairs) to associate with the Kinesis consumer.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" } }, "required": [ "ConsumerName", "StreamARN" ], - "readOnlyProperties": [ - "/properties/ConsumerStatus", - "/properties/ConsumerARN", - "/properties/ConsumerCreationTimestamp", - "/properties/Id" - ], - "createOnlyProperties": [ - "/properties/ConsumerName", - "/properties/StreamARN" - ], - "primaryIdentifier": [ - "/properties/Id" - ], "attributes": { - "Id": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, "ConsumerCreationTimestamp": { + "description": "Timestamp when the consumer was created.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "Timestamp when the consumer was created.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "ConsumerARN": { + "description": "The ARN returned by Kinesis Data Streams when you registered the consumer. If you don't know the ARN of the consumer that you want to deregister, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream. The description of a consumer contains its ARN.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "The ARN returned by Kinesis Data Streams when you registered the consumer. If you don't know the ARN of the consumer that you want to deregister, you can use the ListStreamConsumers operation to get a list of the descriptions of all the consumers that are currently registered with a given data stream. The description of a consumer contains its ARN.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "ConsumerStatus": { + "description": "A consumer can't read data while in the CREATING or DELETING states. Valid Values: CREATING | DELETING | ACTIVE", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "markdownDescription": "A consumer can't read data while in the CREATING or DELETING states. Valid Values: CREATING | DELETING | ACTIVE\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-kinesisfirehose-deliverystream.json b/server/schema/resources/aws-kinesisfirehose-deliverystream.json index e555120f..f58382c1 100644 --- a/server/schema/resources/aws-kinesisfirehose-deliverystream.json +++ b/server/schema/resources/aws-kinesisfirehose-deliverystream.json @@ -1,2190 +1,2151 @@ { - "typeName": "AWS::KinesisFirehose::DeliveryStream", - "description": "Resource Type definition for AWS::KinesisFirehose::DeliveryStream", - "additionalProperties": false, - "properties": { - "Arn": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "DeliveryStreamEncryptionConfigurationInput": { - "$ref": "#/definitions/DeliveryStreamEncryptionConfigurationInput" - }, - "DeliveryStreamName": { - "type": "string", - "minLength": 1, - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: [a-zA-Z0-9._-]+ \nUpdate requires: Replacement\n" - }, - "DeliveryStreamType": { - "type": "string", - "enum": [ - "DatabaseAsSource", - "DirectPut", - "KinesisStreamAsSource", - "MSKAsSource" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: DatabaseAsSource | DirectPut | KinesisStreamAsSource | MSKAsSource \nUpdate requires: Replacement\n" - }, - "ElasticsearchDestinationConfiguration": { - "$ref": "#/definitions/ElasticsearchDestinationConfiguration" - }, - "AmazonopensearchserviceDestinationConfiguration": { - "$ref": "#/definitions/AmazonopensearchserviceDestinationConfiguration" - }, - "AmazonOpenSearchServerlessDestinationConfiguration": { - "$ref": "#/definitions/AmazonOpenSearchServerlessDestinationConfiguration" - }, - "ExtendedS3DestinationConfiguration": { - "$ref": "#/definitions/ExtendedS3DestinationConfiguration" - }, - "DatabaseSourceConfiguration": { - "$ref": "#/definitions/DatabaseSourceConfiguration" - }, - "DirectPutSourceConfiguration": { - "$ref": "#/definitions/DirectPutSourceConfiguration" - }, - "KinesisStreamSourceConfiguration": { - "$ref": "#/definitions/KinesisStreamSourceConfiguration" - }, - "MSKSourceConfiguration": { - "$ref": "#/definitions/MSKSourceConfiguration" - }, - "RedshiftDestinationConfiguration": { - "$ref": "#/definitions/RedshiftDestinationConfiguration" - }, - "S3DestinationConfiguration": { - "$ref": "#/definitions/S3DestinationConfiguration" - }, - "SplunkDestinationConfiguration": { - "$ref": "#/definitions/SplunkDestinationConfiguration" + "tagging": { + "permissions": [ + "firehose:TagDeliveryStream", + "firehose:ListTagsForDeliveryStream", + "firehose:UntagDeliveryStream" + ], + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": false + }, + "handlers": { + "read": { + "permissions": [ + "firehose:DescribeDeliveryStream", + "firehose:ListTagsForDeliveryStream" + ] }, - "HttpEndpointDestinationConfiguration": { - "$ref": "#/definitions/HttpEndpointDestinationConfiguration" + "create": { + "permissions": [ + "firehose:CreateDeliveryStream", + "firehose:DescribeDeliveryStream", + "iam:GetRole", + "iam:PassRole", + "kms:CreateGrant", + "kms:DescribeKey", + "firehose:TagDeliveryStream" + ] }, - "SnowflakeDestinationConfiguration": { - "$ref": "#/definitions/SnowflakeDestinationConfiguration" + "update": { + "permissions": [ + "firehose:UpdateDestination", + "firehose:DescribeDeliveryStream", + "firehose:StartDeliveryStreamEncryption", + "firehose:StopDeliveryStreamEncryption", + "firehose:ListTagsForDeliveryStream", + "firehose:TagDeliveryStream", + "firehose:UntagDeliveryStream", + "kms:CreateGrant", + "kms:RevokeGrant", + "kms:DescribeKey", + "iam:PassRole" + ] }, - "IcebergDestinationConfiguration": { - "$ref": "#/definitions/IcebergDestinationConfiguration" + "list": { + "permissions": [ + "firehose:ListDeliveryStreams" + ] }, - "Tags": { - "type": "array", - "items": { - "$ref": "#/definitions/Tag" - }, - "minItems": 1, - "maxItems": 50, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "delete": { + "permissions": [ + "firehose:DeleteDeliveryStream", + "firehose:DescribeDeliveryStream", + "kms:RevokeGrant", + "kms:DescribeKey" + ] } }, + "typeName": "AWS::KinesisFirehose::DeliveryStream", + "readOnlyProperties": [ + "/properties/Arn" + ], + "description": "Resource Type definition for AWS::KinesisFirehose::DeliveryStream", + "writeOnlyProperties": [ + "/properties/HttpEndpointDestinationConfiguration/EndpointConfiguration/AccessKey", + "/properties/RedshiftDestinationConfiguration/Password", + "/properties/ElasticsearchDestinationConfiguration/CloudWatchLoggingOptions/Enabled", + "/properties/AmazonopensearchserviceDestinationConfiguration", + "/properties/ElasticsearchDestinationConfiguration", + "/properties/SnowflakeDestinationConfiguration", + "/properties/AmazonOpenSearchServerlessDestinationConfiguration", + "/properties/DatabaseSourceConfiguration", + "/properties/IcebergDestinationConfiguration", + "/properties/HttpEndpointDestinationConfiguration/SecretsManagerConfiguration", + "/properties/RedshiftDestinationConfiguration/ProcessingConfiguration", + "/properties/S3DestinationConfiguration", + "/properties/MSKSourceConfiguration", + "/properties/KinesisStreamSourceConfiguration", + "/properties/SnowflakeDestinationConfiguration/SnowflakeVpcConfiguration", + "/properties/HttpEndpointDestinationConfiguration/ProcessingConfiguration", + "/properties/RedshiftDestinationConfiguration/S3Configuration/EncryptionConfiguration/KMSEncryptionConfig/AWSKMSKeyARN", + "/properties/SplunkDestinationConfiguration/BufferingHints", + "/properties/SplunkDestinationConfiguration/SecretsManagerConfiguration", + "/properties/SplunkDestinationConfiguration/ProcessingConfiguration", + "/properties/SplunkDestinationConfiguration/CloudWatchLoggingOptions", + "/properties/SplunkDestinationConfiguration/S3Configuration/EncryptionConfiguration/NoEncryptionConfig", + "/properties/RedshiftDestinationConfiguration/S3BackupConfiguration/ErrorOutputPrefix", + "/properties/RedshiftDestinationConfiguration/S3BackupConfiguration/EncryptionConfiguration/KMSEncryptionConfig/AWSKMSKeyARN", + "/properties/ExtendedS3DestinationConfiguration/FileExtension", + "/properties/RedshiftDestinationConfiguration/S3Configuration/ErrorOutputPrefix", + "/properties/RedshiftDestinationConfiguration/SecretsManagerConfiguration/Enabled", + "/properties/RedshiftDestinationConfiguration/SecretsManagerConfiguration/SecretARN", + "/properties/HttpEndpointDestinationConfiguration/S3Configuration/EncryptionConfiguration/KMSEncryptionConfig/AWSKMSKeyARN", + "/properties/ExtendedS3DestinationConfiguration/CustomTimeZone", + "/properties/RedshiftDestinationConfiguration/SecretsManagerConfiguration/RoleARN", + "/properties/DirectPutSourceConfiguration/ThroughputHintInMBs" + ], + "createOnlyProperties": [ + "/properties/DeliveryStreamName", + "/properties/DeliveryStreamType", + "/properties/ElasticsearchDestinationConfiguration/VpcConfiguration", + "/properties/AmazonopensearchserviceDestinationConfiguration/VpcConfiguration", + "/properties/AmazonOpenSearchServerlessDestinationConfiguration/VpcConfiguration", + "/properties/DatabaseSourceConfiguration", + "/properties/KinesisStreamSourceConfiguration", + "/properties/DirectPutSourceConfiguration", + "/properties/MSKSourceConfiguration", + "/properties/IcebergDestinationConfiguration/CatalogConfiguration", + "/properties/SnowflakeDestinationConfiguration/SnowflakeVpcConfiguration" + ], + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/DeliveryStreamName" + ], "definitions": { - "DeliveryStreamEncryptionConfigurationInput": { - "type": "object", + "SnowflakeVpcConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "KeyARN": { + "PrivateLinkVpceId": { + "minLength": 47, "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 47 \nMaximum Length: 255 \nPattern: ([a-zA-Z0-9\\-\\_]+\\.){2,3}vpce\\.[a-zA-Z0-9\\-]*\\.vpce-svc\\-[a-zA-Z0-9\\-]{17}$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "PrivateLinkVpceId" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CopyCommand": { + "additionalProperties": false, + "type": "object", + "properties": { + "DataTableName": { "minLength": 1, + "type": "string", "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::KMS::Key", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" }, - "KeyType": { + "CopyOptions": { + "minLength": 0, "type": "string", - "enum": [ - "AWS_OWNED_CMK", - "CUSTOMER_MANAGED_CMK" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: AWS_OWNED_CMK | CUSTOMER_MANAGED_CMK \nUpdate requires: No interruption\n" + "maxLength": 204800, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 204800 \nUpdate requires: No interruption\n" + }, + "DataTableColumns": { + "minLength": 0, + "type": "string", + "maxLength": 204800, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 204800 \nUpdate requires: No interruption\n" } }, "required": [ - "KeyType" + "DataTableName" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SplunkDestinationConfiguration": { + "SnowflakeRetryOptions": { + "additionalProperties": false, "type": "object", + "properties": { + "DurationInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ParquetSerDe": { "additionalProperties": false, + "type": "object", "properties": { - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" + "Compression": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "HECAcknowledgmentTimeoutInSeconds": { + "BlockSizeBytes": { "type": "integer", - "minimum": 180, - "maximum": 600, "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "HECEndpoint": { - "type": "string", - "minLength": 0, - "maxLength": 2048, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "EnableDictionaryCompression": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "HECEndpointType": { - "type": "string", - "enum": [ - "Raw", - "Event" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: Raw | Event \nUpdate requires: No interruption\n" + "PageSizeBytes": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "HECToken": { - "type": "string", - "minLength": 0, - "maxLength": 2048, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "MaxPaddingBytes": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "ProcessingConfiguration": { - "$ref": "#/definitions/ProcessingConfiguration" + "WriterVersion": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DatabaseColumns": { + "additionalProperties": false, + "type": "object", + "properties": { + "Exclude": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseColumnName" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "RetryOptions": { - "$ref": "#/definitions/SplunkRetryOptions" + "Include": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseColumnName" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "MSKSourceConfiguration": { + "additionalProperties": false, + "type": "object", + "properties": { + "AuthenticationConfiguration": { + "$ref": "#/definitions/AuthenticationConfiguration" }, - "S3BackupMode": { + "ReadFromTimestamp": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "S3Configuration": { - "$ref": "#/definitions/S3DestinationConfiguration" - }, - "SecretsManagerConfiguration": { - "$ref": "#/definitions/SecretsManagerConfiguration" + "MSKClusterARN": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "BufferingHints": { - "$ref": "#/definitions/SplunkBufferingHints" + "TopicName": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: [a-zA-Z0-9\\._\\-]+ \nUpdate requires: No interruption\n" } }, "required": [ - "HECEndpoint", - "S3Configuration", - "HECEndpointType" + "MSKClusterARN", + "TopicName", + "AuthenticationConfiguration" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "HttpEndpointDestinationConfiguration": { + "DirectPutSourceConfiguration": { + "additionalProperties": false, "type": "object", + "properties": { + "ThroughputHintInMBs": { + "maximum": 100, + "type": "integer", + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "PartitionField": { "additionalProperties": false, + "type": "object", "properties": { - "RoleARN": { + "SourceName": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "SourceName" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AmazonOpenSearchServerlessBufferingHints": { + "additionalProperties": false, + "type": "object", + "properties": { + "IntervalInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "SizeInMBs": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "VpcEndpointServiceName": { + "minLength": 47, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 47 \nMaximum Length: 255 \nPattern: ([a-zA-Z0-9\\-\\_]+\\.){2,3}vpce\\.[a-zA-Z0-9\\-]*\\.vpce-svc\\-[a-zA-Z0-9\\-]{17}$ \nUpdate requires: No interruption\n" + }, + "SnowflakeDestinationConfiguration": { + "additionalProperties": false, + "type": "object", + "properties": { + "PrivateKey": { + "minLength": 256, "type": "string", + "maxLength": 4096, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 256 \nMaximum Length: 4096 \nPattern: ^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?$ \nUpdate requires: No interruption\n" + }, + "User": { "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" }, - "EndpointConfiguration": { - "$ref": "#/definitions/HttpEndpointConfiguration" + "Table": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" }, - "RequestConfiguration": { - "$ref": "#/definitions/HttpEndpointRequestConfiguration" + "SnowflakeVpcConfiguration": { + "$ref": "#/definitions/SnowflakeVpcConfiguration" }, - "BufferingHints": { - "$ref": "#/definitions/BufferingHints" + "DataLoadingOption": { + "type": "string", + "enum": [ + "JSON_MAPPING", + "VARIANT_CONTENT_MAPPING", + "VARIANT_CONTENT_AND_METADATA_MAPPING" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: JSON_MAPPING | VARIANT_CONTENT_MAPPING | VARIANT_CONTENT_AND_METADATA_MAPPING \nUpdate requires: No interruption\n" }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" + "Schema": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "ContentColumnName": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "SecretsManagerConfiguration": { + "$ref": "#/definitions/SecretsManagerConfiguration" + }, + "SnowflakeRoleConfiguration": { + "$ref": "#/definitions/SnowflakeRoleConfiguration" }, "ProcessingConfiguration": { "$ref": "#/definitions/ProcessingConfiguration" }, - "RetryOptions": { - "$ref": "#/definitions/RetryOptions" + "AccountUrl": { + "minLength": 24, + "type": "string", + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 24 \nMaximum Length: 2048 \nPattern: .+?\\.snowflakecomputing\\.com \nUpdate requires: No interruption\n" + }, + "RoleARN": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, "S3BackupMode": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "enum": [ + "FailedDataOnly", + "AllData" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDataOnly | AllData \nUpdate requires: No interruption\n" }, "S3Configuration": { "$ref": "#/definitions/S3DestinationConfiguration" }, - "SecretsManagerConfiguration": { - "$ref": "#/definitions/SecretsManagerConfiguration" + "BufferingHints": { + "$ref": "#/definitions/SnowflakeBufferingHints" + }, + "MetaDataColumnName": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "Database": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "RetryOptions": { + "$ref": "#/definitions/SnowflakeRetryOptions" + }, + "KeyPassphrase": { + "minLength": 7, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 7 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" } }, "required": [ - "EndpointConfiguration", + "AccountUrl", + "Database", + "Schema", + "Table", + "RoleARN", "S3Configuration" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" }, - "DirectPutSourceConfiguration": { - "type": "object", + "AmazonOpenSearchServerlessRetryOptions": { "additionalProperties": false, + "type": "object", "properties": { - "ThroughputHintInMBs": { + "DurationInSeconds": { "type": "integer", - "minimum": 1, - "maximum": 100, "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "KinesisStreamSourceConfiguration": { - "type": "object", + "OrcSerDe": { "additionalProperties": false, - "properties": { - "KinesisStreamARN": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::Kinesis::Stream", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "RoleARN": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - } - }, - "required": [ - "RoleARN", - "KinesisStreamARN" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "DatabaseSourceConfiguration": { "type": "object", - "additionalProperties": false, "properties": { - "Type": { - "type": "string", - "enum": [ - "MySQL", - "PostgreSQL" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MySQL | PostgreSQL \nUpdate requires: No interruption\n" + "PaddingTolerance": { + "type": "number", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" }, - "Endpoint": { + "Compression": { "type": "string", - "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^(?!\\s*$).+ \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "Port": { + "StripeSizeBytes": { "type": "integer", - "minimum": 0, - "maximum": 65535, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" - }, - "SSLMode": { - "type": "string", - "enum": [ - "Disabled", - "Enabled" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Disabled | Enabled \nUpdate requires: No interruption\n" - }, - "Databases": { - "$ref": "#/definitions/Databases" - }, - "Tables": { - "$ref": "#/definitions/DatabaseTables" - }, - "Columns": { - "$ref": "#/definitions/DatabaseColumns" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "SurrogateKeys": { + "BloomFilterColumns": { + "uniqueItems": true, "type": "array", "items": { "type": "string", - "minLength": 1, - "maxLength": 1024, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nPattern: ^\\S+$ \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "SnapshotWatermarkTable": { - "$ref": "#/definitions/DatabaseTableName" - }, - "DatabaseSourceAuthenticationConfiguration": { - "$ref": "#/definitions/DatabaseSourceAuthenticationConfiguration" + "BloomFilterFalsePositiveProbability": { + "type": "number", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" }, - "DatabaseSourceVPCConfiguration": { - "$ref": "#/definitions/DatabaseSourceVPCConfiguration" + "EnablePadding": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "Digest": { + "FormatVersion": { "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: .* \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "PublicCertificate": { - "type": "string", - "minLength": 1, - "maxLength": 4096, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nPattern: .* \nUpdate requires: No interruption\n" + "RowIndexStride": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "BlockSizeBytes": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "DictionaryKeyThreshold": { + "type": "number", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" } }, - "required": [ - "Type", - "Endpoint", - "Port", - "Databases", - "Tables", - "SnapshotWatermarkTable", - "DatabaseSourceAuthenticationConfiguration", - "DatabaseSourceVPCConfiguration" - ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Databases": { - "type": "object", + "SnowflakeBufferingHints": { "additionalProperties": false, + "type": "object", "properties": { - "Include": { - "type": "array", - "items": { - "$ref": "#/definitions/DatabaseName" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "IntervalInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "Exclude": { - "type": "array", - "items": { - "$ref": "#/definitions/DatabaseName" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "SizeInMBs": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DatabaseName": { - "type": "string", - "minLength": 1, - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: [\\u0001-\\uFFFF]* \nUpdate requires: No interruption\n" - }, - "DatabaseTables": { - "type": "object", + "ProcessorParameter": { "additionalProperties": false, + "type": "object", "properties": { - "Include": { - "type": "array", - "items": { - "$ref": "#/definitions/DatabaseTableName" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "ParameterValue": { + "anyOf": [ + { + "relationshipRef": { + "typeName": "AWS::Lambda::Function", + "propertyPath": "/properties/Arn" + } + }, + { + "relationshipRef": { + "typeName": "AWS::IAM::Role", + "propertyPath": "/properties/Arn" + } + }, + { + "relationshipRef": { + "typeName": "AWS::Lambda::Alias", + "propertyPath": "/properties/Id" + } + } + ], + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, - "Exclude": { - "type": "array", - "items": { - "$ref": "#/definitions/DatabaseTableName" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "ParameterName": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, + "required": [ + "ParameterValue", + "ParameterName" + ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DatabaseTableName": { - "type": "string", - "minLength": 1, - "maxLength": 129, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 129 \nPattern: [\\u0001-\\uFFFF]* \nUpdate requires: No interruption\n" - }, - "DatabaseColumns": { - "type": "object", + "HiveJsonSerDe": { "additionalProperties": false, + "type": "object", "properties": { - "Include": { - "type": "array", - "items": { - "$ref": "#/definitions/DatabaseColumnName" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Exclude": { + "TimestampFormats": { + "uniqueItems": true, "type": "array", "items": { - "$ref": "#/definitions/DatabaseColumnName" + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DatabaseColumnName": { - "type": "string", - "minLength": 1, - "maxLength": 194, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 194 \nPattern: [\\u0001-\\uFFFF]* \nUpdate requires: No interruption\n" - }, - "DatabaseSourceAuthenticationConfiguration": { + "SchemaEvolutionConfiguration": { + "additionalProperties": false, "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SplunkBufferingHints": { "additionalProperties": false, + "type": "object", "properties": { - "SecretsManagerConfiguration": { - "$ref": "#/definitions/SecretsManagerConfiguration" + "IntervalInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "SizeInMBs": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, - "required": [ - "SecretsManagerConfiguration" - ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DatabaseSourceVPCConfiguration": { - "type": "object", + "Serializer": { "additionalProperties": false, + "type": "object", "properties": { - "VpcEndpointServiceName": { - "$ref": "#/definitions/VpcEndpointServiceName" + "OrcSerDe": { + "$ref": "#/definitions/OrcSerDe" + }, + "ParquetSerDe": { + "$ref": "#/definitions/ParquetSerDe" } }, - "required": [ - "VpcEndpointServiceName" - ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "VpcEndpointServiceName": { - "type": "string", - "minLength": 47, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 47 \nMaximum Length: 255 \nPattern: ([a-zA-Z0-9\\-\\_]+\\.){2,3}vpce\\.[a-zA-Z0-9\\-]*\\.vpce-svc\\-[a-zA-Z0-9\\-]{17}$ \nUpdate requires: No interruption\n" - }, - "MSKSourceConfiguration": { - "type": "object", + "HttpEndpointDestinationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "MSKClusterARN": { - "type": "string", + "RequestConfiguration": { + "$ref": "#/definitions/HttpEndpointRequestConfiguration" + }, + "S3Configuration": { + "$ref": "#/definitions/S3DestinationConfiguration" + }, + "BufferingHints": { + "$ref": "#/definitions/BufferingHints" + }, + "RetryOptions": { + "$ref": "#/definitions/RetryOptions" + }, + "SecretsManagerConfiguration": { + "$ref": "#/definitions/SecretsManagerConfiguration" + }, + "EndpointConfiguration": { + "$ref": "#/definitions/HttpEndpointConfiguration" + }, + "ProcessingConfiguration": { + "$ref": "#/definitions/ProcessingConfiguration" + }, + "RoleARN": { "minLength": 1, + "type": "string", "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::MSK::Cluster", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "TopicName": { - "type": "string", - "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: [a-zA-Z0-9\\._\\-]+ \nUpdate requires: No interruption\n" + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" }, - "ReadFromTimestamp": { + "S3BackupMode": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "AuthenticationConfiguration": { - "$ref": "#/definitions/AuthenticationConfiguration" } }, "required": [ - "MSKClusterARN", - "TopicName", - "AuthenticationConfiguration" + "EndpointConfiguration", + "S3Configuration" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AuthenticationConfiguration": { - "type": "object", + "KinesisStreamSourceConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "RoleARN": { - "type": "string", + "KinesisStreamARN": { "minLength": 1, + "type": "string", "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "Connectivity": { + "RoleARN": { + "minLength": 1, "type": "string", - "enum": [ - "PUBLIC", - "PRIVATE" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: PUBLIC | PRIVATE \nUpdate requires: No interruption\n" + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" } }, "required": [ "RoleARN", - "Connectivity" + "KinesisStreamARN" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "VpcConfiguration": { - "type": "object", + "DataFormatConversionConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "RoleARN": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + "InputFormatConfiguration": { + "$ref": "#/definitions/InputFormatConfiguration" }, - "SubnetIds": { - "type": "array", - "uniqueItems": true, - "items": { - "type": "string", - "minLength": 1, - "maxLength": 1024, - "relationshipRef": { - "typeName": "AWS::EC2::Subnet", - "propertyPath": "/properties/SubnetId" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" - }, - "minItems": 1, - "maxItems": 16, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "SecurityGroupIds": { - "type": "array", - "uniqueItems": true, - "items": { - "type": "string", - "minLength": 1, - "maxLength": 1024, - "relationshipRef": { - "typeName": "AWS::EC2::SecurityGroup", - "propertyPath": "/properties/GroupId" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" - }, - "minItems": 1, - "maxItems": 5, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "SchemaConfiguration": { + "$ref": "#/definitions/SchemaConfiguration" + }, + "OutputFormatConfiguration": { + "$ref": "#/definitions/OutputFormatConfiguration" } }, - "required": [ - "RoleARN", - "SubnetIds", - "SecurityGroupIds" - ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DocumentIdOptions": { - "type": "object", + "ElasticsearchRetryOptions": { "additionalProperties": false, + "type": "object", "properties": { - "DefaultDocumentIdFormat": { - "type": "string", - "enum": [ - "FIREHOSE_DEFAULT", - "NO_DOCUMENT_ID" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: FIREHOSE_DEFAULT | NO_DOCUMENT_ID \nUpdate requires: No interruption\n" + "DurationInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, - "required": [ - "DefaultDocumentIdFormat" - ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ExtendedS3DestinationConfiguration": { - "type": "object", + "DatabaseName": { + "minLength": 1, + "type": "string", + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: [\\u0001-\\uFFFF]* \nUpdate requires: No interruption\n" + }, + "HttpEndpointCommonAttribute": { "additionalProperties": false, + "type": "object", "properties": { - "BucketARN": { - "type": "string", - "minLength": 1, - "maxLength": 2048, - "relationshipRef": { - "typeName": "AWS::S3::Bucket", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "BufferingHints": { - "$ref": "#/definitions/BufferingHints" - }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" - }, - "CompressionFormat": { - "type": "string", - "enum": [ - "UNCOMPRESSED", - "GZIP", - "ZIP", - "Snappy", - "HADOOP_SNAPPY" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: UNCOMPRESSED | GZIP | ZIP | Snappy | HADOOP_SNAPPY \nUpdate requires: No interruption\n" - }, - "CustomTimeZone": { - "type": "string", - "minLength": 0, - "maxLength": 50, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 50 \nUpdate requires: No interruption\n" - }, - "DataFormatConversionConfiguration": { - "$ref": "#/definitions/DataFormatConversionConfiguration" - }, - "DynamicPartitioningConfiguration": { - "$ref": "#/definitions/DynamicPartitioningConfiguration" - }, - "EncryptionConfiguration": { - "$ref": "#/definitions/EncryptionConfiguration" - }, - "ErrorOutputPrefix": { - "type": "string", - "minLength": 0, - "maxLength": 1024, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" - }, - "FileExtension": { - "type": "string", + "AttributeValue": { "minLength": 0, - "maxLength": 128, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nPattern: ^$|\\.[0-9a-z!\\-_.*'()]+ \nUpdate requires: No interruption\n" - }, - "Prefix": { "type": "string", - "minLength": 0, "maxLength": 1024, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" - }, - "ProcessingConfiguration": { - "$ref": "#/definitions/ProcessingConfiguration" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, - "RoleARN": { - "type": "string", + "AttributeName": { "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "S3BackupConfiguration": { - "$ref": "#/definitions/S3DestinationConfiguration" - }, - "S3BackupMode": { "type": "string", - "enum": [ - "Disabled", - "Enabled" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Disabled | Enabled \nUpdate requires: No interruption\n" + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ - "BucketARN", - "RoleARN" + "AttributeName", + "AttributeValue" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "S3DestinationConfiguration": { - "type": "object", + "AmazonopensearchserviceDestinationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "BucketARN": { + "TypeName": { + "minLength": 0, "type": "string", - "minLength": 1, - "maxLength": 2048, - "relationshipRef": { - "typeName": "AWS::S3::Bucket", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "BufferingHints": { - "$ref": "#/definitions/BufferingHints" - }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 100 \nUpdate requires: No interruption\n" }, - "CompressionFormat": { + "IndexRotationPeriod": { "type": "string", "enum": [ - "UNCOMPRESSED", - "GZIP", - "ZIP", - "Snappy", - "HADOOP_SNAPPY" + "NoRotation", + "OneHour", + "OneDay", + "OneWeek", + "OneMonth" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: UNCOMPRESSED | GZIP | ZIP | Snappy | HADOOP_SNAPPY \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NoRotation | OneHour | OneDay | OneWeek | OneMonth \nUpdate requires: No interruption\n" }, - "EncryptionConfiguration": { - "$ref": "#/definitions/EncryptionConfiguration" + "ProcessingConfiguration": { + "$ref": "#/definitions/ProcessingConfiguration" }, - "ErrorOutputPrefix": { + "ClusterEndpoint": { + "minLength": 1, "type": "string", - "minLength": 0, - "maxLength": 1024, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: https:.* \nUpdate requires: No interruption\n" }, - "Prefix": { + "DomainARN": { + "minLength": 1, "type": "string", - "minLength": 0, - "maxLength": 1024, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, "RoleARN": { - "type": "string", "minLength": 1, + "type": "string", "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + }, + "S3BackupMode": { + "type": "string", + "enum": [ + "FailedDocumentsOnly", + "AllDocuments" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDocumentsOnly | AllDocuments \nUpdate requires: No interruption\n" + }, + "IndexName": { + "minLength": 1, + "type": "string", + "maxLength": 80, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 80 \nUpdate requires: No interruption\n" + }, + "DocumentIdOptions": { + "$ref": "#/definitions/DocumentIdOptions" + }, + "S3Configuration": { + "$ref": "#/definitions/S3DestinationConfiguration" + }, + "BufferingHints": { + "$ref": "#/definitions/AmazonopensearchserviceBufferingHints" + }, + "RetryOptions": { + "$ref": "#/definitions/AmazonopensearchserviceRetryOptions" + }, + "VpcConfiguration": { + "$ref": "#/definitions/VpcConfiguration" + }, + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" } }, "required": [ - "BucketARN", + "IndexName", + "S3Configuration", "RoleARN" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" }, - "RedshiftDestinationConfiguration": { - "type": "object", + "SplunkDestinationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" - }, - "ClusterJDBCURL": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" - }, - "CopyCommand": { - "$ref": "#/definitions/CopyCommand" - }, - "Password": { + "HECEndpoint": { + "minLength": 0, "type": "string", - "minLength": 6, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 6 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, - "ProcessingConfiguration": { - "$ref": "#/definitions/ProcessingConfiguration" + "S3Configuration": { + "$ref": "#/definitions/S3DestinationConfiguration" }, - "RetryOptions": { - "$ref": "#/definitions/RedshiftRetryOptions" + "BufferingHints": { + "$ref": "#/definitions/SplunkBufferingHints" }, - "RoleARN": { + "HECToken": { + "minLength": 0, "type": "string", - "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, - "S3BackupConfiguration": { - "$ref": "#/definitions/S3DestinationConfiguration" + "RetryOptions": { + "$ref": "#/definitions/SplunkRetryOptions" }, - "S3BackupMode": { + "HECEndpointType": { "type": "string", "enum": [ - "Disabled", - "Enabled" + "Raw", + "Event" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Disabled | Enabled \nUpdate requires: No interruption\n" - }, - "S3Configuration": { - "$ref": "#/definitions/S3DestinationConfiguration" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: Raw | Event \nUpdate requires: No interruption\n" }, "SecretsManagerConfiguration": { "$ref": "#/definitions/SecretsManagerConfiguration" }, - "Username": { + "HECAcknowledgmentTimeoutInSeconds": { + "maximum": 600, + "type": "integer", + "minimum": 180, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "ProcessingConfiguration": { + "$ref": "#/definitions/ProcessingConfiguration" + }, + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" + }, + "S3BackupMode": { "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, "required": [ + "HECEndpoint", "S3Configuration", - "ClusterJDBCURL", - "CopyCommand", - "RoleARN" + "HECEndpointType" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ElasticsearchDestinationConfiguration": { - "type": "object", + "ProcessingConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "BufferingHints": { - "$ref": "#/definitions/ElasticsearchBufferingHints" - }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" - }, - "DomainARN": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "anyOf": [ - { - "relationshipRef": { - "typeName": "AWS::Elasticsearch::Domain", - "propertyPath": "/properties/Arn" - } - }, - { - "relationshipRef": { - "typeName": "AWS::OpenSearchService::Domain", - "propertyPath": "/properties/Arn" - } - } - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "IndexName": { - "type": "string", - "minLength": 1, - "maxLength": 80, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 80 \nUpdate requires: No interruption\n" + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "IndexRotationPeriod": { + "Processors": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/Processor" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DocumentIdOptions": { + "additionalProperties": false, + "type": "object", + "properties": { + "DefaultDocumentIdFormat": { "type": "string", "enum": [ - "NoRotation", - "OneHour", - "OneDay", - "OneWeek", - "OneMonth" + "FIREHOSE_DEFAULT", + "NO_DOCUMENT_ID" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NoRotation | OneHour | OneDay | OneWeek | OneMonth \nUpdate requires: No interruption\n" - }, - "ProcessingConfiguration": { - "$ref": "#/definitions/ProcessingConfiguration" - }, - "RetryOptions": { - "$ref": "#/definitions/ElasticsearchRetryOptions" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: FIREHOSE_DEFAULT | NO_DOCUMENT_ID \nUpdate requires: No interruption\n" + } + }, + "required": [ + "DefaultDocumentIdFormat" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Deserializer": { + "additionalProperties": false, + "type": "object", + "properties": { + "HiveJsonSerDe": { + "$ref": "#/definitions/HiveJsonSerDe" }, - "RoleARN": { + "OpenXJsonSerDe": { + "$ref": "#/definitions/OpenXJsonSerDe" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "S3DestinationConfiguration": { + "additionalProperties": false, + "type": "object", + "properties": { + "ErrorOutputPrefix": { + "minLength": 0, "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "BucketARN": { "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "S3BackupMode": { + "BufferingHints": { + "$ref": "#/definitions/BufferingHints" + }, + "CompressionFormat": { "type": "string", "enum": [ - "FailedDocumentsOnly", - "AllDocuments" + "UNCOMPRESSED", + "GZIP", + "ZIP", + "Snappy", + "HADOOP_SNAPPY" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDocumentsOnly | AllDocuments \nUpdate requires: No interruption\n" - }, - "S3Configuration": { - "$ref": "#/definitions/S3DestinationConfiguration" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: UNCOMPRESSED | GZIP | ZIP | Snappy | HADOOP_SNAPPY \nUpdate requires: No interruption\n" }, - "ClusterEndpoint": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: https:.* \nUpdate requires: No interruption\n" + "EncryptionConfiguration": { + "$ref": "#/definitions/EncryptionConfiguration" }, - "TypeName": { - "type": "string", + "Prefix": { "minLength": 0, - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 100 \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, - "VpcConfiguration": { - "$ref": "#/definitions/VpcConfiguration" + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" }, - "DocumentIdOptions": { - "$ref": "#/definitions/DocumentIdOptions" + "RoleARN": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" } }, "required": [ - "IndexName", - "S3Configuration", + "BucketARN", "RoleARN" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AmazonopensearchserviceDestinationConfiguration": { + "AmazonopensearchserviceRetryOptions": { + "additionalProperties": false, "type": "object", + "properties": { + "DurationInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InputFormatConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "BufferingHints": { - "$ref": "#/definitions/AmazonopensearchserviceBufferingHints" - }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" - }, - "DomainARN": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "IndexName": { - "type": "string", - "minLength": 1, - "maxLength": 80, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 80 \nUpdate requires: No interruption\n" - }, - "IndexRotationPeriod": { - "type": "string", - "enum": [ - "NoRotation", - "OneHour", - "OneDay", - "OneWeek", - "OneMonth" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NoRotation | OneHour | OneDay | OneWeek | OneMonth \nUpdate requires: No interruption\n" - }, - "ProcessingConfiguration": { - "$ref": "#/definitions/ProcessingConfiguration" + "Deserializer": { + "$ref": "#/definitions/Deserializer" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "VpcConfiguration": { + "additionalProperties": false, + "type": "object", + "properties": { + "SubnetIds": { + "minItems": 1, + "maxItems": 16, + "uniqueItems": true, + "type": "array", + "items": { + "relationshipRef": { + "typeName": "AWS::EC2::Subnet", + "propertyPath": "/properties/SubnetId" + }, + "minLength": 1, + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, - "RetryOptions": { - "$ref": "#/definitions/AmazonopensearchserviceRetryOptions" + "SecurityGroupIds": { + "minItems": 1, + "maxItems": 5, + "uniqueItems": true, + "type": "array", + "items": { + "relationshipRef": { + "typeName": "AWS::EC2::SecurityGroup", + "propertyPath": "/properties/GroupId" + }, + "minLength": 1, + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, "RoleARN": { - "type": "string", "minLength": 1, + "type": "string", "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "S3BackupMode": { + } + }, + "required": [ + "RoleARN", + "SubnetIds", + "SecurityGroupIds" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OutputFormatConfiguration": { + "additionalProperties": false, + "type": "object", + "properties": { + "Serializer": { + "$ref": "#/definitions/Serializer" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CloudWatchLoggingOptions": { + "additionalProperties": false, + "type": "object", + "properties": { + "LogStreamName": { "type": "string", - "enum": [ - "FailedDocumentsOnly", - "AllDocuments" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDocumentsOnly | AllDocuments \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "S3Configuration": { - "$ref": "#/definitions/S3DestinationConfiguration" + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "ClusterEndpoint": { + "LogGroupName": { "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: https:.* \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RedshiftRetryOptions": { + "additionalProperties": false, + "type": "object", + "properties": { + "DurationInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DatabaseColumnName": { + "minLength": 1, + "type": "string", + "maxLength": 194, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 194 \nPattern: [\\u0001-\\uFFFF]* \nUpdate requires: No interruption\n" + }, + "ElasticsearchBufferingHints": { + "additionalProperties": false, + "type": "object", + "properties": { + "IntervalInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "TypeName": { + "SizeInMBs": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Processor": { + "additionalProperties": false, + "type": "object", + "properties": { + "Type": { "type": "string", - "minLength": 0, - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 100 \nUpdate requires: No interruption\n" - }, - "VpcConfiguration": { - "$ref": "#/definitions/VpcConfiguration" + "enum": [ + "RecordDeAggregation", + "Decompression", + "CloudWatchLogProcessing", + "Lambda", + "MetadataExtraction", + "AppendDelimiterToRecord" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: RecordDeAggregation | Decompression | CloudWatchLogProcessing | Lambda | MetadataExtraction | AppendDelimiterToRecord \nUpdate requires: No interruption\n" }, - "DocumentIdOptions": { - "$ref": "#/definitions/DocumentIdOptions" + "Parameters": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProcessorParameter" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ - "IndexName", - "S3Configuration", - "RoleARN" + "Type" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AmazonOpenSearchServerlessDestinationConfiguration": { + "TableCreationConfiguration": { + "additionalProperties": false, "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RedshiftDestinationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "BufferingHints": { - "$ref": "#/definitions/AmazonOpenSearchServerlessBufferingHints" + "S3BackupConfiguration": { + "$ref": "#/definitions/S3DestinationConfiguration" }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" + "S3Configuration": { + "$ref": "#/definitions/S3DestinationConfiguration" }, - "IndexName": { - "type": "string", + "Username": { "minLength": 1, - "maxLength": 80, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 80 \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + }, + "CopyCommand": { + "$ref": "#/definitions/CopyCommand" + }, + "RetryOptions": { + "$ref": "#/definitions/RedshiftRetryOptions" + }, + "SecretsManagerConfiguration": { + "$ref": "#/definitions/SecretsManagerConfiguration" }, "ProcessingConfiguration": { "$ref": "#/definitions/ProcessingConfiguration" }, - "RetryOptions": { - "$ref": "#/definitions/AmazonOpenSearchServerlessRetryOptions" + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" }, - "RoleARN": { + "ClusterJDBCURL": { + "minLength": 1, "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + }, + "RoleARN": { "minLength": 1, + "type": "string", "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, + "Password": { + "minLength": 6, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 6 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + }, "S3BackupMode": { "type": "string", "enum": [ - "FailedDocumentsOnly", - "AllDocuments" + "Disabled", + "Enabled" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDocumentsOnly | AllDocuments \nUpdate requires: No interruption\n" - }, - "S3Configuration": { - "$ref": "#/definitions/S3DestinationConfiguration" - }, - "CollectionEndpoint": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::OpenSearchServerless::Collection", - "propertyPath": "/properties/CollectionEndpoint" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: https:.* \nUpdate requires: No interruption\n" - }, - "VpcConfiguration": { - "$ref": "#/definitions/VpcConfiguration" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Disabled | Enabled \nUpdate requires: No interruption\n" } }, "required": [ - "IndexName", "S3Configuration", + "ClusterJDBCURL", + "CopyCommand", "RoleARN" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SnowflakeDestinationConfiguration": { - "type": "object", + "SchemaConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "AccountUrl": { + "VersionId": { "type": "string", - "minLength": 24, - "maxLength": 2048, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 24 \nMaximum Length: 2048 \nPattern: .+?\\.snowflakecomputing\\.com \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "PrivateKey": { + "TableName": { "type": "string", - "minLength": 256, - "maxLength": 4096, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 256 \nMaximum Length: 4096 \nPattern: ^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?$ \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "KeyPassphrase": { + "DatabaseName": { "type": "string", - "minLength": 7, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 7 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "User": { + "Region": { "type": "string", - "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "Database": { + "CatalogId": { "type": "string", - "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "Schema": { - "type": "string", + "RoleARN": { "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" - }, - "Table": { "type": "string", - "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" - }, - "SnowflakeRoleConfiguration": { - "$ref": "#/definitions/SnowflakeRoleConfiguration" - }, - "DataLoadingOption": { + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ExtendedS3DestinationConfiguration": { + "additionalProperties": false, + "type": "object", + "properties": { + "ErrorOutputPrefix": { + "minLength": 0, "type": "string", - "enum": [ - "JSON_MAPPING", - "VARIANT_CONTENT_MAPPING", - "VARIANT_CONTENT_AND_METADATA_MAPPING" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: JSON_MAPPING | VARIANT_CONTENT_MAPPING | VARIANT_CONTENT_AND_METADATA_MAPPING \nUpdate requires: No interruption\n" + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, - "MetaDataColumnName": { - "type": "string", - "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + "S3BackupConfiguration": { + "$ref": "#/definitions/S3DestinationConfiguration" }, - "ContentColumnName": { - "type": "string", + "BucketARN": { "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" - }, - "SnowflakeVpcConfiguration": { - "$ref": "#/definitions/SnowflakeVpcConfiguration" - }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" - }, - "ProcessingConfiguration": { - "$ref": "#/definitions/ProcessingConfiguration" - }, - "RoleARN": { "type": "string", - "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "RetryOptions": { - "$ref": "#/definitions/SnowflakeRetryOptions" + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "S3BackupMode": { + "CompressionFormat": { "type": "string", "enum": [ - "FailedDataOnly", - "AllData" + "UNCOMPRESSED", + "GZIP", + "ZIP", + "Snappy", + "HADOOP_SNAPPY" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDataOnly | AllData \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: UNCOMPRESSED | GZIP | ZIP | Snappy | HADOOP_SNAPPY \nUpdate requires: No interruption\n" }, - "S3Configuration": { - "$ref": "#/definitions/S3DestinationConfiguration" + "DataFormatConversionConfiguration": { + "$ref": "#/definitions/DataFormatConversionConfiguration" }, - "SecretsManagerConfiguration": { - "$ref": "#/definitions/SecretsManagerConfiguration" + "EncryptionConfiguration": { + "$ref": "#/definitions/EncryptionConfiguration" }, - "BufferingHints": { - "$ref": "#/definitions/SnowflakeBufferingHints" - } - }, - "required": [ - "AccountUrl", - "Database", - "Schema", - "Table", - "RoleARN", - "S3Configuration" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" - }, - "IcebergDestinationConfiguration": { - "type": "object", - "additionalProperties": false, - "properties": { - "DestinationTableConfigurationList": { - "$ref": "#/definitions/DestinationTableConfigurationList" + "CustomTimeZone": { + "minLength": 0, + "type": "string", + "maxLength": 50, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 50 \nUpdate requires: No interruption\n" + }, + "DynamicPartitioningConfiguration": { + "$ref": "#/definitions/DynamicPartitioningConfiguration" + }, + "Prefix": { + "minLength": 0, + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, "ProcessingConfiguration": { "$ref": "#/definitions/ProcessingConfiguration" }, - "CloudWatchLoggingOptions": { - "$ref": "#/definitions/CloudWatchLoggingOptions" - }, - "CatalogConfiguration": { - "$ref": "#/definitions/CatalogConfiguration" - }, "RoleARN": { - "type": "string", "minLength": 1, + "type": "string", "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "AppendOnly": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "RetryOptions": { - "$ref": "#/definitions/RetryOptions" - }, - "s3BackupMode": { + "S3BackupMode": { "type": "string", "enum": [ - "AllData", - "FailedDataOnly" + "Disabled", + "Enabled" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: AllData | FailedDataOnly \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Disabled | Enabled \nUpdate requires: No interruption\n" }, "BufferingHints": { "$ref": "#/definitions/BufferingHints" }, - "S3Configuration": { - "$ref": "#/definitions/S3DestinationConfiguration" + "FileExtension": { + "minLength": 0, + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nPattern: ^$|\\.[0-9a-z!\\-_.*'()]+ \nUpdate requires: No interruption\n" + }, + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" } }, "required": [ - "RoleARN", - "CatalogConfiguration", - "S3Configuration" + "BucketARN", + "RoleARN" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" - }, - "CatalogConfiguration": { - "type": "object", - "additionalProperties": false, - "properties": { - "CatalogArn": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - } - }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DestinationTableConfiguration": { - "type": "object", + "AmazonOpenSearchServerlessDestinationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "DestinationTableName": { + "IndexName": { + "minLength": 1, "type": "string", + "maxLength": 80, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 80 \nUpdate requires: No interruption\n" + }, + "S3Configuration": { + "$ref": "#/definitions/S3DestinationConfiguration" + }, + "BufferingHints": { + "$ref": "#/definitions/AmazonOpenSearchServerlessBufferingHints" + }, + "RetryOptions": { + "$ref": "#/definitions/AmazonOpenSearchServerlessRetryOptions" + }, + "CollectionEndpoint": { "minLength": 1, + "type": "string", "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: https:.* \nUpdate requires: No interruption\n" }, - "DestinationDatabaseName": { - "type": "string", + "VpcConfiguration": { + "$ref": "#/definitions/VpcConfiguration" + }, + "ProcessingConfiguration": { + "$ref": "#/definitions/ProcessingConfiguration" + }, + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" + }, + "RoleARN": { "minLength": 1, + "type": "string", "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "S3ErrorOutputPrefix": { + "S3BackupMode": { "type": "string", - "minLength": 1, - "maxLength": 1024, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" - }, - "UniqueKeys": { - "type": "array", - "uniqueItems": true, - "items": { - "$ref": "#/definitions/UniqueKey" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "enum": [ + "FailedDocumentsOnly", + "AllDocuments" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDocumentsOnly | AllDocuments \nUpdate requires: No interruption\n" } }, "required": [ - "DestinationDatabaseName", - "DestinationTableName" + "IndexName", + "S3Configuration", + "RoleARN" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "UniqueKey": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" }, - "BufferingHints": { - "type": "object", + "KMSEncryptionConfig": { "additionalProperties": false, + "type": "object", "properties": { - "IntervalInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "SizeInMBs": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "AWSKMSKeyARN": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, + "required": [ + "AWSKMSKeyARN" + ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ProcessingConfiguration": { - "type": "object", + "Databases": { "additionalProperties": false, + "type": "object", "properties": { - "Enabled": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "Processors": { + "Exclude": { "type": "array", - "uniqueItems": true, "items": { - "$ref": "#/definitions/Processor" + "$ref": "#/definitions/DatabaseName" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Include": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseName" }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DestinationTableConfigurationList": { - "type": "array", - "items": { - "$ref": "#/definitions/DestinationTableConfiguration" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "SplunkRetryOptions": { - "type": "object", - "additionalProperties": false, - "properties": { - "DurationInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ElasticsearchRetryOptions": { - "type": "object", - "additionalProperties": false, - "properties": { - "DurationInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AmazonopensearchserviceRetryOptions": { - "type": "object", - "additionalProperties": false, - "properties": { - "DurationInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AmazonOpenSearchServerlessRetryOptions": { - "type": "object", - "additionalProperties": false, - "properties": { - "DurationInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SnowflakeRetryOptions": { - "type": "object", - "additionalProperties": false, - "properties": { - "DurationInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RedshiftRetryOptions": { - "type": "object", - "additionalProperties": false, - "properties": { - "DurationInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RetryOptions": { - "type": "object", - "additionalProperties": false, - "properties": { - "DurationInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "DataFormatConversionConfiguration": { - "type": "object", - "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "InputFormatConfiguration": { - "$ref": "#/definitions/InputFormatConfiguration" - }, - "OutputFormatConfiguration": { - "$ref": "#/definitions/OutputFormatConfiguration" - }, - "SchemaConfiguration": { - "$ref": "#/definitions/SchemaConfiguration" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "DynamicPartitioningConfiguration": { - "type": "object", + "DestinationTableConfigurationList": { + "type": "array", + "items": { + "$ref": "#/definitions/DestinationTableConfiguration" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "DatabaseSourceConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "Enabled": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "Digest": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: .* \nUpdate requires: No interruption\n" }, - "RetryOptions": { - "$ref": "#/definitions/RetryOptions" + "Port": { + "maximum": 65535, + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + }, + "PublicCertificate": { + "minLength": 1, + "type": "string", + "maxLength": 4096, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "Columns": { + "$ref": "#/definitions/DatabaseColumns" + }, + "Type": { + "type": "string", + "enum": [ + "MySQL", + "PostgreSQL" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MySQL | PostgreSQL \nUpdate requires: No interruption\n" + }, + "SurrogateKeys": { + "type": "array", + "items": { + "minLength": 1, + "type": "string", + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nPattern: ^\\S+$ \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Databases": { + "$ref": "#/definitions/Databases" + }, + "Endpoint": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^(?!\\s*$).+ \nUpdate requires: No interruption\n" + }, + "SSLMode": { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Disabled | Enabled \nUpdate requires: No interruption\n" + }, + "SnapshotWatermarkTable": { + "$ref": "#/definitions/DatabaseTableName" + }, + "DatabaseSourceAuthenticationConfiguration": { + "$ref": "#/definitions/DatabaseSourceAuthenticationConfiguration" + }, + "Tables": { + "$ref": "#/definitions/DatabaseTables" + }, + "DatabaseSourceVPCConfiguration": { + "$ref": "#/definitions/DatabaseSourceVPCConfiguration" } }, + "required": [ + "Type", + "Endpoint", + "Port", + "Databases", + "Tables", + "SnapshotWatermarkTable", + "DatabaseSourceAuthenticationConfiguration", + "DatabaseSourceVPCConfiguration" + ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "CopyCommand": { - "type": "object", + "DestinationTableConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "CopyOptions": { + "DestinationDatabaseName": { + "minLength": 1, "type": "string", - "minLength": 0, - "maxLength": 204800, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 204800 \nUpdate requires: No interruption\n" + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" }, - "DataTableColumns": { + "S3ErrorOutputPrefix": { + "minLength": 1, "type": "string", - "minLength": 0, - "maxLength": 204800, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 204800 \nUpdate requires: No interruption\n" + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, - "DataTableName": { - "type": "string", + "DestinationTableName": { "minLength": 1, + "type": "string", "maxLength": 512, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + }, + "UniqueKeys": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "PartitionSpec": { + "additionalProperties": false, + "type": "object", + "properties": { + "Identity": { + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/PartitionField" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "required": [ - "DataTableName" + "DestinationDatabaseName", + "DestinationTableName" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EncryptionConfiguration": { - "type": "object", + "AuthenticationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "KMSEncryptionConfig": { - "$ref": "#/definitions/KMSEncryptionConfig" - }, - "NoEncryptionConfig": { + "Connectivity": { "type": "string", "enum": [ - "NoEncryption" + "PUBLIC", + "PRIVATE" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NoEncryption \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ElasticsearchBufferingHints": { - "type": "object", - "additionalProperties": false, - "properties": { - "IntervalInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: PUBLIC | PRIVATE \nUpdate requires: No interruption\n" }, - "SizeInMBs": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "RoleARN": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" } }, + "required": [ + "RoleARN", + "Connectivity" + ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AmazonopensearchserviceBufferingHints": { - "type": "object", + "CatalogConfiguration": { "additionalProperties": false, - "properties": { - "IntervalInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "SizeInMBs": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AmazonOpenSearchServerlessBufferingHints": { "type": "object", - "additionalProperties": false, "properties": { - "IntervalInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "CatalogArn": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" }, - "SizeInMBs": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "WarehouseLocation": { + "minLength": 1, + "type": "string", + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: s3:\\/\\/.* \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SplunkBufferingHints": { - "type": "object", + "DeliveryStreamEncryptionConfigurationInput": { "additionalProperties": false, - "properties": { - "IntervalInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "SizeInMBs": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SnowflakeBufferingHints": { "type": "object", - "additionalProperties": false, "properties": { - "IntervalInSeconds": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "KeyType": { + "type": "string", + "enum": [ + "AWS_OWNED_CMK", + "CUSTOMER_MANAGED_CMK" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: AWS_OWNED_CMK | CUSTOMER_MANAGED_CMK \nUpdate requires: No interruption\n" }, - "SizeInMBs": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "KeyARN": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" } }, + "required": [ + "KeyType" + ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "CloudWatchLoggingOptions": { - "type": "object", + "HttpEndpointRequestConfiguration": { "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "LogGroupName": { - "type": "string", - "relationshipRef": { - "typeName": "AWS::Logs::LogGroup", - "propertyPath": "/properties/LogGroupName" + "type": "object", + "properties": { + "CommonAttributes": { + "minItems": 0, + "maxItems": 50, + "uniqueItems": true, + "type": "array", + "items": { + "$ref": "#/definitions/HttpEndpointCommonAttribute" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "LogStreamName": { + "ContentEncoding": { "type": "string", - "relationshipRef": { - "typeName": "AWS::Logs::LogStream", - "propertyPath": "/properties/LogStreamName" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "enum": [ + "NONE", + "GZIP" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | GZIP \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "OutputFormatConfiguration": { - "type": "object", + "EncryptionConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "Serializer": { - "$ref": "#/definitions/Serializer" + "KMSEncryptionConfig": { + "$ref": "#/definitions/KMSEncryptionConfig" + }, + "NoEncryptionConfig": { + "type": "string", + "enum": [ + "NoEncryption" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NoEncryption \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Processor": { - "type": "object", + "IcebergDestinationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "Parameters": { - "type": "array", - "uniqueItems": true, - "items": { - "$ref": "#/definitions/ProcessorParameter" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "CatalogConfiguration": { + "$ref": "#/definitions/CatalogConfiguration" }, - "Type": { + "S3Configuration": { + "$ref": "#/definitions/S3DestinationConfiguration" + }, + "DestinationTableConfigurationList": { + "$ref": "#/definitions/DestinationTableConfigurationList" + }, + "BufferingHints": { + "$ref": "#/definitions/BufferingHints" + }, + "TableCreationConfiguration": { + "$ref": "#/definitions/TableCreationConfiguration" + }, + "RetryOptions": { + "$ref": "#/definitions/RetryOptions" + }, + "s3BackupMode": { "type": "string", "enum": [ - "RecordDeAggregation", - "Decompression", - "CloudWatchLogProcessing", - "Lambda", - "MetadataExtraction", - "AppendDelimiterToRecord" + "AllData", + "FailedDataOnly" ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: RecordDeAggregation | Decompression | CloudWatchLogProcessing | Lambda | MetadataExtraction | AppendDelimiterToRecord \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: AllData | FailedDataOnly \nUpdate requires: No interruption\n" + }, + "ProcessingConfiguration": { + "$ref": "#/definitions/ProcessingConfiguration" + }, + "SchemaEvolutionConfiguration": { + "$ref": "#/definitions/SchemaEvolutionConfiguration" + }, + "AppendOnly": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" + }, + "RoleARN": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" } }, "required": [ - "Type" + "RoleARN", + "CatalogConfiguration", + "S3Configuration" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" }, - "KMSEncryptionConfig": { - "type": "object", + "HttpEndpointConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "AWSKMSKeyARN": { + "AccessKey": { + "minLength": 0, "type": "string", - "relationshipRef": { - "typeName": "AWS::KMS::Key", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "maxLength": 4096, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 4096 \nUpdate requires: No interruption\n" + }, + "Url": { + "minLength": 1, + "type": "string", + "maxLength": 1000, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1000 \nUpdate requires: No interruption\n" + }, + "Name": { + "minLength": 1, + "type": "string", + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ - "AWSKMSKeyARN" + "Url" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "InputFormatConfiguration": { - "type": "object", + "SecretsManagerConfiguration": { "additionalProperties": false, - "properties": { - "Deserializer": { - "$ref": "#/definitions/Deserializer" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SchemaConfiguration": { "type": "object", - "additionalProperties": false, "properties": { - "CatalogId": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "DatabaseName": { + "SecretARN": { + "minLength": 1, "type": "string", - "relationshipRef": { - "typeName": "AWS::Glue::Database", - "propertyPath": "/properties/Id" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: arn:.*:secretsmanager:[a-zA-Z0-9\\-]+:\\d{12}:secret:[a-zA-Z0-9\\-/_+=.@]+ \nUpdate requires: No interruption\n" }, - "Region": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" }, "RoleARN": { - "type": "string", "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" - }, - "TableName": { - "type": "string", - "relationshipRef": { - "typeName": "AWS::Glue::Table", - "propertyPath": "/properties/Id" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "VersionId": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.*:iam::\\d{12}:role/[a-zA-Z_0-9+=,.@\\-_/]+ \nUpdate requires: No interruption\n" } }, + "required": [ + "Enabled" + ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Serializer": { - "type": "object", + "DynamicPartitioningConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "OrcSerDe": { - "$ref": "#/definitions/OrcSerDe" + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "ParquetSerDe": { - "$ref": "#/definitions/ParquetSerDe" + "RetryOptions": { + "$ref": "#/definitions/RetryOptions" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ProcessorParameter": { + "SnowflakeRoleConfiguration": { + "additionalProperties": false, "type": "object", + "properties": { + "SnowflakeRole": { + "minLength": 1, + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DatabaseTableName": { + "minLength": 1, + "type": "string", + "maxLength": 129, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 129 \nPattern: [\\u0001-\\uFFFF]* \nUpdate requires: No interruption\n" + }, + "ElasticsearchDestinationConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "ParameterName": { + "TypeName": { + "minLength": 0, "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 100 \nUpdate requires: No interruption\n" }, - "ParameterValue": { + "IndexRotationPeriod": { + "type": "string", + "enum": [ + "NoRotation", + "OneHour", + "OneDay", + "OneWeek", + "OneMonth" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NoRotation | OneHour | OneDay | OneWeek | OneMonth \nUpdate requires: No interruption\n" + }, + "ProcessingConfiguration": { + "$ref": "#/definitions/ProcessingConfiguration" + }, + "ClusterEndpoint": { + "minLength": 1, "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: https:.* \nUpdate requires: No interruption\n" + }, + "DomainARN": { + "minLength": 1, "anyOf": [ { "relationshipRef": { - "typeName": "AWS::Lambda::Function", + "typeName": "AWS::Elasticsearch::Domain", "propertyPath": "/properties/Arn" } }, { "relationshipRef": { - "typeName": "AWS::IAM::Role", + "typeName": "AWS::OpenSearchService::Domain", "propertyPath": "/properties/Arn" } - }, - { - "relationshipRef": { - "typeName": "AWS::Lambda::Alias", - "propertyPath": "/properties/Id" - } } ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + }, + "RoleARN": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.* \nUpdate requires: No interruption\n" + }, + "S3BackupMode": { + "type": "string", + "enum": [ + "FailedDocumentsOnly", + "AllDocuments" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: FailedDocumentsOnly | AllDocuments \nUpdate requires: No interruption\n" + }, + "IndexName": { + "minLength": 1, + "type": "string", + "maxLength": 80, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 80 \nUpdate requires: No interruption\n" + }, + "DocumentIdOptions": { + "$ref": "#/definitions/DocumentIdOptions" + }, + "S3Configuration": { + "$ref": "#/definitions/S3DestinationConfiguration" + }, + "BufferingHints": { + "$ref": "#/definitions/ElasticsearchBufferingHints" + }, + "RetryOptions": { + "$ref": "#/definitions/ElasticsearchRetryOptions" + }, + "VpcConfiguration": { + "$ref": "#/definitions/VpcConfiguration" + }, + "CloudWatchLoggingOptions": { + "$ref": "#/definitions/CloudWatchLoggingOptions" } }, "required": [ - "ParameterValue", - "ParameterName" + "IndexName", + "S3Configuration", + "RoleARN" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" }, - "Deserializer": { - "type": "object", + "DatabaseSourceAuthenticationConfiguration": { "additionalProperties": false, - "properties": { - "HiveJsonSerDe": { - "$ref": "#/definitions/HiveJsonSerDe" - }, - "OpenXJsonSerDe": { - "$ref": "#/definitions/OpenXJsonSerDe" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "HiveJsonSerDe": { "type": "object", - "additionalProperties": false, "properties": { - "TimestampFormats": { - "type": "array", - "uniqueItems": true, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "SecretsManagerConfiguration": { + "$ref": "#/definitions/SecretsManagerConfiguration" } }, + "required": [ + "SecretsManagerConfiguration" + ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "OrcSerDe": { - "type": "object", + "BufferingHints": { "additionalProperties": false, + "type": "object", "properties": { - "BlockSizeBytes": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "BloomFilterColumns": { - "type": "array", - "uniqueItems": true, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "BloomFilterFalsePositiveProbability": { - "type": "number", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" - }, - "Compression": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "DictionaryKeyThreshold": { - "type": "number", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" - }, - "EnablePadding": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "FormatVersion": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "PaddingTolerance": { - "type": "number", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" - }, - "RowIndexStride": { + "IntervalInSeconds": { "type": "integer", "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "StripeSizeBytes": { + "SizeInMBs": { "type": "integer", "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ParquetSerDe": { - "type": "object", + "UniqueKey": { + "minLength": 1, + "type": "string", + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + }, + "AmazonopensearchserviceBufferingHints": { "additionalProperties": false, + "type": "object", "properties": { - "BlockSizeBytes": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "Compression": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "EnableDictionaryCompression": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "MaxPaddingBytes": { + "IntervalInSeconds": { "type": "integer", "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "PageSizeBytes": { + "SizeInMBs": { "type": "integer", "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "WriterVersion": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "OpenXJsonSerDe": { - "type": "object", + "SplunkRetryOptions": { "additionalProperties": false, + "type": "object", "properties": { - "CaseInsensitive": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "ColumnToJsonKeyMappings": { - "type": "object", - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ConvertDotsInJsonKeysToUnderscores": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "DurationInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "HttpEndpointRequestConfiguration": { - "type": "object", + "DatabaseTables": { "additionalProperties": false, + "type": "object", "properties": { - "ContentEncoding": { - "type": "string", - "enum": [ - "NONE", - "GZIP" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | GZIP \nUpdate requires: No interruption\n" - }, - "CommonAttributes": { + "Exclude": { "type": "array", - "uniqueItems": true, "items": { - "$ref": "#/definitions/HttpEndpointCommonAttribute" + "$ref": "#/definitions/DatabaseTableName" }, - "minItems": 0, - "maxItems": 50, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "HttpEndpointCommonAttribute": { - "type": "object", - "additionalProperties": false, - "properties": { - "AttributeName": { - "type": "string", - "minLength": 1, - "maxLength": 256, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, - "AttributeValue": { - "type": "string", - "minLength": 0, - "maxLength": 1024, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" - } - }, - "required": [ - "AttributeName", - "AttributeValue" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "HttpEndpointConfiguration": { - "type": "object", - "additionalProperties": false, - "properties": { - "Url": { - "type": "string", - "minLength": 1, - "maxLength": 1000, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1000 \nUpdate requires: No interruption\n" - }, - "AccessKey": { - "type": "string", - "minLength": 0, - "maxLength": 4096, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 4096 \nUpdate requires: No interruption\n" - }, - "Name": { - "type": "string", - "minLength": 1, - "maxLength": 256, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Url" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SnowflakeRoleConfiguration": { - "type": "object", - "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "SnowflakeRole": { - "type": "string", - "minLength": 1, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + "Include": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseTableName" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SnowflakeVpcConfiguration": { - "type": "object", + "RetryOptions": { "additionalProperties": false, + "type": "object", "properties": { - "PrivateLinkVpceId": { - "type": "string", - "minLength": 47, - "maxLength": 255, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 47 \nMaximum Length: 255 \nPattern: ([a-zA-Z0-9\\-\\_]+\\.){2,3}vpce\\.[a-zA-Z0-9\\-]*\\.vpce-svc\\-[a-zA-Z0-9\\-]{17}$ \nUpdate requires: No interruption\n" + "DurationInSeconds": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, - "required": [ - "PrivateLinkVpceId" - ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SecretsManagerConfiguration": { - "type": "object", + "DatabaseSourceVPCConfiguration": { "additionalProperties": false, + "type": "object", "properties": { - "Enabled": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" - }, - "RoleARN": { - "type": "string", - "minLength": 1, - "maxLength": 512, - "relationshipRef": { - "typeName": "AWS::IAM::Role", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: arn:.*:iam::\\d{12}:role/[a-zA-Z_0-9+=,.@\\-_/]+ \nUpdate requires: No interruption\n" - }, - "SecretARN": { - "type": "string", - "minLength": 1, - "maxLength": 2048, - "relationshipRef": { - "typeName": "AWS::SecretsManager::Secret", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: arn:.*:secretsmanager:[a-zA-Z0-9\\-]+:\\d{12}:secret:[a-zA-Z0-9\\-/_+=.@]+ \nUpdate requires: No interruption\n" + "VpcEndpointServiceName": { + "$ref": "#/definitions/VpcEndpointServiceName" } }, "required": [ - "Enabled" + "VpcEndpointServiceName" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Tag": { - "type": "object", "additionalProperties": false, + "type": "object", "properties": { - "Key": { - "type": "string", - "minLength": 1, - "maxLength": 128, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:)[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@%]*$ \nUpdate requires: No interruption\n" - }, "Value": { - "type": "string", "minLength": 0, + "type": "string", "maxLength": 256, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: ^[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@%]*$ \nUpdate requires: No interruption\n" + }, + "Key": { + "minLength": 1, + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:)[\\p{L}\\p{Z}\\p{N}_.:\\/=+\\-@%]*$ \nUpdate requires: No interruption\n" } }, "required": [ "Key" ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OpenXJsonSerDe": { + "additionalProperties": false, + "type": "object", + "properties": { + "ConvertDotsInJsonKeysToUnderscores": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "ColumnToJsonKeyMappings": { + "patternProperties": { + "[a-zA-Z0-9]+": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "type": "object", + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CaseInsensitive": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, - "tagging": { - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags", - "permissions": [ - "firehose:TagDeliveryStream", - "firehose:ListTagsForDeliveryStream", - "firehose:UntagDeliveryStream" - ] - }, - "handlers": { - "create": { - "permissions": [ - "firehose:CreateDeliveryStream", - "firehose:DescribeDeliveryStream", - "iam:GetRole", - "iam:PassRole", - "kms:CreateGrant", - "kms:DescribeKey", - "firehose:TagDeliveryStream" - ] + "properties": { + "DeliveryStreamEncryptionConfigurationInput": { + "$ref": "#/definitions/DeliveryStreamEncryptionConfigurationInput" }, - "read": { - "permissions": [ - "firehose:DescribeDeliveryStream", - "firehose:ListTagsForDeliveryStream" - ] + "HttpEndpointDestinationConfiguration": { + "$ref": "#/definitions/HttpEndpointDestinationConfiguration" }, - "update": { - "permissions": [ - "firehose:UpdateDestination", - "firehose:DescribeDeliveryStream", - "firehose:StartDeliveryStreamEncryption", - "firehose:StopDeliveryStreamEncryption", - "firehose:ListTagsForDeliveryStream", - "firehose:TagDeliveryStream", - "firehose:UntagDeliveryStream", - "kms:CreateGrant", - "kms:RevokeGrant", - "kms:DescribeKey", - "iam:PassRole" - ] + "KinesisStreamSourceConfiguration": { + "$ref": "#/definitions/KinesisStreamSourceConfiguration" }, - "delete": { - "permissions": [ - "firehose:DeleteDeliveryStream", - "firehose:DescribeDeliveryStream", - "kms:RevokeGrant", - "kms:DescribeKey" - ] + "DeliveryStreamType": { + "type": "string", + "enum": [ + "DatabaseAsSource", + "DirectPut", + "KinesisStreamAsSource", + "MSKAsSource" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: DatabaseAsSource | DirectPut | KinesisStreamAsSource | MSKAsSource \nUpdate requires: Replacement\n" }, - "list": { - "permissions": [ - "firehose:ListDeliveryStreams" - ] + "IcebergDestinationConfiguration": { + "$ref": "#/definitions/IcebergDestinationConfiguration" + }, + "RedshiftDestinationConfiguration": { + "$ref": "#/definitions/RedshiftDestinationConfiguration" + }, + "AmazonopensearchserviceDestinationConfiguration": { + "$ref": "#/definitions/AmazonopensearchserviceDestinationConfiguration" + }, + "MSKSourceConfiguration": { + "$ref": "#/definitions/MSKSourceConfiguration" + }, + "DirectPutSourceConfiguration": { + "$ref": "#/definitions/DirectPutSourceConfiguration" + }, + "SplunkDestinationConfiguration": { + "$ref": "#/definitions/SplunkDestinationConfiguration" + }, + "ExtendedS3DestinationConfiguration": { + "$ref": "#/definitions/ExtendedS3DestinationConfiguration" + }, + "AmazonOpenSearchServerlessDestinationConfiguration": { + "$ref": "#/definitions/AmazonOpenSearchServerlessDestinationConfiguration" + }, + "ElasticsearchDestinationConfiguration": { + "$ref": "#/definitions/ElasticsearchDestinationConfiguration" + }, + "SnowflakeDestinationConfiguration": { + "$ref": "#/definitions/SnowflakeDestinationConfiguration" + }, + "DatabaseSourceConfiguration": { + "$ref": "#/definitions/DatabaseSourceConfiguration" + }, + "S3DestinationConfiguration": { + "$ref": "#/definitions/S3DestinationConfiguration" + }, + "DeliveryStreamName": { + "minLength": 1, + "type": "string", + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: [a-zA-Z0-9._-]+ \nUpdate requires: Replacement\n" + }, + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "minItems": 1, + "maxItems": 50, + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "readOnlyProperties": [ - "/properties/Arn" - ], - "writeOnlyProperties": [ - "/properties/HttpEndpointDestinationConfiguration/EndpointConfiguration/AccessKey", - "/properties/RedshiftDestinationConfiguration/Password", - "/properties/ElasticsearchDestinationConfiguration/CloudWatchLoggingOptions/Enabled", - "/properties/AmazonopensearchserviceDestinationConfiguration", - "/properties/ElasticsearchDestinationConfiguration", - "/properties/SnowflakeDestinationConfiguration", - "/properties/AmazonOpenSearchServerlessDestinationConfiguration", - "/properties/DatabaseSourceConfiguration", - "/properties/IcebergDestinationConfiguration", - "/properties/HttpEndpointDestinationConfiguration/SecretsManagerConfiguration", - "/properties/RedshiftDestinationConfiguration/ProcessingConfiguration", - "/properties/S3DestinationConfiguration", - "/properties/MSKSourceConfiguration", - "/properties/KinesisStreamSourceConfiguration", - "/properties/SnowflakeDestinationConfiguration/SnowflakeVpcConfiguration", - "/properties/HttpEndpointDestinationConfiguration/ProcessingConfiguration", - "/properties/RedshiftDestinationConfiguration/S3Configuration/EncryptionConfiguration/KMSEncryptionConfig/AWSKMSKeyARN", - "/properties/SplunkDestinationConfiguration/BufferingHints", - "/properties/SplunkDestinationConfiguration/SecretsManagerConfiguration", - "/properties/SplunkDestinationConfiguration/ProcessingConfiguration", - "/properties/SplunkDestinationConfiguration/CloudWatchLoggingOptions", - "/properties/SplunkDestinationConfiguration/S3Configuration/EncryptionConfiguration/NoEncryptionConfig", - "/properties/RedshiftDestinationConfiguration/S3BackupConfiguration/ErrorOutputPrefix", - "/properties/RedshiftDestinationConfiguration/S3BackupConfiguration/EncryptionConfiguration/KMSEncryptionConfig/AWSKMSKeyARN", - "/properties/ExtendedS3DestinationConfiguration/FileExtension", - "/properties/RedshiftDestinationConfiguration/S3Configuration/ErrorOutputPrefix", - "/properties/RedshiftDestinationConfiguration/SecretsManagerConfiguration/Enabled", - "/properties/RedshiftDestinationConfiguration/SecretsManagerConfiguration/SecretARN", - "/properties/HttpEndpointDestinationConfiguration/S3Configuration/EncryptionConfiguration/KMSEncryptionConfig/AWSKMSKeyARN", - "/properties/ExtendedS3DestinationConfiguration/CustomTimeZone", - "/properties/RedshiftDestinationConfiguration/SecretsManagerConfiguration/RoleARN", - "/properties/DirectPutSourceConfiguration/ThroughputHintInMBs" - ], - "createOnlyProperties": [ - "/properties/DeliveryStreamName", - "/properties/DeliveryStreamType", - "/properties/ElasticsearchDestinationConfiguration/VpcConfiguration", - "/properties/AmazonopensearchserviceDestinationConfiguration/VpcConfiguration", - "/properties/AmazonOpenSearchServerlessDestinationConfiguration/VpcConfiguration", - "/properties/DatabaseSourceConfiguration", - "/properties/KinesisStreamSourceConfiguration", - "/properties/DirectPutSourceConfiguration", - "/properties/MSKSourceConfiguration", - "/properties/IcebergDestinationConfiguration/CatalogConfiguration", - "/properties/SnowflakeDestinationConfiguration/SnowflakeVpcConfiguration" - ], - "primaryIdentifier": [ - "/properties/DeliveryStreamName" - ], "attributes": { "Arn": { "type": "string", diff --git a/server/schema/resources/aws-kms-key.json b/server/schema/resources/aws-kms-key.json index 588f3558..c20bdc4f 100644 --- a/server/schema/resources/aws-kms-key.json +++ b/server/schema/resources/aws-kms-key.json @@ -58,7 +58,7 @@ "markdownDescription": "The key policy to attach to the KMS key.\n If you provide a key policy, it must meet the following criteria:\n + The key policy must allow the caller to make a subsequent [PutKeyPolicy](https://docs.aws.amazon.com/kms/latest/APIReference/API_PutKeyPolicy.html) request on the KMS key. This reduces the risk that the KMS key becomes unmanageable. For more information, see [Default key policy](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-root-enable-iam) in the *Developer Guide*. (To omit this condition, set ``BypassPolicyLockoutSafetyCheck`` to true.)\n + Each statement in the key policy must contain one or more principals. The principals in the key policy must exist and be visible to KMS. When you create a new AWS principal (for example, an IAM user or role), you might need to enforce a delay before including the new principal in a key policy because the new principal might not be immediately visible to KMS. For more information, see [Changes that I make are not always immediately visible](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_general.html#troubleshoot_general_eventual-consistency) in the *User Guide*.\n \n If you do not provide a key policy, KMS attaches a default key policy to the KMS key. For more information, see [Default key policy](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default) in the *Developer Guide*.\n A key policy document can include only the following characters:\n + Printable ASCII characters\n + Printable characters in the Basic Latin and Latin-1 Supplement character set\n + The tab (``\\u0009``), line feed (``\\u000A``), and carriage return (``\\u000D``) special characters\n \n *Minimum*: ``1``\n *Maximum*: ``32768``\n\n---\n\nRequired: No \nType: ['object', 'string'] \nUpdate requires: No interruption\n" }, "KeyUsage": { - "description": "Determines the [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations) for which you can use the KMS key. The default value is ``ENCRYPT_DECRYPT``. This property is required for asymmetric KMS keys and HMAC KMS keys. You can't change the ``KeyUsage`` value after the KMS key is created.\n If you change the value of the ``KeyUsage`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n Select only one valid value.\n + For symmetric encryption KMS keys, omit the parameter or specify ``ENCRYPT_DECRYPT``.\n + For HMAC KMS keys (symmetric), specify ``GENERATE_VERIFY_MAC``.\n + For asymmetric KMS keys with RSA key pairs, specify ``ENCRYPT_DECRYPT`` or ``SIGN_VERIFY``.\n + For asymmetric KMS keys with NIST-recommended elliptic curve key pairs, specify ``SIGN_VERIFY`` or ``KEY_AGREEMENT``.\n + For asymmetric KMS keys with ``ECC_SECG_P256K1`` key pairs specify ``SIGN_VERIFY``.\n + For asymmetric KMS keys with SM2 key pairs (China Regions only), specify ``ENCRYPT_DECRYPT``, ``SIGN_VERIFY``, or ``KEY_AGREEMENT``.", + "description": "Determines the [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations) for which you can use the KMS key. The default value is ``ENCRYPT_DECRYPT``. This property is required for asymmetric KMS keys and HMAC KMS keys. You can't change the ``KeyUsage`` value after the KMS key is created.\n If you change the value of the ``KeyUsage`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n Select only one valid value.\n + For symmetric encryption KMS keys, omit the parameter or specify ``ENCRYPT_DECRYPT``.\n + For HMAC KMS keys (symmetric), specify ``GENERATE_VERIFY_MAC``.\n + For asymmetric KMS keys with RSA key pairs, specify ``ENCRYPT_DECRYPT`` or ``SIGN_VERIFY``.\n + For asymmetric KMS keys with NIST-recommended elliptic curve key pairs, specify ``SIGN_VERIFY`` or ``KEY_AGREEMENT``.\n + For asymmetric KMS keys with ``ECC_SECG_P256K1`` key pairs, specify ``SIGN_VERIFY``.\n + For asymmetric KMS keys with ML-DSA key pairs, specify ``SIGN_VERIFY``.\n + For asymmetric KMS keys with SM2 key pairs (China Regions only), specify ``ENCRYPT_DECRYPT``, ``SIGN_VERIFY``, or ``KEY_AGREEMENT``.", "type": "string", "default": "ENCRYPT_DECRYPT", "enum": [ @@ -67,20 +67,20 @@ "GENERATE_VERIFY_MAC", "KEY_AGREEMENT" ], - "markdownDescription": "Determines the [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations) for which you can use the KMS key. The default value is ``ENCRYPT_DECRYPT``. This property is required for asymmetric KMS keys and HMAC KMS keys. You can't change the ``KeyUsage`` value after the KMS key is created.\n If you change the value of the ``KeyUsage`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n Select only one valid value.\n + For symmetric encryption KMS keys, omit the parameter or specify ``ENCRYPT_DECRYPT``.\n + For HMAC KMS keys (symmetric), specify ``GENERATE_VERIFY_MAC``.\n + For asymmetric KMS keys with RSA key pairs, specify ``ENCRYPT_DECRYPT`` or ``SIGN_VERIFY``.\n + For asymmetric KMS keys with NIST-recommended elliptic curve key pairs, specify ``SIGN_VERIFY`` or ``KEY_AGREEMENT``.\n + For asymmetric KMS keys with ``ECC_SECG_P256K1`` key pairs specify ``SIGN_VERIFY``.\n + For asymmetric KMS keys with SM2 key pairs (China Regions only), specify ``ENCRYPT_DECRYPT``, ``SIGN_VERIFY``, or ``KEY_AGREEMENT``.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENCRYPT_DECRYPT | SIGN_VERIFY | GENERATE_VERIFY_MAC | KEY_AGREEMENT \nUpdate requires: No interruption\n" + "markdownDescription": "Determines the [cryptographic operations](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations) for which you can use the KMS key. The default value is ``ENCRYPT_DECRYPT``. This property is required for asymmetric KMS keys and HMAC KMS keys. You can't change the ``KeyUsage`` value after the KMS key is created.\n If you change the value of the ``KeyUsage`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n Select only one valid value.\n + For symmetric encryption KMS keys, omit the parameter or specify ``ENCRYPT_DECRYPT``.\n + For HMAC KMS keys (symmetric), specify ``GENERATE_VERIFY_MAC``.\n + For asymmetric KMS keys with RSA key pairs, specify ``ENCRYPT_DECRYPT`` or ``SIGN_VERIFY``.\n + For asymmetric KMS keys with NIST-recommended elliptic curve key pairs, specify ``SIGN_VERIFY`` or ``KEY_AGREEMENT``.\n + For asymmetric KMS keys with ``ECC_SECG_P256K1`` key pairs, specify ``SIGN_VERIFY``.\n + For asymmetric KMS keys with ML-DSA key pairs, specify ``SIGN_VERIFY``.\n + For asymmetric KMS keys with SM2 key pairs (China Regions only), specify ``ENCRYPT_DECRYPT``, ``SIGN_VERIFY``, or ``KEY_AGREEMENT``.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENCRYPT_DECRYPT | SIGN_VERIFY | GENERATE_VERIFY_MAC | KEY_AGREEMENT \nUpdate requires: No interruption\n" }, "Origin": { - "description": "The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS``, which means that KMS creates the key material.\n To [create a KMS key with no key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html) (for imported key material), set this value to ``EXTERNAL``. For more information about importing key material into KMS, see [Importing Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) in the *Developer Guide*.\n You can ignore ``ENABLED`` when Origin is ``EXTERNAL``. When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false``. After you import the key material, ``ENABLED`` updated to ``true``. The KMS key can then be used for Cryptographic Operations. \n CFN doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values.", + "description": "The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS``, which means that KMS creates the key material.\n To [create a KMS key with no key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html) (for imported key material), set this value to ``EXTERNAL``. For more information about importing key material into KMS, see [Importing Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) in the *Developer Guide*.\n You can ignore ``ENABLED`` when Origin is ``EXTERNAL``. When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false``. After you import the key material, ``ENABLED`` updated to ``true``. The KMS key can then be used for Cryptographic Operations. \n + CFN doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values.\n + ``EXTERNAL`` is not supported for ML-DSA keys.", "type": "string", "default": "AWS_KMS", "enum": [ "AWS_KMS", "EXTERNAL" ], - "markdownDescription": "The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS``, which means that KMS creates the key material.\n To [create a KMS key with no key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html) (for imported key material), set this value to ``EXTERNAL``. For more information about importing key material into KMS, see [Importing Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) in the *Developer Guide*.\n You can ignore ``ENABLED`` when Origin is ``EXTERNAL``. When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false``. After you import the key material, ``ENABLED`` updated to ``true``. The KMS key can then be used for Cryptographic Operations. \n CFN doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values.\n\n---\n\nRequired: No \nType: String \nAllowed Values: AWS_KMS | EXTERNAL \nUpdate requires: No interruption\n" + "markdownDescription": "The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS``, which means that KMS creates the key material.\n To [create a KMS key with no key material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html) (for imported key material), set this value to ``EXTERNAL``. For more information about importing key material into KMS, see [Importing Key Material](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) in the *Developer Guide*.\n You can ignore ``ENABLED`` when Origin is ``EXTERNAL``. When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false``. After you import the key material, ``ENABLED`` updated to ``true``. The KMS key can then be used for Cryptographic Operations. \n + CFN doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values.\n + ``EXTERNAL`` is not supported for ML-DSA keys.\n\n---\n\nRequired: No \nType: String \nAllowed Values: AWS_KMS | EXTERNAL \nUpdate requires: No interruption\n" }, "KeySpec": { - "description": "Specifies the type of KMS key to create. The default value, ``SYMMETRIC_DEFAULT``, creates a KMS key with a 256-bit symmetric key for encryption and decryption. In China Regions, ``SYMMETRIC_DEFAULT`` creates a 128-bit symmetric key that uses SM4 encryption. You can't change the ``KeySpec`` value after the KMS key is created. For help choosing a key spec for your KMS key, see [Choosing a KMS key type](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose.html) in the *Developer Guide*.\n The ``KeySpec`` property determines the type of key material in the KMS key and the algorithms that the KMS key supports. To further restrict the algorithms that can be used with the KMS key, use a condition key in its key policy or IAM policy. For more information, see [condition keys](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms) in the *Developer Guide*.\n If you change the value of the ``KeySpec`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n [services that are integrated with](https://docs.aws.amazon.com/kms/features/#AWS_Service_Integration) use symmetric encryption KMS keys to protect your data. These services do not support encryption with asymmetric KMS keys. For help determining whether a KMS key is asymmetric, see [Identifying asymmetric KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html) in the *Developer Guide*.\n KMS supports the following key specs for KMS keys:\n + Symmetric encryption key (default)\n + ``SYMMETRIC_DEFAULT`` (AES-256-GCM)\n \n + HMAC keys (symmetric)\n + ``HMAC_224`` \n + ``HMAC_256`` \n + ``HMAC_384`` \n + ``HMAC_512`` \n \n + Asymmetric RSA key pairs (encryption and decryption *or* signing and verification)\n + ``RSA_2048`` \n + ``RSA_3072`` \n + ``RSA_4096`` \n \n + Asymmetric NIST-recommended elliptic curve key pairs (signing and verification *or* deriving shared secrets)\n + ``ECC_NIST_P256`` (secp256r1)\n + ``ECC_NIST_P384`` (secp384r1)\n + ``ECC_NIST_P521`` (secp521r1)\n \n + Other asymmetric elliptic curve key pairs (signing and verification)\n + ``ECC_SECG_P256K1`` (secp256k1), commonly used for cryptocurrencies.\n \n + SM2 key pairs (encryption and decryption *or* signing and verification *or* deriving shared secrets)\n + ``SM2`` (China Regions only)", + "description": "Specifies the type of KMS key to create. The default value, ``SYMMETRIC_DEFAULT``, creates a KMS key with a 256-bit symmetric key for encryption and decryption. In China Regions, ``SYMMETRIC_DEFAULT`` creates a 128-bit symmetric key that uses SM4 encryption. You can't change the ``KeySpec`` value after the KMS key is created. For help choosing a key spec for your KMS key, see [Choosing a KMS key type](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose.html) in the *Developer Guide*.\n The ``KeySpec`` property determines the type of key material in the KMS key and the algorithms that the KMS key supports. To further restrict the algorithms that can be used with the KMS key, use a condition key in its key policy or IAM policy. For more information, see [condition keys](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms) in the *Developer Guide*.\n If you change the value of the ``KeySpec`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n [services that are integrated with](https://docs.aws.amazon.com/kms/features/#AWS_Service_Integration) use symmetric encryption KMS keys to protect your data. These services do not support encryption with asymmetric KMS keys. For help determining whether a KMS key is asymmetric, see [Identifying asymmetric KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html) in the *Developer Guide*.\n KMS supports the following key specs for KMS keys:\n + Symmetric encryption key (default)\n + ``SYMMETRIC_DEFAULT`` (AES-256-GCM)\n \n + HMAC keys (symmetric)\n + ``HMAC_224`` \n + ``HMAC_256`` \n + ``HMAC_384`` \n + ``HMAC_512`` \n \n + Asymmetric RSA key pairs (encryption and decryption *or* signing and verification)\n + ``RSA_2048`` \n + ``RSA_3072`` \n + ``RSA_4096`` \n \n + Asymmetric NIST-recommended elliptic curve key pairs (signing and verification *or* deriving shared secrets)\n + ``ECC_NIST_P256`` (secp256r1)\n + ``ECC_NIST_P384`` (secp384r1)\n + ``ECC_NIST_P521`` (secp521r1)\n \n + Other asymmetric elliptic curve key pairs (signing and verification)\n + ``ECC_SECG_P256K1`` (secp256k1), commonly used for cryptocurrencies.\n \n + Asymmetric ML-DSA key pairs (signing and verification)\n + ``ML_DSA_44`` \n + ``ML_DSA_65`` \n + ``ML_DSA_87`` \n \n + SM2 key pairs (encryption and decryption *or* signing and verification *or* deriving shared secrets)\n + ``SM2`` (China Regions only)", "type": "string", "default": "SYMMETRIC_DEFAULT", "enum": [ @@ -96,9 +96,12 @@ "HMAC_256", "HMAC_384", "HMAC_512", - "SM2" + "SM2", + "ML_DSA_44", + "ML_DSA_65", + "ML_DSA_87" ], - "markdownDescription": "Specifies the type of KMS key to create. The default value, ``SYMMETRIC_DEFAULT``, creates a KMS key with a 256-bit symmetric key for encryption and decryption. In China Regions, ``SYMMETRIC_DEFAULT`` creates a 128-bit symmetric key that uses SM4 encryption. You can't change the ``KeySpec`` value after the KMS key is created. For help choosing a key spec for your KMS key, see [Choosing a KMS key type](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose.html) in the *Developer Guide*.\n The ``KeySpec`` property determines the type of key material in the KMS key and the algorithms that the KMS key supports. To further restrict the algorithms that can be used with the KMS key, use a condition key in its key policy or IAM policy. For more information, see [condition keys](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms) in the *Developer Guide*.\n If you change the value of the ``KeySpec`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n [services that are integrated with](https://docs.aws.amazon.com/kms/features/#AWS_Service_Integration) use symmetric encryption KMS keys to protect your data. These services do not support encryption with asymmetric KMS keys. For help determining whether a KMS key is asymmetric, see [Identifying asymmetric KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html) in the *Developer Guide*.\n KMS supports the following key specs for KMS keys:\n + Symmetric encryption key (default)\n + ``SYMMETRIC_DEFAULT`` (AES-256-GCM)\n \n + HMAC keys (symmetric)\n + ``HMAC_224`` \n + ``HMAC_256`` \n + ``HMAC_384`` \n + ``HMAC_512`` \n \n + Asymmetric RSA key pairs (encryption and decryption *or* signing and verification)\n + ``RSA_2048`` \n + ``RSA_3072`` \n + ``RSA_4096`` \n \n + Asymmetric NIST-recommended elliptic curve key pairs (signing and verification *or* deriving shared secrets)\n + ``ECC_NIST_P256`` (secp256r1)\n + ``ECC_NIST_P384`` (secp384r1)\n + ``ECC_NIST_P521`` (secp521r1)\n \n + Other asymmetric elliptic curve key pairs (signing and verification)\n + ``ECC_SECG_P256K1`` (secp256k1), commonly used for cryptocurrencies.\n \n + SM2 key pairs (encryption and decryption *or* signing and verification *or* deriving shared secrets)\n + ``SM2`` (China Regions only)\n\n---\n\nRequired: No \nType: String \nAllowed Values: SYMMETRIC_DEFAULT | RSA_2048 | RSA_3072 | RSA_4096 | ECC_NIST_P256 | ECC_NIST_P384 | ECC_NIST_P521 | ECC_SECG_P256K1 | HMAC_224 | HMAC_256 | HMAC_384 | HMAC_512 | SM2 \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies the type of KMS key to create. The default value, ``SYMMETRIC_DEFAULT``, creates a KMS key with a 256-bit symmetric key for encryption and decryption. In China Regions, ``SYMMETRIC_DEFAULT`` creates a 128-bit symmetric key that uses SM4 encryption. You can't change the ``KeySpec`` value after the KMS key is created. For help choosing a key spec for your KMS key, see [Choosing a KMS key type](https://docs.aws.amazon.com/kms/latest/developerguide/symm-asymm-choose.html) in the *Developer Guide*.\n The ``KeySpec`` property determines the type of key material in the KMS key and the algorithms that the KMS key supports. To further restrict the algorithms that can be used with the KMS key, use a condition key in its key policy or IAM policy. For more information, see [condition keys](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms) in the *Developer Guide*.\n If you change the value of the ``KeySpec`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n [services that are integrated with](https://docs.aws.amazon.com/kms/features/#AWS_Service_Integration) use symmetric encryption KMS keys to protect your data. These services do not support encryption with asymmetric KMS keys. For help determining whether a KMS key is asymmetric, see [Identifying asymmetric KMS keys](https://docs.aws.amazon.com/kms/latest/developerguide/find-symm-asymm.html) in the *Developer Guide*.\n KMS supports the following key specs for KMS keys:\n + Symmetric encryption key (default)\n + ``SYMMETRIC_DEFAULT`` (AES-256-GCM)\n \n + HMAC keys (symmetric)\n + ``HMAC_224`` \n + ``HMAC_256`` \n + ``HMAC_384`` \n + ``HMAC_512`` \n \n + Asymmetric RSA key pairs (encryption and decryption *or* signing and verification)\n + ``RSA_2048`` \n + ``RSA_3072`` \n + ``RSA_4096`` \n \n + Asymmetric NIST-recommended elliptic curve key pairs (signing and verification *or* deriving shared secrets)\n + ``ECC_NIST_P256`` (secp256r1)\n + ``ECC_NIST_P384`` (secp384r1)\n + ``ECC_NIST_P521`` (secp521r1)\n \n + Other asymmetric elliptic curve key pairs (signing and verification)\n + ``ECC_SECG_P256K1`` (secp256k1), commonly used for cryptocurrencies.\n \n + Asymmetric ML-DSA key pairs (signing and verification)\n + ``ML_DSA_44`` \n + ``ML_DSA_65`` \n + ``ML_DSA_87`` \n \n + SM2 key pairs (encryption and decryption *or* signing and verification *or* deriving shared secrets)\n + ``SM2`` (China Regions only)\n\n---\n\nRequired: No \nType: String \nAllowed Values: SYMMETRIC_DEFAULT | RSA_2048 | RSA_3072 | RSA_4096 | ECC_NIST_P256 | ECC_NIST_P384 | ECC_NIST_P521 | ECC_SECG_P256K1 | HMAC_224 | HMAC_256 | HMAC_384 | HMAC_512 | SM2 | ML_DSA_44 | ML_DSA_65 | ML_DSA_87 \nUpdate requires: No interruption\n" }, "MultiRegion": { "description": "Creates a multi-Region primary key that you can replicate in other AWS-Regions. You can't change the ``MultiRegion`` value after the KMS key is created.\n For a list of AWS-Regions in which multi-Region keys are supported, see [Multi-Region keys in](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) in the **.\n If you change the value of the ``MultiRegion`` property on an existing KMS key, the update request fails, regardless of the value of the [UpdateReplacePolicy attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html). This prevents you from accidentally deleting a KMS key by changing an immutable property value.\n For a multi-Region key, set to this property to ``true``. For a single-Region key, omit this property or set it to ``false``. The default value is ``false``.\n *Multi-Region keys* are an KMS feature that lets you create multiple interoperable KMS keys in different AWS-Regions. Because these KMS keys have the same key ID, key material, and other metadata, you can use them to encrypt data in one AWS-Region and decrypt it in a different AWS-Region without making a cross-Region call or exposing the plaintext data. For more information, see [Multi-Region keys](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) in the *Developer Guide*.\n You can create a symmetric encryption, HMAC, or asymmetric multi-Region KMS key, and you can create a multi-Region key with imported key material. However, you cannot create a multi-Region key in a custom key store.\n To create a replica of this primary key in a different AWS-Region , create an [AWS::KMS::ReplicaKey](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html) resource in a CloudFormation stack in the replica Region. Specify the key ARN of this primary key.", diff --git a/server/schema/resources/aws-lambda-codesigningconfig.json b/server/schema/resources/aws-lambda-codesigningconfig.json index 93e877bc..e69b5f52 100644 --- a/server/schema/resources/aws-lambda-codesigningconfig.json +++ b/server/schema/resources/aws-lambda-codesigningconfig.json @@ -150,7 +150,6 @@ "update": { "permissions": [ "lambda:UpdateCodeSigningConfig", - "lambda:ListTags", "lambda:TagResource", "lambda:UntagResource" ] diff --git a/server/schema/resources/aws-lambda-eventsourcemapping.json b/server/schema/resources/aws-lambda-eventsourcemapping.json index cff9f8bb..4b37f8b1 100644 --- a/server/schema/resources/aws-lambda-eventsourcemapping.json +++ b/server/schema/resources/aws-lambda-eventsourcemapping.json @@ -216,7 +216,7 @@ "DestinationConfig": { "type": "object", "additionalProperties": false, - "description": "A configuration object that specifies the destination of an event after Lambda processes it.", + "description": "A configuration object that specifies the destination of an event after Lambda processes it. For more information, see [Adding a destination](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-async-destinations).", "properties": { "OnFailure": { "description": "The destination configuration for failed invocations.", @@ -224,7 +224,7 @@ "markdownDescription": "The destination configuration for failed invocations.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, - "markdownDescription": "A configuration object that specifies the destination of an event after Lambda processes it.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "A configuration object that specifies the destination of an event after Lambda processes it. For more information, see [Adding a destination](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-async-destinations).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "FilterCriteria": { "type": "object", @@ -262,7 +262,7 @@ }, "OnFailure": { "type": "object", - "description": "A destination for events that failed processing. See [Capturing records of Lambda asynchronous invocations](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html) for more information.", + "description": "A destination for events that failed processing. For more information, see [Adding a destination](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-async-destinations).", "additionalProperties": false, "properties": { "Destination": { @@ -273,7 +273,7 @@ "markdownDescription": "The Amazon Resource Name (ARN) of the destination resource.\n To retain records of unsuccessful [asynchronous invocations](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-async-destinations), you can configure an Amazon SNS topic, Amazon SQS queue, Amazon S3 bucket, Lambda function, or Amazon EventBridge event bus as the destination.\n To retain records of failed invocations from [Kinesis](https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html), [DynamoDB](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html), [self-managed Kafka](https://docs.aws.amazon.com/lambda/latest/dg/with-kafka.html#services-smaa-onfailure-destination) or [Amazon MSK](https://docs.aws.amazon.com/lambda/latest/dg/with-msk.html#services-msk-onfailure-destination), you can configure an Amazon SNS topic, Amazon SQS queue, or Amazon S3 bucket as the destination.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 1024 \nPattern: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*) \nUpdate requires: No interruption\n" } }, - "markdownDescription": "A destination for events that failed processing. See [Capturing records of Lambda asynchronous invocations](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html) for more information.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "A destination for events that failed processing. For more information, see [Adding a destination](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-async-destinations).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "SourceAccessConfiguration": { "type": "object", @@ -488,33 +488,33 @@ "additionalProperties": false, "properties": { "SchemaRegistryURI": { - "description": "The URI for your schema registry. The correct URI format depends on the type of schema registry you're using.", + "description": "", "type": "string", "minLength": 1, "maxLength": 10000, - "markdownDescription": "The URI for your schema registry. The correct URI format depends on the type of schema registry you're using.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 10000 \nPattern: [a-zA-Z0-9-/*:_+=.@-]* \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 10000 \nPattern: [a-zA-Z0-9-/*:_+=.@-]* \nUpdate requires: No interruption\n" }, "EventRecordFormat": { - "description": "The record format that Lambda delivers to your function after schema validation.", + "description": "", "enum": [ "JSON", "SOURCE" ], "type": "string", - "markdownDescription": "The record format that Lambda delivers to your function after schema validation.\n\n---\n\nRequired: No \nType: String \nAllowed Values: JSON | SOURCE \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: JSON | SOURCE \nUpdate requires: No interruption\n" }, "AccessConfigs": { - "description": "An array of access configuration objects that tell Lambda how to authenticate with your schema registry.", + "description": "", "type": "array", "uniqueItems": true, "maxItems": 2, "items": { "$ref": "#/definitions/SchemaRegistryAccessConfig" }, - "markdownDescription": "An array of access configuration objects that tell Lambda how to authenticate with your schema registry.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "SchemaValidationConfigs": { - "description": "An array of schema validation configuration objects, which tell Lambda the message attributes you want to validate and filter using your schema registry.", + "description": "", "type": "array", "uniqueItems": true, "minItems": 1, @@ -522,7 +522,7 @@ "items": { "$ref": "#/definitions/SchemaValidationConfig" }, - "markdownDescription": "An array of schema validation configuration objects, which tell Lambda the message attributes you want to validate and filter using your schema registry.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -533,21 +533,21 @@ "additionalProperties": false, "properties": { "Type": { - "description": "The type of authentication Lambda uses to access your schema registry.", + "description": "", "type": "string", "enum": [ "BASIC_AUTH", "CLIENT_CERTIFICATE_TLS_AUTH", "SERVER_ROOT_CA_CERTIFICATE" ], - "markdownDescription": "The type of authentication Lambda uses to access your schema registry.\n\n---\n\nRequired: No \nType: String \nAllowed Values: BASIC_AUTH | CLIENT_CERTIFICATE_TLS_AUTH | SERVER_ROOT_CA_CERTIFICATE \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: BASIC_AUTH | CLIENT_CERTIFICATE_TLS_AUTH | SERVER_ROOT_CA_CERTIFICATE \nUpdate requires: No interruption\n" }, "URI": { - "description": "The URI of the secret (Secrets Manager secret ARN) to authenticate with your schema registry.", + "description": "", "type": "string", "minLength": 1, "maxLength": 10000, - "markdownDescription": "The URI of the secret (Secrets Manager secret ARN) to authenticate with your schema registry.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 10000 \nPattern: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*) \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 10000 \nPattern: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*) \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -558,13 +558,13 @@ "additionalProperties": false, "properties": { "Attribute": { - "description": "The attribute you want your schema registry to validate and filter for.", + "description": "", "type": "string", "enum": [ "KEY", "VALUE" ], - "markdownDescription": "The attribute you want your schema registry to validate and filter for.\n\n---\n\nRequired: No \nType: String \nAllowed Values: KEY | VALUE \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: KEY | VALUE \nUpdate requires: No interruption\n" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" diff --git a/server/schema/resources/aws-lambda-layerversionpermission.json b/server/schema/resources/aws-lambda-layerversionpermission.json index e0fdcf60..07e22dc5 100644 --- a/server/schema/resources/aws-lambda-layerversionpermission.json +++ b/server/schema/resources/aws-lambda-layerversionpermission.json @@ -76,6 +76,9 @@ ] } }, + "propertyTransform": { + "/properties/Principal": "Principal $OR $join([\".*AWS.*[arn:aws:iam::\", Principal, \":root].*\"]) $OR $join([\".*AWS.*[\", Principal, \"].*\"])" + }, "attributes": { "Id": { "description": "ID generated by service", diff --git a/server/schema/resources/aws-lambda-permission.json b/server/schema/resources/aws-lambda-permission.json index 49d1539b..f4f5efdd 100644 --- a/server/schema/resources/aws-lambda-permission.json +++ b/server/schema/resources/aws-lambda-permission.json @@ -30,7 +30,7 @@ "description": "The name of the Lambda function, version, or alias.", "type": "string", "maxLength": 140, - "markdownDescription": "The name of the Lambda function, version, or alias.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 140 \nPattern: ^(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$ \nUpdate requires: No interruption\n" + "markdownDescription": "The name of the Lambda function, version, or alias.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 140 \nPattern: ^(arn:(aws[a-zA-Z-]*)?:lambda:)?((eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$ \nUpdate requires: No interruption\n" } }, "required": [ @@ -70,7 +70,7 @@ "description": "The name or ARN of the Lambda function, version, or alias.\n **Name formats**\n + *Function name* \u2013 ``my-function`` (name-only), ``my-function:v1`` (with alias).\n + *Function ARN* \u2013 ``arn:aws:lambda:us-west-2:123456789012:function:my-function``.\n + *Partial ARN* \u2013 ``123456789012:function:my-function``.\n \n You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.", "type": "string", "maxLength": 140, - "markdownDescription": "The name or ARN of the Lambda function, version, or alias.\n **Name formats**\n + *Function name* \u2013 ``my-function`` (name-only), ``my-function:v1`` (with alias).\n + *Function ARN* \u2013 ``arn:aws:lambda:us-west-2:123456789012:function:my-function``.\n + *Partial ARN* \u2013 ``123456789012:function:my-function``.\n \n You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 140 \nPattern: ^(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$ \nUpdate requires: Replacement\n" + "markdownDescription": "The name or ARN of the Lambda function, version, or alias.\n **Name formats**\n + *Function name* \u2013 ``my-function`` (name-only), ``my-function:v1`` (with alias).\n + *Function ARN* \u2013 ``arn:aws:lambda:us-west-2:123456789012:function:my-function``.\n + *Partial ARN* \u2013 ``123456789012:function:my-function``.\n \n You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 140 \nPattern: ^(arn:(aws[a-zA-Z-]*)?:lambda:)?((eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$ \nUpdate requires: Replacement\n" }, "Action": { "minLength": 1, @@ -100,7 +100,7 @@ "description": "For AWS-services, the ARN of the AWS resource that invokes the function. For example, an Amazon S3 bucket or Amazon SNS topic.\n Note that Lambda configures the comparison using the ``StringLike`` operator.", "type": "string", "maxLength": 1024, - "markdownDescription": "For AWS-services, the ARN of the AWS resource that invokes the function. For example, an Amazon S3 bucket or Amazon SNS topic.\n Note that Lambda configures the comparison using the ``StringLike`` operator.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 1024 \nPattern: ^arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)$ \nUpdate requires: Replacement\n" + "markdownDescription": "For AWS-services, the ARN of the AWS resource that invokes the function. For example, an Amazon S3 bucket or Amazon SNS topic.\n Note that Lambda configures the comparison using the ``StringLike`` operator.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 1024 \nPattern: ^arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:((eusc-)?[a-z]{2}((-gov)|(-iso([a-z]?)))?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)$ \nUpdate requires: Replacement\n" }, "SourceAccount": { "minLength": 12, diff --git a/server/schema/resources/aws-lex-bot.json b/server/schema/resources/aws-lex-bot.json index b894e2b8..3c635584 100644 --- a/server/schema/resources/aws-lex-bot.json +++ b/server/schema/resources/aws-lex-bot.json @@ -318,8 +318,8 @@ "Description": { "description": "A description of the resource", "type": "string", - "maxLength": 200, - "markdownDescription": "A description of the resource\n\n---\n\nRequired: No \nType: String \nMaximum Length: 200 \nUpdate requires: No interruption\n" + "maxLength": 2000, + "markdownDescription": "A description of the resource\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2000 \nUpdate requires: No interruption\n" }, "DataPrivacy": { "type": "object", @@ -417,6 +417,92 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "GenerativeAISettings": { + "type": "object", + "properties": { + "BuildtimeSettings": { + "type": "object", + "properties": { + "DescriptiveBotBuilderSpecification": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + }, + "BedrockModelSpecification": { + "$ref": "#/definitions/BedrockModelSpecification" + } + }, + "required": [ + "Enabled" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SampleUtteranceGenerationSpecification": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + }, + "BedrockModelSpecification": { + "$ref": "#/definitions/BedrockModelSpecification" + } + }, + "required": [ + "Enabled" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RuntimeSettings": { + "type": "object", + "properties": { + "NluImprovementSpecification": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Enabled" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SlotResolutionImprovementSpecification": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + }, + "BedrockModelSpecification": { + "$ref": "#/definitions/BedrockModelSpecification" + } + }, + "required": [ + "Enabled" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "ConfidenceThreshold": { "type": "number", "minimum": 0, @@ -2025,6 +2111,9 @@ "VoiceSettings": { "$ref": "#/definitions/VoiceSettings" }, + "GenerativeAISettings": { + "$ref": "#/definitions/GenerativeAISettings" + }, "NluConfidenceThreshold": { "$ref": "#/definitions/ConfidenceThreshold" }, diff --git a/server/schema/resources/aws-lightsail-domain.json b/server/schema/resources/aws-lightsail-domain.json new file mode 100644 index 00000000..498e6ff4 --- /dev/null +++ b/server/schema/resources/aws-lightsail-domain.json @@ -0,0 +1,251 @@ +{ + "typeName": "AWS::Lightsail::Domain", + "description": "Resource Type definition for AWS::Lightsail::Domain", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-lightsail.git", + "additionalProperties": false, + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag.", + "markdownDescription": "The key name of the tag.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag.", + "markdownDescription": "The value for the tag.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key" + ], + "additionalProperties": false, + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DomainEntry": { + "type": "object", + "description": "Describes the domain recordset entry (e.g., A record, CNAME record, TXT record, etc.)", + "properties": { + "Id": { + "type": "string", + "description": "The ID of the domain recordset entry.", + "markdownDescription": "The ID of the domain recordset entry.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Name": { + "type": "string", + "description": "The name of the domain entry.", + "markdownDescription": "The name of the domain entry.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Target": { + "type": "string", + "description": "The target AWS name server (e.g., ns-111.awsdns-11.com).", + "markdownDescription": "The target AWS name server (e.g., ns-111.awsdns-11.com).\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "IsAlias": { + "type": "boolean", + "description": "When true, specifies whether the domain entry is an alias used by the Lightsail load balancer, Lightsail container service, Lightsail content delivery network (CDN) distribution, or another AWS resource. You can include an alias (A type) record in your request, which points to the DNS name of a load balancer, container service, CDN distribution, or other AWS resource and routes traffic to that resource.", + "markdownDescription": "When true, specifies whether the domain entry is an alias used by the Lightsail load balancer, Lightsail container service, Lightsail content delivery network (CDN) distribution, or another AWS resource. You can include an alias (A type) record in your request, which points to the DNS name of a load balancer, container service, CDN distribution, or other AWS resource and routes traffic to that resource.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "Type": { + "type": "string", + "description": "The type of domain entry (e.g., A, CNAME, MX, NS, SOA, SRV, TXT).", + "enum": [ + "A", + "AAAA", + "CNAME", + "MX", + "NS", + "SOA", + "SRV", + "TXT" + ], + "markdownDescription": "The type of domain entry (e.g., A, CNAME, MX, NS, SOA, SRV, TXT).\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: A | AAAA | CNAME | MX | NS | SOA | SRV | TXT \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Name", + "Type", + "Target" + ], + "additionalProperties": false, + "markdownDescription": "Describes the domain recordset entry (e.g., A record, CNAME record, TXT record, etc.)\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "DomainName": { + "description": "The name of the domain to manage in Lightsail.", + "type": "string", + "markdownDescription": "The name of the domain to manage in Lightsail.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + }, + "DomainEntries": { + "description": "An array of key-value pairs containing information about the domain entries.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/DomainEntry" + }, + "markdownDescription": "An array of key-value pairs containing information about the domain entries.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Arn": { + "description": "The Amazon Resource Name (ARN) of the domain (read-only).", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the domain (read-only).\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:.+:lightsail:[a-z0-9-]+:[0-9]{12}:Domain/[a-zA-Z0-9][a-zA-Z0-9-_.]{0,253}[a-zA-Z0-9]$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SupportCode": { + "description": "The support code. Include this code in your email to support when you have questions (read-only).", + "type": "string", + "markdownDescription": "The support code. Include this code in your email to support when you have questions (read-only).\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreatedAt": { + "description": "The timestamp when the domain was created (read-only).", + "type": "string", + "markdownDescription": "The timestamp when the domain was created (read-only).\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Location": { + "type": "object", + "description": "The AWS Region and Availability Zone where the domain was created (read-only).", + "properties": { + "AvailabilityZone": { + "type": "string", + "description": "The Availability Zone.", + "markdownDescription": "The Availability Zone.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RegionName": { + "type": "string", + "description": "The AWS Region name.", + "markdownDescription": "The AWS Region name.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "The AWS Region and Availability Zone where the domain was created (read-only).\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ResourceType": { + "description": "The Lightsail resource type (read-only).", + "type": "string", + "enum": [ + "Domain" + ], + "markdownDescription": "The Lightsail resource type (read-only).\n\n---\n\nRequired: No \nType: String \nAllowed Values: Domain \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "DomainName" + ], + "primaryIdentifier": [ + "/properties/DomainName" + ], + "readOnlyProperties": [ + "/properties/Arn", + "/properties/SupportCode", + "/properties/CreatedAt", + "/properties/Location", + "/properties/ResourceType", + "/properties/DomainEntries/*/Id" + ], + "createOnlyProperties": [ + "/properties/DomainName" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "lightsail:TagResource", + "lightsail:UntagResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "lightsail:CreateDomain", + "lightsail:GetDomain", + "lightsail:CreateDomainEntry", + "lightsail:TagResource" + ] + }, + "read": { + "permissions": [ + "lightsail:GetDomain" + ] + }, + "update": { + "permissions": [ + "lightsail:GetDomain", + "lightsail:CreateDomainEntry", + "lightsail:DeleteDomainEntry", + "lightsail:TagResource", + "lightsail:UntagResource" + ] + }, + "delete": { + "permissions": [ + "lightsail:DeleteDomain", + "lightsail:GetDomain" + ] + }, + "list": { + "permissions": [ + "lightsail:GetDomains" + ] + } + }, + "attributes": { + "Arn": { + "description": "The Amazon Resource Name (ARN) of the domain (read-only).", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the domain (read-only).\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:.+:lightsail:[a-z0-9-]+:[0-9]{12}:Domain/[a-zA-Z0-9][a-zA-Z0-9-_.]{0,253}[a-zA-Z0-9]$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SupportCode": { + "description": "The support code. Include this code in your email to support when you have questions (read-only).", + "type": "string", + "markdownDescription": "The support code. Include this code in your email to support when you have questions (read-only).\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreatedAt": { + "description": "The timestamp when the domain was created (read-only).", + "type": "string", + "markdownDescription": "The timestamp when the domain was created (read-only).\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Location": { + "type": "object", + "description": "The AWS Region and Availability Zone where the domain was created (read-only).", + "properties": { + "AvailabilityZone": { + "type": "string", + "description": "The Availability Zone.", + "markdownDescription": "The Availability Zone.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RegionName": { + "type": "string", + "description": "The AWS Region name.", + "markdownDescription": "The AWS Region name.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "The AWS Region and Availability Zone where the domain was created (read-only).\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ResourceType": { + "description": "The Lightsail resource type (read-only).", + "type": "string", + "enum": [ + "Domain" + ], + "markdownDescription": "The Lightsail resource type (read-only).\n\n---\n\nRequired: No \nType: String \nAllowed Values: Domain \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-logs-accountpolicy.json b/server/schema/resources/aws-logs-accountpolicy.json index 33a95b68..83d93f6b 100644 --- a/server/schema/resources/aws-logs-accountpolicy.json +++ b/server/schema/resources/aws-logs-accountpolicy.json @@ -36,9 +36,10 @@ "DATA_PROTECTION_POLICY", "SUBSCRIPTION_FILTER_POLICY", "FIELD_INDEX_POLICY", - "TRANSFORMER_POLICY" + "TRANSFORMER_POLICY", + "METRIC_EXTRACTION_POLICY" ], - "markdownDescription": "Type of the policy.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: DATA_PROTECTION_POLICY | SUBSCRIPTION_FILTER_POLICY | FIELD_INDEX_POLICY | TRANSFORMER_POLICY \nUpdate requires: Replacement\n" + "markdownDescription": "Type of the policy.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: DATA_PROTECTION_POLICY | SUBSCRIPTION_FILTER_POLICY | FIELD_INDEX_POLICY | TRANSFORMER_POLICY | METRIC_EXTRACTION_POLICY \nUpdate requires: Replacement\n" }, "Scope": { "description": "Scope for policy application", @@ -67,13 +68,15 @@ "logs:PutSubscriptionFilter", "logs:DeleteSubscriptionFilter", "logs:PutTransformer", + "logs:PutMetricExtractionPolicy", "iam:PassRole" ] }, "read": { "permissions": [ "logs:DescribeAccountPolicies", - "logs:GetTransformer" + "logs:GetTransformer", + "logs:GetMetricExtractionPolicy" ] }, "update": { @@ -90,6 +93,8 @@ "logs:DeleteSubscriptionFilter", "logs:PutTransformer", "logs:DeleteTransformer", + "logs:PutMetricExtractionPolicy", + "logs:DeleteMetricExtractionPolicy", "s3:REST.PUT.OBJECT", "firehose:TagDeliveryStream", "iam:PassRole" @@ -103,13 +108,15 @@ "logs:DescribeAccountPolicies", "logs:DeleteSubscriptionFilter", "logs:DeleteTransformer", + "logs:DeleteMetricExtractionPolicy", "iam:PassRole" ] }, "list": { "permissions": [ "logs:DescribeAccountPolicies", - "logs:GetTransformer" + "logs:GetTransformer", + "logs:GetMetricExtractionPolicy" ], "handlerSchema": { "properties": { diff --git a/server/schema/resources/aws-logs-destination.json b/server/schema/resources/aws-logs-destination.json index 7c820466..2d72713d 100644 --- a/server/schema/resources/aws-logs-destination.json +++ b/server/schema/resources/aws-logs-destination.json @@ -2,14 +2,61 @@ "typeName": "AWS::Logs::Destination", "description": "The AWS::Logs::Destination resource specifies a CloudWatch Logs destination. A destination encapsulates a physical resource (such as an Amazon Kinesis data stream) and enables you to subscribe that resource to a stream of log events.", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @.", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, - and @.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, "tagging": { - "taggable": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "logs:TagResource", + "logs:UntagResource", + "logs:ListTagsForResource" + ] }, "properties": { "Arn": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "DestinationName": { "description": "The name of the destination resource", "type": "string", @@ -42,12 +89,14 @@ "logs:PutDestination", "logs:PutDestinationPolicy", "logs:DescribeDestinations", + "logs:TagResource", "iam:PassRole" ] }, "read": { "permissions": [ - "logs:DescribeDestinations" + "logs:DescribeDestinations", + "logs:ListTagsForResource" ] }, "update": { @@ -55,6 +104,9 @@ "logs:PutDestination", "logs:PutDestinationPolicy", "logs:DescribeDestinations", + "logs:TagResource", + "logs:UntagResource", + "logs:ListTagsForResource", "iam:PassRole" ] }, @@ -65,7 +117,8 @@ }, "list": { "permissions": [ - "logs:DescribeDestinations" + "logs:DescribeDestinations", + "logs:ListTagsForResource" ] } }, diff --git a/server/schema/resources/aws-logs-loggroup.json b/server/schema/resources/aws-logs-loggroup.json index 6f4b77b4..6f25c9f6 100644 --- a/server/schema/resources/aws-logs-loggroup.json +++ b/server/schema/resources/aws-logs-loggroup.json @@ -115,6 +115,11 @@ "description": "", "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ResourcePolicyDocument": { + "description": "", + "type": "object", + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "handlers": { @@ -140,7 +145,8 @@ "logs:DescribeLogGroups", "logs:ListTagsForResource", "logs:GetDataProtectionPolicy", - "logs:DescribeIndexPolicies" + "logs:DescribeIndexPolicies", + "logs:DescribeResourcePolicies" ] }, "update": { @@ -159,7 +165,10 @@ "s3:REST.PUT.OBJECT", "firehose:TagDeliveryStream", "logs:PutIndexPolicy", - "logs:DeleteIndexPolicy" + "logs:DeleteIndexPolicy", + "logs:PutResourcePolicy", + "logs:DescribeResourcePolicies", + "logs:DeleteResourcePolicy" ] }, "delete": { diff --git a/server/schema/resources/aws-logs-transformer.json b/server/schema/resources/aws-logs-transformer.json index 781a63be..97ca9f7c 100644 --- a/server/schema/resources/aws-logs-transformer.json +++ b/server/schema/resources/aws-logs-transformer.json @@ -61,6 +61,9 @@ "ParsePostgres": { "$ref": "#/definitions/ParsePostgres" }, + "ParseToOCSF": { + "$ref": "#/definitions/ParseToOCSF" + }, "ParseKeyValue": { "type": "object", "properties": { @@ -502,6 +505,26 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ParseToOCSF": { + "type": "object", + "properties": { + "Source": { + "$ref": "#/definitions/NonEmptyString" + }, + "EventSource": { + "$ref": "#/definitions/EventSource" + }, + "OcsfVersion": { + "$ref": "#/definitions/OcsfVersion" + } + }, + "additionalProperties": false, + "required": [ + "EventSource", + "OcsfVersion" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "AddKeyEntry": { "type": "object", "properties": { @@ -678,6 +701,24 @@ "type": "string", "maxLength": 128, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "EventSource": { + "type": "string", + "enum": [ + "CloudTrail", + "Route53Resolver", + "VPCFlow", + "EKSAudit", + "AWSWAF" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: CloudTrail | Route53Resolver | VPCFlow | EKSAudit | AWSWAF \nUpdate requires: No interruption\n" + }, + "OcsfVersion": { + "type": "string", + "enum": [ + "V1.1" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: V1.1 \nUpdate requires: No interruption\n" } }, "primaryIdentifier": [ diff --git a/server/schema/resources/aws-medialive-channel.json b/server/schema/resources/aws-medialive-channel.json index 02a62d74..726f5ecc 100644 --- a/server/schema/resources/aws-medialive-channel.json +++ b/server/schema/resources/aws-medialive-channel.json @@ -1754,6 +1754,9 @@ "type": "object", "additionalProperties": false, "properties": { + "MediapackageV2GroupSettings": { + "$ref": "#/definitions/MediaPackageV2GroupSettings" + }, "Destination": { "$ref": "#/definitions/OutputLocationRef" } @@ -2815,11 +2818,6 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Rec709Settings": { - "type": "object", - "additionalProperties": false, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, "ArchiveContainerSettings": { "type": "object", "additionalProperties": false, @@ -2833,6 +2831,11 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "Rec709Settings": { + "type": "object", + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "InputAttachment": { "type": "object", "additionalProperties": false, @@ -2907,6 +2910,11 @@ "MediaPackageOutputSettings": { "type": "object", "additionalProperties": false, + "properties": { + "MediaPackageV2DestinationSettings": { + "$ref": "#/definitions/MediaPackageV2DestinationSettings" + } + }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Av1ColorSpaceSettings": { @@ -3250,6 +3258,21 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "MediaPackageV2GroupSettings": { + "type": "object", + "additionalProperties": false, + "properties": { + "CaptionLanguageMappings": { + "type": "array", + "uniqueItems": false, + "items": { + "$ref": "#/definitions/CaptionLanguageMapping" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "AudioSelector": { "type": "object", "additionalProperties": false, @@ -4177,6 +4200,29 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "MediaPackageV2DestinationSettings": { + "type": "object", + "additionalProperties": false, + "properties": { + "HlsDefault": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "AudioRenditionSets": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "AudioGroupId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "HlsAutoSelect": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "MotionGraphicsConfiguration": { "type": "object", "additionalProperties": false, diff --git a/server/schema/resources/aws-mediapackagev2-channel.json b/server/schema/resources/aws-mediapackagev2-channel.json index f0b320f3..4c8cd1fe 100644 --- a/server/schema/resources/aws-mediapackagev2-channel.json +++ b/server/schema/resources/aws-mediapackagev2-channel.json @@ -28,6 +28,12 @@ "type": "boolean", "description": "

When true, AWS Elemental MediaPackage performs input switching based on the MQCS. Default is true. This setting is valid only when InputType is CMAF.

", "markdownDescription": "

When true, AWS Elemental MediaPackage performs input switching based on the MQCS. Default is true. This setting is valid only when InputType is CMAF.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "PreferredInput": { + "type": "integer", + "maximum": 2, + "minimum": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "additionalProperties": false, @@ -121,6 +127,9 @@ "format": "date-time", "markdownDescription": "

The date and time the channel was modified.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, + "OutputHeaderConfiguration": { + "$ref": "#/definitions/OutputHeaderConfiguration" + }, "IngestEndpointUrls": { "type": "array", "items": { @@ -129,9 +138,6 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" }, - "OutputHeaderConfiguration": { - "$ref": "#/definitions/OutputHeaderConfiguration" - }, "Tags": { "type": "array", "insertionOrder": false, diff --git a/server/schema/resources/aws-mediapackagev2-originendpoint.json b/server/schema/resources/aws-mediapackagev2-originendpoint.json index 5dab3ade..152b8e5c 100644 --- a/server/schema/resources/aws-mediapackagev2-originendpoint.json +++ b/server/schema/resources/aws-mediapackagev2-originendpoint.json @@ -33,6 +33,53 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: TS | CMAF \nUpdate requires: No interruption\n" }, + "DashBaseUrl": { + "type": "object", + "description": "

The base URLs to use for retrieving segments. You can specify multiple locations and indicate the priority and weight for when each should be used, for use in mutli-CDN workflows.

", + "properties": { + "Url": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

A source location for segments.

", + "markdownDescription": "

A source location for segments.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "ServiceLocation": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

The name of the source location.

", + "markdownDescription": "

The name of the source location.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "DvbPriority": { + "type": "integer", + "maximum": 15000, + "minimum": 1, + "description": "

For use with DVB-DASH profiles only. The priority of this location for servings segments. The lower the number, the higher the priority.

", + "markdownDescription": "

For use with DVB-DASH profiles only. The priority of this location for servings segments. The lower the number, the higher the priority.

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "DvbWeight": { + "type": "integer", + "maximum": 15000, + "minimum": 1, + "description": "

For use with DVB-DASH profiles only. The weighting for source locations that have the same priority.

", + "markdownDescription": "

For use with DVB-DASH profiles only. The weighting for source locations that have the same priority.

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Url" + ], + "additionalProperties": false, + "markdownDescription": "

The base URLs to use for retrieving segments. You can specify multiple locations and indicate the priority and weight for when each should be used, for use in mutli-CDN workflows.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DashCompactness": { + "type": "string", + "enum": [ + "STANDARD", + "NONE" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: STANDARD | NONE \nUpdate requires: No interruption\n" + }, "DashDrmSignaling": { "type": "string", "enum": [ @@ -41,6 +88,81 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: INDIVIDUAL | REFERENCED \nUpdate requires: No interruption\n" }, + "DashDvbFontDownload": { + "type": "object", + "description": "

For use with DVB-DASH profiles only. The settings for font downloads that you want Elemental MediaPackage to pass through to the manifest.

", + "properties": { + "Url": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

The URL for downloading fonts for subtitles.

", + "markdownDescription": "

The URL for downloading fonts for subtitles.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "MimeType": { + "type": "string", + "maxLength": 256, + "minLength": 1, + "description": "

The mimeType of the resource that's at the font download URL.

For information about font MIME types, see the MPEG-DASH Profile for Transport of ISO BMFF Based DVB Services over IP Based Networks document.

", + "markdownDescription": "

The mimeType of the resource that's at the font download URL.

For information about font MIME types, see the MPEG-DASH Profile for Transport of ISO BMFF Based DVB Services over IP Based Networks document.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-zA-Z0-9][a-zA-Z0-9_/-]*[a-zA-Z0-9]$ \nUpdate requires: No interruption\n" + }, + "FontFamily": { + "type": "string", + "maxLength": 256, + "minLength": 1, + "description": "

The fontFamily name for subtitles, as described in EBU-TT-D Subtitling Distribution Format.

", + "markdownDescription": "

The fontFamily name for subtitles, as described in EBU-TT-D Subtitling Distribution Format.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "

For use with DVB-DASH profiles only. The settings for font downloads that you want Elemental MediaPackage to pass through to the manifest.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DashDvbMetricsReporting": { + "type": "object", + "description": "

For use with DVB-DASH profiles only. The settings for error reporting from the playback device that you want Elemental MediaPackage to pass through to the manifest.

", + "properties": { + "ReportingUrl": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

The URL where playback devices send error reports.

", + "markdownDescription": "

The URL where playback devices send error reports.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "Probability": { + "type": "integer", + "maximum": 1000, + "minimum": 1, + "description": "

The number of playback devices per 1000 that will send error reports to the reporting URL. This represents the probability that a playback device will be a reporting player for this session.

", + "markdownDescription": "

The number of playback devices per 1000 that will send error reports to the reporting URL. This represents the probability that a playback device will be a reporting player for this session.

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ReportingUrl" + ], + "additionalProperties": false, + "markdownDescription": "

For use with DVB-DASH profiles only. The settings for error reporting from the playback device that you want Elemental MediaPackage to pass through to the manifest.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DashDvbSettings": { + "type": "object", + "description": "

For endpoints that use the DVB-DASH profile only. The font download and error reporting information that you want MediaPackage to pass through to the manifest.

", + "properties": { + "FontDownload": { + "$ref": "#/definitions/DashDvbFontDownload" + }, + "ErrorMetrics": { + "type": "array", + "items": { + "$ref": "#/definitions/DashDvbMetricsReporting" + }, + "maxItems": 20, + "minItems": 0, + "description": "

Playback device error reporting settings.

", + "markdownDescription": "

Playback device error reporting settings.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "

For endpoints that use the DVB-DASH profile only. The font download and error reporting information that you want MediaPackage to pass through to the manifest.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DashPeriodTrigger": { "type": "string", "enum": [ @@ -52,6 +174,56 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: AVAILS | DRM_KEY_ROTATION | SOURCE_CHANGES | SOURCE_DISRUPTIONS | NONE \nUpdate requires: No interruption\n" }, + "DashProfile": { + "type": "string", + "enum": [ + "DVB_DASH" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: DVB_DASH \nUpdate requires: No interruption\n" + }, + "DashProgramInformation": { + "type": "object", + "description": "

Details about the content that you want MediaPackage to pass through in the manifest to the playback device.

", + "properties": { + "Title": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

The title for the manifest.

", + "markdownDescription": "

The title for the manifest.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "Source": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

Information about the content provider.

", + "markdownDescription": "

Information about the content provider.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "Copyright": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

A copyright statement about the content.

", + "markdownDescription": "

A copyright statement about the content.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "LanguageCode": { + "type": "string", + "maxLength": 5, + "minLength": 2, + "description": "

The language code for this manifest.

", + "markdownDescription": "

The language code for this manifest.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 2 \nMaximum Length: 5 \nPattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*[a-zA-Z0-9]$ \nUpdate requires: No interruption\n" + }, + "MoreInformationUrl": { + "type": "string", + "maxLength": 2048, + "minLength": 1, + "description": "

An absolute URL that contains more information about this content.

", + "markdownDescription": "

An absolute URL that contains more information about this content.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "

Details about the content that you want MediaPackage to pass through in the manifest to the playback device.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DashSegmentTemplateFormat": { "type": "string", "enum": [ @@ -59,6 +231,39 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: NUMBER_WITH_TIMELINE \nUpdate requires: No interruption\n" }, + "DashSubtitleConfiguration": { + "type": "object", + "description": "

The configuration for DASH subtitles.

", + "properties": { + "TtmlConfiguration": { + "$ref": "#/definitions/DashTtmlConfiguration" + } + }, + "additionalProperties": false, + "markdownDescription": "

The configuration for DASH subtitles.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DashTtmlConfiguration": { + "type": "object", + "description": "

The settings for TTML subtitles.

", + "properties": { + "TtmlProfile": { + "$ref": "#/definitions/DashTtmlProfile" + } + }, + "required": [ + "TtmlProfile" + ], + "additionalProperties": false, + "markdownDescription": "

The settings for TTML subtitles.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DashTtmlProfile": { + "type": "string", + "enum": [ + "IMSC_1", + "EBU_TT_D_101" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: IMSC_1 | EBU_TT_D_101 \nUpdate requires: No interruption\n" + }, "DashUtcTiming": { "type": "object", "description": "

Determines the type of UTC timing included in the DASH Media Presentation Description (MPD).

", @@ -116,8 +321,13 @@ "type": "integer", "maximum": 31536000, "minimum": 300, - "description": "

The frequency (in seconds) of key changes for live workflows, in which content is streamed real time. The service retrieves content keys before the live content begins streaming, and then retrieves them as needed over the lifetime of the workflow. By default, key rotation is set to 300 seconds (5 minutes), the minimum rotation interval, which is equivalent to setting it to 300. If you don't enter an interval, content keys aren't rotated.

\n

The following example setting causes the service to rotate keys every thirty minutes: 1800\n

", - "markdownDescription": "

The frequency (in seconds) of key changes for live workflows, in which content is streamed real time. The service retrieves content keys before the live content begins streaming, and then retrieves them as needed over the lifetime of the workflow. By default, key rotation is set to 300 seconds (5 minutes), the minimum rotation interval, which is equivalent to setting it to 300. If you don't enter an interval, content keys aren't rotated.

\n

The following example setting causes the service to rotate keys every thirty minutes: 1800\n

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "description": "

The frequency (in seconds) of key changes for live workflows, in which content is streamed real time. The service retrieves content keys before the live content begins streaming, and then retrieves them as needed over the lifetime of the workflow. By default, key rotation is set to 300 seconds (5 minutes), the minimum rotation interval, which is equivalent to setting it to 300. If you don't enter an interval, content keys aren't rotated.

The following example setting causes the service to rotate keys every thirty minutes: 1800

", + "markdownDescription": "

The frequency (in seconds) of key changes for live workflows, in which content is streamed real time. The service retrieves content keys before the live content begins streaming, and then retrieves them as needed over the lifetime of the workflow. By default, key rotation is set to 300 seconds (5 minutes), the minimum rotation interval, which is equivalent to setting it to 300. If you don't enter an interval, content keys aren't rotated.

The following example setting causes the service to rotate keys every thirty minutes: 1800

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "CmafExcludeSegmentDrmMetadata": { + "type": "boolean", + "description": "

Excludes SEIG and SGPD boxes from segment metadata in CMAF containers.

When set to true, MediaPackage omits these DRM metadata boxes from CMAF segments, which can improve compatibility with certain devices and players that don't support these boxes.

Important considerations:

  • This setting only affects CMAF container formats

  • Key rotation can still be handled through media playlist signaling

  • PSSH and TENC boxes remain unaffected

  • Default behavior is preserved when this setting is disabled

Valid values: true | false

Default: false

", + "markdownDescription": "

Excludes SEIG and SGPD boxes from segment metadata in CMAF containers.

When set to true, MediaPackage omits these DRM metadata boxes from CMAF segments, which can improve compatibility with certain devices and players that don't support these boxes.

Important considerations:

  • This setting only affects CMAF container formats

  • Key rotation can still be handled through media playlist signaling

  • PSSH and TENC boxes remain unaffected

  • Default behavior is preserved when this setting is disabled

Valid values: true | false

Default: false

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "SpekeKeyProvider": { "$ref": "#/definitions/SpekeKeyProvider" @@ -221,8 +431,8 @@ "items": { "$ref": "#/definitions/EndpointErrorCondition" }, - "description": "

The failover conditions for the endpoint. The options are:

\n
    \n
  • \n

    \n STALE_MANIFEST - The manifest stalled and there are no new segments or parts.

    \n
  • \n
  • \n

    \n INCOMPLETE_MANIFEST - There is a gap in the manifest.

    \n
  • \n
  • \n

    \n MISSING_DRM_KEY - Key rotation is enabled but we're unable to fetch the key for the current key period.

    \n
  • \n
  • \n

    \n SLATE_INPUT - The segments which contain slate content are considered to be missing content.

    \n
  • \n
", - "markdownDescription": "

The failover conditions for the endpoint. The options are:

\n
    \n
  • \n

    \n STALE_MANIFEST - The manifest stalled and there are no new segments or parts.

    \n
  • \n
  • \n

    \n INCOMPLETE_MANIFEST - There is a gap in the manifest.

    \n
  • \n
  • \n

    \n MISSING_DRM_KEY - Key rotation is enabled but we're unable to fetch the key for the current key period.

    \n
  • \n
  • \n

    \n SLATE_INPUT - The segments which contain slate content are considered to be missing content.

    \n
  • \n
\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "description": "

The failover conditions for the endpoint. The options are:

  • STALE_MANIFEST - The manifest stalled and there are no new segments or parts.

  • INCOMPLETE_MANIFEST - There is a gap in the manifest.

  • MISSING_DRM_KEY - Key rotation is enabled but we're unable to fetch the key for the current key period.

  • SLATE_INPUT - The segments which contain slate content are considered to be missing content.

", + "markdownDescription": "

The failover conditions for the endpoint. The options are:

  • STALE_MANIFEST - The manifest stalled and there are no new segments or parts.

  • INCOMPLETE_MANIFEST - There is a gap in the manifest.

  • MISSING_DRM_KEY - Key rotation is enabled but we're unable to fetch the key for the current key period.

  • SLATE_INPUT - The segments which contain slate content are considered to be missing content.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "additionalProperties": false, @@ -272,8 +482,8 @@ }, "maxItems": 100, "minItems": 0, - "description": "

A list of triggers that controls when AWS Elemental MediaPackage separates the MPEG-DASH manifest into multiple periods. Leave this value empty to indicate that the manifest is contained all in one period.\n For more information about periods in the DASH manifest, see Multi-period DASH in AWS Elemental MediaPackage.

", - "markdownDescription": "

A list of triggers that controls when AWS Elemental MediaPackage separates the MPEG-DASH manifest into multiple periods. Leave this value empty to indicate that the manifest is contained all in one period.\n For more information about periods in the DASH manifest, see Multi-period DASH in AWS Elemental MediaPackage.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "description": "

A list of triggers that controls when AWS Elemental MediaPackage separates the MPEG-DASH manifest into multiple periods. Leave this value empty to indicate that the manifest is contained all in one period. For more information about periods in the DASH manifest, see Multi-period DASH in AWS Elemental MediaPackage.

", + "markdownDescription": "

A list of triggers that controls when AWS Elemental MediaPackage separates the MPEG-DASH manifest into multiple periods. Leave this value empty to indicate that the manifest is contained all in one period. For more information about periods in the DASH manifest, see Multi-period DASH in AWS Elemental MediaPackage.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "ScteDash": { "$ref": "#/definitions/ScteDash" @@ -283,6 +493,38 @@ }, "UtcTiming": { "$ref": "#/definitions/DashUtcTiming" + }, + "Profiles": { + "type": "array", + "items": { + "$ref": "#/definitions/DashProfile" + }, + "maxItems": 5, + "minItems": 0, + "description": "

The profile that the output is compliant with.

", + "markdownDescription": "

The profile that the output is compliant with.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "BaseUrls": { + "type": "array", + "items": { + "$ref": "#/definitions/DashBaseUrl" + }, + "maxItems": 20, + "minItems": 0, + "description": "

The base URL to use for retrieving segments.

", + "markdownDescription": "

The base URL to use for retrieving segments.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ProgramInformation": { + "$ref": "#/definitions/DashProgramInformation" + }, + "DvbSettings": { + "$ref": "#/definitions/DashDvbSettings" + }, + "Compactness": { + "$ref": "#/definitions/DashCompactness" + }, + "SubtitleConfiguration": { + "$ref": "#/definitions/DashSubtitleConfiguration" } }, "required": [ @@ -321,8 +563,8 @@ }, "ProgramDateTimeIntervalSeconds": { "type": "integer", - "description": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval,\n EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest.\n The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

\n

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

", - "markdownDescription": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval,\n EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest.\n The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

\n

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "description": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval, EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest. The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

", + "markdownDescription": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval, EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest. The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "ScteHls": { "$ref": "#/definitions/ScteHls" @@ -335,8 +577,8 @@ }, "UrlEncodeChildManifest": { "type": "boolean", - "description": "

When enabled, MediaPackage URL-encodes the query string for API requests for HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol.\n For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

", - "markdownDescription": "

When enabled, MediaPackage URL-encodes the query string for API requests for HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol.\n For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "description": "

When enabled, MediaPackage URL-encodes the query string for API requests for HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol. For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

", + "markdownDescription": "

When enabled, MediaPackage URL-encodes the query string for API requests for HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol. For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "required": [ @@ -375,8 +617,8 @@ }, "ProgramDateTimeIntervalSeconds": { "type": "integer", - "description": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval,\n EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest.\n The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

\n

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

", - "markdownDescription": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval,\n EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest.\n The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

\n

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "description": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval, EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest. The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

", + "markdownDescription": "

Inserts EXT-X-PROGRAM-DATE-TIME tags in the output manifest at the interval that you specify. If you don't enter an interval, EXT-X-PROGRAM-DATE-TIME tags aren't included in the manifest. The tags sync the stream to the wall clock so that viewers can seek to a specific time in the playback timeline on the player.

Irrespective of this parameter, if any ID3Timed metadata is in the HLS input, it is passed through to the HLS output.

\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "ScteHls": { "$ref": "#/definitions/ScteHls" @@ -389,8 +631,8 @@ }, "UrlEncodeChildManifest": { "type": "boolean", - "description": "

When enabled, MediaPackage URL-encodes the query string for API requests for LL-HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol.\n For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

", - "markdownDescription": "

When enabled, MediaPackage URL-encodes the query string for API requests for LL-HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol.\n For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "description": "

When enabled, MediaPackage URL-encodes the query string for API requests for LL-HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol. For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

", + "markdownDescription": "

When enabled, MediaPackage URL-encodes the query string for API requests for LL-HLS child manifests to comply with Amazon Web Services Signature Version 4 (SigV4) signature signing protocol. For more information, see Amazon Web Services Signature Version 4 for API requests in Identity and Access Management User Guide.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "required": [ @@ -535,8 +777,8 @@ "type": "string", "maxLength": 256, "minLength": 1, - "description": "

The unique identifier for the content. The service sends this to the key server to identify the current endpoint. How unique you make this depends on how fine-grained you want access controls to be. The service does not permit you to use the same ID for two simultaneous encryption processes. The resource ID is also known as the content ID.

\n

The following example shows a resource ID: MovieNight20171126093045\n

", - "markdownDescription": "

The unique identifier for the content. The service sends this to the key server to identify the current endpoint. How unique you make this depends on how fine-grained you want access controls to be. The service does not permit you to use the same ID for two simultaneous encryption processes. The resource ID is also known as the content ID.

\n

The following example shows a resource ID: MovieNight20171126093045\n

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[0-9a-zA-Z_-]+$ \nUpdate requires: No interruption\n" + "description": "

The unique identifier for the content. The service sends this to the key server to identify the current endpoint. How unique you make this depends on how fine-grained you want access controls to be. The service does not permit you to use the same ID for two simultaneous encryption processes. The resource ID is also known as the content ID.

The following example shows a resource ID: MovieNight20171126093045

", + "markdownDescription": "

The unique identifier for the content. The service sends this to the key server to identify the current endpoint. How unique you make this depends on how fine-grained you want access controls to be. The service does not permit you to use the same ID for two simultaneous encryption processes. The resource ID is also known as the content ID.

The following example shows a resource ID: MovieNight20171126093045

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[0-9a-zA-Z_-]+$ \nUpdate requires: No interruption\n" }, "DrmSystems": { "type": "array", @@ -552,15 +794,15 @@ "type": "string", "maxLength": 2048, "minLength": 1, - "description": "

The ARN for the IAM role granted by the key provider that provides access to the key provider API. This role must have a trust policy that allows MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. Get this from your DRM solution provider.

\n

Valid format: arn:aws:iam::{accountID}:role/{name}. The following example shows a role ARN: arn:aws:iam::444455556666:role/SpekeAccess\n

", - "markdownDescription": "

The ARN for the IAM role granted by the key provider that provides access to the key provider API. This role must have a trust policy that allows MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. Get this from your DRM solution provider.

\n

Valid format: arn:aws:iam::{accountID}:role/{name}. The following example shows a role ARN: arn:aws:iam::444455556666:role/SpekeAccess\n

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "description": "

The ARN for the IAM role granted by the key provider that provides access to the key provider API. This role must have a trust policy that allows MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. Get this from your DRM solution provider.

Valid format: arn:aws:iam::{accountID}:role/{name}. The following example shows a role ARN: arn:aws:iam::444455556666:role/SpekeAccess

", + "markdownDescription": "

The ARN for the IAM role granted by the key provider that provides access to the key provider API. This role must have a trust policy that allows MediaPackage to assume the role, and it must have a sufficient permissions policy to allow access to the specific key retrieval URL. Get this from your DRM solution provider.

Valid format: arn:aws:iam::{accountID}:role/{name}. The following example shows a role ARN: arn:aws:iam::444455556666:role/SpekeAccess

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, "Url": { "type": "string", "maxLength": 1024, "minLength": 1, - "description": "

The URL of the API Gateway proxy that you set up to talk to your key server. The API Gateway proxy must reside in the same AWS Region as MediaPackage and must start with https://.

\n

The following example shows a URL: https://1wm2dx1f33.execute-api.us-west-2.amazonaws.com/SpekeSample/copyProtection\n

", - "markdownDescription": "

The URL of the API Gateway proxy that you set up to talk to your key server. The API Gateway proxy must reside in the same AWS Region as MediaPackage and must start with https://.

\n

The following example shows a URL: https://1wm2dx1f33.execute-api.us-west-2.amazonaws.com/SpekeSample/copyProtection\n

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + "description": "

The URL of the API Gateway proxy that you set up to talk to your key server. The API Gateway proxy must reside in the same AWS Region as MediaPackage and must start with https://.

The following example shows a URL: https://1wm2dx1f33.execute-api.us-west-2.amazonaws.com/SpekeSample/copyProtection

", + "markdownDescription": "

The URL of the API Gateway proxy that you set up to talk to your key server. The API Gateway proxy must reside in the same AWS Region as MediaPackage and must start with https://.

The following example shows a URL: https://1wm2dx1f33.execute-api.us-west-2.amazonaws.com/SpekeSample/copyProtection

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" } }, "required": [ diff --git a/server/schema/resources/aws-mediapackagev2-originendpointpolicy.json b/server/schema/resources/aws-mediapackagev2-originendpointpolicy.json index 66b641f7..3cda6cf3 100644 --- a/server/schema/resources/aws-mediapackagev2-originendpointpolicy.json +++ b/server/schema/resources/aws-mediapackagev2-originendpointpolicy.json @@ -1,7 +1,41 @@ { "typeName": "AWS::MediaPackageV2::OriginEndpointPolicy", "description": "

Represents a resource policy that allows or denies access to an origin endpoint.

", + "definitions": { + "CdnAuthConfiguration": { + "type": "object", + "properties": { + "CdnIdentifierSecretArns": { + "type": "array", + "items": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "maxItems": 100, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "SecretsRoleArn": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "CdnIdentifierSecretArns", + "SecretsRoleArn" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, "properties": { + "CdnAuthConfiguration": { + "$ref": "#/definitions/CdnAuthConfiguration" + }, "ChannelGroupName": { "type": "string", "maxLength": 256, @@ -48,7 +82,8 @@ "create": { "permissions": [ "mediapackagev2:GetOriginEndpointPolicy", - "mediapackagev2:PutOriginEndpointPolicy" + "mediapackagev2:PutOriginEndpointPolicy", + "iam:PassRole" ] }, "read": { @@ -59,7 +94,8 @@ "update": { "permissions": [ "mediapackagev2:GetOriginEndpointPolicy", - "mediapackagev2:PutOriginEndpointPolicy" + "mediapackagev2:PutOriginEndpointPolicy", + "iam:PassRole" ] }, "delete": { diff --git a/server/schema/resources/aws-mediatailor-playbackconfiguration.json b/server/schema/resources/aws-mediatailor-playbackconfiguration.json index f14a016a..abbf4e49 100644 --- a/server/schema/resources/aws-mediatailor-playbackconfiguration.json +++ b/server/schema/resources/aws-mediatailor-playbackconfiguration.json @@ -36,6 +36,11 @@ "$ref": "#/definitions/DashConfiguration", "markdownDescription": "The configuration for DASH content.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" }, + "InsertionMode": { + "description": "The setting that controls whether players can use stitched or guided ad insertion. The default, STITCHED_ONLY, forces all player sessions to use stitched (server-side) ad insertion. Choosing PLAYER_SELECT allows players to select either stitched or guided ad insertion at session-initialization time. The default for players that do not specify an insertion mode is stitched.", + "$ref": "#/definitions/InsertionMode", + "markdownDescription": "The setting that controls whether players can use stitched or guided ad insertion. The default, STITCHED_ONLY, forces all player sessions to use stitched (server-side) ad insertion. Choosing PLAYER_SELECT allows players to select either stitched or guided ad insertion at session-initialization time. The default for players that do not specify an insertion mode is stitched.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, "LivePreRollConfiguration": { "description": "The configuration for pre-roll ad insertion.", "$ref": "#/definitions/LivePreRollConfiguration", @@ -68,6 +73,11 @@ "$ref": "#/definitions/HlsConfiguration", "markdownDescription": "The configuration for HLS content.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" }, + "LogConfiguration": { + "description": "The configuration that defines where AWS Elemental MediaTailor sends logs for the playback configuration.", + "$ref": "#/definitions/LogConfiguration", + "markdownDescription": "The configuration that defines where AWS Elemental MediaTailor sends logs for the playback configuration.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, "PlaybackConfigurationArn": { "description": "The Amazon Resource Name (ARN) for the playback configuration.", "type": "string", @@ -233,6 +243,14 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: TRANSCODE | NONE \nUpdate requires: No interruption\n" }, + "InsertionMode": { + "type": "string", + "enum": [ + "STITCHED_ONLY", + "PLAYER_SELECT" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: STITCHED_ONLY | PLAYER_SELECT \nUpdate requires: No interruption\n" + }, "LivePreRollConfiguration": { "description": "The configuration for pre-roll ad insertion.", "type": "object", @@ -307,6 +325,83 @@ } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "LogConfiguration": { + "type": "object", + "additionalProperties": false, + "properties": { + "AdsInteractionLog": { + "description": "The event types that MediaTailor emits in logs for interactions with the ADS.", + "$ref": "#/definitions/AdsInteractionLog", + "markdownDescription": "The event types that MediaTailor emits in logs for interactions with the ADS.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "EnabledLoggingStrategies": { + "description": "The method used for collecting logs from AWS Elemental MediaTailor. To configure MediaTailor to send logs directly to Amazon CloudWatch Logs, choose LEGACY_CLOUDWATCH. To configure MediaTailor to send logs to CloudWatch, which then vends the logs to your destination of choice, choose VENDED_LOGS. Supported destinations are CloudWatch Logs log group, Amazon S3 bucket, and Amazon Data Firehose stream. To use vended logs, you must configure the delivery destination in Amazon CloudWatch", + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The method used for collecting logs from AWS Elemental MediaTailor. To configure MediaTailor to send logs directly to Amazon CloudWatch Logs, choose LEGACY_CLOUDWATCH. To configure MediaTailor to send logs to CloudWatch, which then vends the logs to your destination of choice, choose VENDED_LOGS. Supported destinations are CloudWatch Logs log group, Amazon S3 bucket, and Amazon Data Firehose stream. To use vended logs, you must configure the delivery destination in Amazon CloudWatch\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ManifestServiceInteractionLog": { + "description": "The event types that MediaTailor emits in logs for interactions with the origin server.", + "$ref": "#/definitions/ManifestServiceInteractionLog", + "markdownDescription": "The event types that MediaTailor emits in logs for interactions with the origin server.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "PercentEnabled": { + "description": "The percentage of session logs that MediaTailor sends to your CloudWatch Logs account. For example, if your playback configuration has 1000 sessions and percentEnabled is set to 60, MediaTailor sends logs for 600 of the sessions to CloudWatch Logs. MediaTailor decides at random which of the playback configuration sessions to send logs for. If you want to view logs for a specific session, you can use the debug log mode.", + "type": "integer", + "minimum": 0, + "maximum": 100, + "markdownDescription": "The percentage of session logs that MediaTailor sends to your CloudWatch Logs account. For example, if your playback configuration has 1000 sessions and percentEnabled is set to 60, MediaTailor sends logs for 600 of the sessions to CloudWatch Logs. MediaTailor decides at random which of the playback configuration sessions to send logs for. If you want to view logs for a specific session, you can use the debug log mode.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "PercentEnabled" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AdsInteractionLog": { + "type": "object", + "additionalProperties": false, + "properties": { + "ExcludeEventTypes": { + "type": "array", + "description": "Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration.", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "PublishOptInEventTypes": { + "type": "array", + "description": "Indicates that MediaTailor emits RAW_ADS_RESPONSE logs for playback sessions that are initialized with this configuration.", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "Indicates that MediaTailor emits RAW_ADS_RESPONSE logs for playback sessions that are initialized with this configuration.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ManifestServiceInteractionLog": { + "type": "object", + "additionalProperties": false, + "properties": { + "ExcludeEventTypes": { + "type": "array", + "description": "Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration.", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "tagging": { diff --git a/server/schema/resources/aws-mpa-approvalteam.json b/server/schema/resources/aws-mpa-approvalteam.json new file mode 100644 index 00000000..b4901d2f --- /dev/null +++ b/server/schema/resources/aws-mpa-approvalteam.json @@ -0,0 +1,301 @@ +{ + "typeName": "AWS::MPA::ApprovalTeam", + "description": "Resource Type definition for AWS::MPA::ApprovalTeam.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "definitions": { + "Timestamp": { + "type": "string", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "MofNApprovalStrategy": { + "type": "object", + "properties": { + "MinApprovalsRequired": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "MinApprovalsRequired" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ApprovalStrategy": { + "type": "object", + "properties": { + "MofN": { + "$ref": "#/definitions/MofNApprovalStrategy" + } + }, + "additionalProperties": false, + "required": [ + "MofN" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Approver": { + "type": "object", + "properties": { + "PrimaryIdentityId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "PrimaryIdentitySourceArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "ApproverId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ResponseTime": { + "$ref": "#/definitions/Timestamp" + }, + "PrimaryIdentityStatus": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "PrimaryIdentityId", + "PrimaryIdentitySourceArn" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Policy": { + "properties": { + "PolicyArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "PolicyArn" + ] + }, + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "type": "string", + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Value": { + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "type": "string", + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Key" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "properties": { + "ApprovalStrategy": { + "$ref": "#/definitions/ApprovalStrategy" + }, + "Approvers": { + "type": "array", + "items": { + "$ref": "#/definitions/Approver" + }, + "minItems": 1, + "insertionOrder": false, + "uniqueItems": true, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Tags": { + "$ref": "#/definitions/Tags" + }, + "Policies": { + "type": "array", + "items": { + "$ref": "#/definitions/Policy" + }, + "minItems": 1, + "insertionOrder": false, + "uniqueItems": true, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: Replacement\n" + }, + "Name": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + }, + "Description": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "VersionId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "UpdateSessionArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "$ref": "#/definitions/Timestamp" + }, + "LastUpdateTime": { + "$ref": "#/definitions/Timestamp" + }, + "NumberOfApprovers": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Status": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusCode": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusMessage": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "additionalProperties": false, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "mpa:TagResource", + "mpa:ListTagsForResource", + "mpa:UntagResource" + ] + }, + "required": [ + "ApprovalStrategy", + "Approvers", + "Policies", + "Name", + "Description" + ], + "primaryIdentifier": [ + "/properties/Arn" + ], + "readOnlyProperties": [ + "/properties/Arn", + "/properties/VersionId", + "/properties/NumberOfApprovers", + "/properties/Approvers/*/ApproverId", + "/properties/Approvers/*/ResponseTime", + "/properties/Approvers/*/PrimaryIdentityStatus", + "/properties/UpdateSessionArn", + "/properties/CreationTime", + "/properties/LastUpdateTime", + "/properties/Status", + "/properties/StatusCode", + "/properties/StatusMessage" + ], + "createOnlyProperties": [ + "/properties/Name", + "/properties/Policies", + "/properties/Policies/*/PolicyArn" + ], + "handlers": { + "create": { + "permissions": [ + "mpa:CreateApprovalTeam", + "mpa:TagResource", + "mpa:GetApprovalTeam", + "mpa:ListTagsForResource" + ], + "timeoutInMinutes": 2160 + }, + "read": { + "permissions": [ + "mpa:GetApprovalTeam", + "mpa:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "mpa:GetApprovalTeam", + "mpa:UpdateApprovalTeam", + "mpa:TagResource", + "mpa:ListTagsForResource", + "mpa:UntagResource" + ], + "timeoutInMinutes": 2160 + }, + "delete": { + "permissions": [ + "mpa:StartActiveApprovalTeamDeletion", + "mpa:DeleteInactiveApprovalTeamVersion", + "mpa:GetApprovalTeam", + "mpa:UntagResource" + ], + "timeoutInMinutes": 2160 + }, + "list": { + "permissions": [ + "mpa:ListApprovalTeams", + "mpa:ListTagsForResource" + ] + } + }, + "attributes": { + "Arn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "VersionId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "UpdateSessionArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "$ref": "#/definitions/Timestamp" + }, + "LastUpdateTime": { + "$ref": "#/definitions/Timestamp" + }, + "NumberOfApprovers": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Status": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusCode": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusMessage": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-mpa-identitysource.json b/server/schema/resources/aws-mpa-identitysource.json new file mode 100644 index 00000000..529c2c04 --- /dev/null +++ b/server/schema/resources/aws-mpa-identitysource.json @@ -0,0 +1,216 @@ +{ + "typeName": "AWS::MPA::IdentitySource", + "description": "Resource Type definition for AWS::MPA::IdentitySource.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "definitions": { + "IdentitySourceArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "IamIdentityCenter": { + "type": "object", + "properties": { + "InstanceArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:.+:sso:::instance/(?:sso)?ins-[a-zA-Z0-9-.]{16}$ \nUpdate requires: No interruption\n" + }, + "Region": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "ApprovalPortalUrl": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "InstanceArn", + "Region" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "IdentitySourceParameters": { + "type": "object", + "properties": { + "IamIdentityCenter": { + "$ref": "#/definitions/IamIdentityCenter" + } + }, + "additionalProperties": false, + "required": [ + "IamIdentityCenter" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\nRead only property: Yes" + }, + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "type": "string", + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Value": { + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "type": "string", + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Key" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "properties": { + "IdentitySourceArn": { + "$ref": "#/definitions/IdentitySourceArn" + }, + "IdentitySourceParameters": { + "$ref": "#/definitions/IdentitySourceParameters" + }, + "Tags": { + "$ref": "#/definitions/Tags" + }, + "IdentitySourceType": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "type": "string", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Status": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusCode": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusMessage": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "additionalProperties": false, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "mpa:TagResource", + "mpa:ListTagsForResource", + "mpa:UntagResource" + ] + }, + "required": [ + "IdentitySourceParameters" + ], + "primaryIdentifier": [ + "/properties/IdentitySourceArn" + ], + "readOnlyProperties": [ + "/properties/IdentitySourceArn", + "/properties/IdentitySourceType", + "/properties/IdentitySourceParameters/IamIdentityCenter/ApprovalPortalUrl", + "/properties/CreationTime", + "/properties/Status", + "/properties/StatusCode", + "/properties/StatusMessage" + ], + "createOnlyProperties": [ + "/properties/IdentitySourceParameters", + "/properties/IdentitySourceParameters/IamIdentityCenter", + "/properties/IdentitySourceParameters/IamIdentityCenter/InstanceArn", + "/properties/IdentitySourceParameters/IamIdentityCenter/Region" + ], + "handlers": { + "create": { + "permissions": [ + "mpa:CreateIdentitySource", + "mpa:TagResource", + "mpa:ListTagsForResource", + "mpa:GetIdentitySource", + "sso:DescribeApplication", + "sso:DescribeInstance", + "sso:CreateApplication", + "sso:PutApplicationAssignmentConfiguration", + "sso:PutApplicationGrant", + "sso:PutApplicationAuthenticationMethod", + "sso:PutApplicationAccessScope", + "kms:Decrypt" + ] + }, + "read": { + "permissions": [ + "mpa:GetIdentitySource", + "mpa:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "mpa:GetIdentitySource", + "mpa:TagResource", + "mpa:ListTagsForResource", + "mpa:UntagResource" + ] + }, + "delete": { + "permissions": [ + "mpa:DeleteIdentitySource", + "mpa:GetIdentitySource", + "mpa:UntagResource", + "sso:DeleteApplication", + "kms:Decrypt" + ] + }, + "list": { + "permissions": [ + "mpa:ListIdentitySources", + "mpa:ListTagsForResource" + ] + } + }, + "attributes": { + "IdentitySourceArn": { + "$ref": "#/definitions/IdentitySourceArn" + }, + "IdentitySourceType": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "type": "string", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Status": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusCode": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusMessage": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-mwaa-environment.json b/server/schema/resources/aws-mwaa-environment.json index d367f6a5..cb79c44b 100644 --- a/server/schema/resources/aws-mwaa-environment.json +++ b/server/schema/resources/aws-mwaa-environment.json @@ -323,6 +323,9 @@ }, "Error": { "$ref": "#/definitions/UpdateError" + }, + "WorkerReplacementStrategy": { + "$ref": "#/definitions/WorkerReplacementStrategy" } }, "markdownDescription": "Details about the last update performed on the environment.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -386,6 +389,15 @@ "description": "The webserver VPC endpoint service name, applicable if private webserver access mode selected.", "maxLength": 1224, "markdownDescription": "The webserver VPC endpoint service name, applicable if private webserver access mode selected.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1224 \nUpdate requires: No interruption\n" + }, + "WorkerReplacementStrategy": { + "type": "string", + "description": "The worker replacement strategy to use when updating the environment. Valid values: `FORCED`, `GRACEFUL`. FORCED means Apache Airflow workers will be stopped and replaced without waiting for tasks to complete before an update. GRACEFUL means Apache Airflow workers will be able to complete running tasks for up to 12 hours during an update before being stopped and replaced.", + "enum": [ + "FORCED", + "GRACEFUL" + ], + "markdownDescription": "The worker replacement strategy to use when updating the environment. Valid values: `FORCED`, `GRACEFUL`. FORCED means Apache Airflow workers will be stopped and replaced without waiting for tasks to complete before an update. GRACEFUL means Apache Airflow workers will be able to complete running tasks for up to 12 hours during an update before being stopped and replaced.\n\n---\n\nRequired: No \nType: String \nAllowed Values: FORCED | GRACEFUL \nUpdate requires: No interruption\n" } }, "properties": { @@ -482,6 +494,9 @@ }, "WebserverVpcEndpointService": { "$ref": "#/definitions/WebserverVpcEndpointService" + }, + "WorkerReplacementStrategy": { + "$ref": "#/definitions/WorkerReplacementStrategy" } }, "additionalProperties": false, @@ -506,6 +521,9 @@ "/properties/LoggingConfiguration/WorkerLogs/CloudWatchLogGroupArn", "/properties/LoggingConfiguration/TaskLogs/CloudWatchLogGroupArn" ], + "writeOnlyProperties": [ + "/properties/WorkerReplacementStrategy" + ], "primaryIdentifier": [ "/properties/Name" ], @@ -568,7 +586,7 @@ "kms:DescribeKey", "kms:ListAliases" ], - "timeoutInMinutes": 480 + "timeoutInMinutes": 900 }, "delete": { "permissions": [ diff --git a/server/schema/resources/aws-neptune-dbinstance.json b/server/schema/resources/aws-neptune-dbinstance.json index d403932a..4be24390 100644 --- a/server/schema/resources/aws-neptune-dbinstance.json +++ b/server/schema/resources/aws-neptune-dbinstance.json @@ -1,120 +1,227 @@ { "typeName": "AWS::Neptune::DBInstance", - "description": "Resource Type definition for AWS::Neptune::DBInstance", - "additionalProperties": false, + "description": "The AWS::Neptune::DBInstance resource creates an Amazon Neptune DB instance.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. \n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, "properties": { - "Id": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "AllowMajorVersionUpgrade": { + "type": "boolean", + "description": "Indicates that major version upgrades are allowed. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.", + "markdownDescription": "Indicates that major version upgrades are allowed. Changing this parameter doesn't result in an outage and the change is asynchronously applied as soon as possible. This parameter must be set to true when specifying a value for the EngineVersion parameter that is a different major version than the DB instance's current version.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "Endpoint": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "AutoMinorVersionUpgrade": { + "type": "boolean", + "description": "Indicates that minor version patches are applied automatically.\n\nWhen updating this property, some interruptions may occur.", + "markdownDescription": "Indicates that minor version patches are applied automatically.\n\nWhen updating this property, some interruptions may occur.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Some interruptions\n" }, - "Port": { + "AvailabilityZone": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "description": "Specifies the name of the Availability Zone the DB instance is located in.", + "markdownDescription": "Specifies the name of the Availability Zone the DB instance is located in.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, - "DBParameterGroupName": { + "DBClusterIdentifier": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "description": "If the DB instance is a member of a DB cluster, contains the name of the DB cluster that the DB instance is a member of.", + "markdownDescription": "If the DB instance is a member of a DB cluster, contains the name of the DB cluster that the DB instance is a member of.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "DBInstanceClass": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "description": "Contains the name of the compute and memory capacity class of the DB instance.\n\nIf you update this property, some interruptions may occur.", + "markdownDescription": "Contains the name of the compute and memory capacity class of the DB instance.\n\nIf you update this property, some interruptions may occur.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, - "AllowMajorVersionUpgrade": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "DBClusterIdentifier": { + "DBInstanceIdentifier": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "Contains a user-supplied database identifier. This identifier is the unique key that identifies a DB instance.", + "markdownDescription": "Contains a user-supplied database identifier. This identifier is the unique key that identifies a DB instance.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, - "AvailabilityZone": { + "DBParameterGroupName": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "The name of an existing DB parameter group or a reference to an AWS::Neptune::DBParameterGroup resource created in the template. If any of the data members of the referenced parameter group are changed during an update, the DB instance might need to be restarted, which causes some interruption. If the parameter group contains static parameters, whether they were changed or not, an update triggers a reboot.", + "markdownDescription": "The name of an existing DB parameter group or a reference to an AWS::Neptune::DBParameterGroup resource created in the template. If any of the data members of the referenced parameter group are changed during an update, the DB instance might need to be restarted, which causes some interruption. If the parameter group contains static parameters, whether they were changed or not, an update triggers a reboot.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Some interruptions\n" }, - "PreferredMaintenanceWindow": { + "DBSnapshotIdentifier": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "AutoMinorVersionUpgrade": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "description": "This parameter is not supported.\n\n`AWS::Neptune::DBInstance` does not support restoring from snapshots.\n\n`AWS::Neptune::DBCluster` does support restoring from snapshots.\n\n", + "markdownDescription": "This parameter is not supported.\n\n`AWS::Neptune::DBInstance` does not support restoring from snapshots.\n\n`AWS::Neptune::DBCluster` does support restoring from snapshots.\n\n\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "DBSubnetGroupName": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "A DB subnet group to associate with the DB instance. If you update this value, the new subnet group must be a subnet group in a new virtual private cloud (VPC).", + "markdownDescription": "A DB subnet group to associate with the DB instance. If you update this value, the new subnet group must be a subnet group in a new virtual private cloud (VPC).\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, - "DBInstanceIdentifier": { + "Endpoint": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "The connection endpoint for the database. For example: `mystack-mydb-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com`.", + "markdownDescription": "The connection endpoint for the database. For example: `mystack-mydb-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com`.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, - "DBSnapshotIdentifier": { + "PreferredMaintenanceWindow": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).", + "markdownDescription": "Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).\n\n---\n\nRequired: No \nType: String \nUpdate requires: Some interruptions\n" + }, + "Port": { + "type": "string", + "description": "The port number on which the database accepts connections. For example: `8182`.", + "markdownDescription": "The port number on which the database accepts connections. For example: `8182`.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "Tags": { "type": "array", - "uniqueItems": false, + "insertionOrder": false, + "uniqueItems": true, "items": { "$ref": "#/definitions/Tag" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - } - }, - "definitions": { - "Tag": { - "type": "object", - "additionalProperties": false, - "properties": { - "Key": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, - "Value": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Value", - "Key" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "description": "An arbitrary set of tags (key-value pairs) for this DB instance.", + "markdownDescription": "An arbitrary set of tags (key-value pairs) for this DB instance.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, + "additionalProperties": false, "required": [ "DBInstanceClass" ], - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/Port", - "/properties/Id" + "deprecatedProperties": [ + "/properties/DBSnapshotIdentifier" ], + "propertyTransform": { + "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", + "/properties/DBInstanceIdentifier": "$lowercase(DBInstanceIdentifier)", + "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)", + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", + "/properties/DBSnapshotIdentifier": "$lowercase(DBSnapshotIdentifier)" + }, "createOnlyProperties": [ - "/properties/DBClusterIdentifier", "/properties/AvailabilityZone", + "/properties/DBClusterIdentifier", "/properties/DBInstanceIdentifier", - "/properties/DBSubnetGroupName", - "/properties/DBSnapshotIdentifier" + "/properties/DBSnapshotIdentifier", + "/properties/DBSubnetGroupName" + ], + "conditionalCreateOnlyProperties": [ + "/properties/AutoMinorVersionUpgrade", + "/properties/DBParameterGroupName", + "/properties/PreferredMaintenanceWindow" + ], + "writeOnlyProperties": [ + "/properties/DBSnapshotIdentifier", + "/properties/AllowMajorVersionUpgrade" + ], + "readOnlyProperties": [ + "/properties/Endpoint", + "/properties/Port" ], "primaryIdentifier": [ - "/properties/Id" + "/properties/DBInstanceIdentifier" ], - "attributes": { - "Id": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "rds:AddTagsToResource", + "rds:ListTagsForResource", + "rds:RemoveTagsFromResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "ec2:DescribeAccountAttributes", + "ec2:DescribeAvailabilityZones", + "ec2:DescribeInternetGateways", + "iam:GetRole", + "iam:ListRoles", + "iam:PassRole", + "rds:AddTagsToResource", + "rds:CreateDBInstance", + "rds:DescribeDBInstances", + "rds:DescribeEvents", + "rds:ListTagsForResource", + "rds:ModifyDBInstance", + "rds:RebootDBInstance", + "iam:CreateServiceLinkedRole" + ], + "timeoutInMinutes": 2160 + }, + "read": { + "permissions": [ + "ec2:DescribeAccountAttributes", + "ec2:DescribeAvailabilityZones", + "ec2:DescribeInternetGateways", + "rds:DescribeDBInstances", + "rds:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "ec2:DescribeAccountAttributes", + "ec2:DescribeAvailabilityZones", + "ec2:DescribeInternetGateways", + "iam:GetRole", + "iam:ListRoles", + "iam:PassRole", + "rds:AddTagsToResource", + "rds:DescribeDBClusters", + "rds:DescribeDBInstances", + "rds:DescribeDBParameterGroups", + "rds:DescribeEvents", + "rds:ListTagsForResource", + "rds:ModifyDBInstance", + "rds:RebootDBInstance", + "rds:RemoveTagsFromResource" + ], + "timeoutInMinutes": 2160 }, + "delete": { + "permissions": [ + "rds:AddTagsToResource", + "rds:CreateDBSnapshot", + "rds:DeleteDBInstance", + "rds:DescribeDBInstances" + ], + "timeoutInMinutes": 2160 + }, + "list": { + "permissions": [ + "rds:DescribeDBInstances", + "rds:ListTagsForResource" + ] + } + }, + "attributes": { "Endpoint": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "description": "The connection endpoint for the database. For example: `mystack-mydb-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com`.", + "markdownDescription": "The connection endpoint for the database. For example: `mystack-mydb-1apw1j4phylrk.cg034hpkmmjt.us-east-2.rds.amazonaws.com`.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "Port": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "description": "The port number on which the database accepts connections. For example: `8182`.", + "markdownDescription": "The port number on which the database accepts connections. For example: `8182`.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-networkfirewall-firewall.json b/server/schema/resources/aws-networkfirewall-firewall.json index 49d07976..0a06bab4 100644 --- a/server/schema/resources/aws-networkfirewall-firewall.json +++ b/server/schema/resources/aws-networkfirewall-firewall.json @@ -16,6 +16,21 @@ "type": "string", "markdownDescription": "An endpoint Id.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "AvailabilityZoneMapping": { + "type": "object", + "properties": { + "AvailabilityZone": { + "description": "A AvailabilityZone", + "type": "string", + "markdownDescription": "A AvailabilityZone\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "AvailabilityZone" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "SubnetMapping": { "type": "object", "properties": { @@ -92,17 +107,25 @@ "type": "string", "minLength": 1, "maxLength": 128, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^vpc-[0-9a-f]+$ \nUpdate requires: Replacement\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^vpc-[0-9a-f]+$ \nUpdate requires: Replacement\n" }, "SubnetMappings": { "type": "array", - "minItems": 1, "insertionOrder": false, "uniqueItems": true, "items": { "$ref": "#/definitions/SubnetMapping" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "AvailabilityZoneMappings": { + "type": "array", + "insertionOrder": false, + "uniqueItems": true, + "items": { + "$ref": "#/definitions/AvailabilityZoneMapping" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "DeleteProtection": { "type": "boolean", @@ -112,10 +135,19 @@ "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, + "AvailabilityZoneChangeProtection": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, "FirewallPolicyChangeProtection": { "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, + "TransitGatewayId": { + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nPattern: ^tgw-[0-9a-z]+$ \nUpdate requires: No interruption\n" + }, "Description": { "type": "string", "maxLength": 512, @@ -162,9 +194,7 @@ }, "required": [ "FirewallName", - "FirewallPolicyArn", - "VpcId", - "SubnetMappings" + "FirewallPolicyArn" ], "readOnlyProperties": [ "/properties/FirewallArn", @@ -191,6 +221,7 @@ "network-firewall:DescribeRuleGroup", "network-firewall:TagResource", "network-firewall:AssociateSubnets", + "network-firewall:AssociateAvailabilityZones", "network-firewall:AssociateFirewallPolicy", "network-firewall:DescribeFirewall" ] @@ -213,7 +244,10 @@ "network-firewall:TagResource", "network-firewall:UntagResource", "network-firewall:DescribeFirewall", - "network-firewall:UpdateFirewallAnalysisSettings" + "network-firewall:UpdateFirewallAnalysisSettings", + "network-firewall:DisassociateAvailabilityZones", + "network-firewall:AssociateAvailabilityZones", + "network-firewall:UpdateAvailabilityZoneChangeProtection" ] }, "delete": { diff --git a/server/schema/resources/aws-networkfirewall-firewallpolicy.json b/server/schema/resources/aws-networkfirewall-firewallpolicy.json index 2f46f0b9..28334ff4 100644 --- a/server/schema/resources/aws-networkfirewall-firewallpolicy.json +++ b/server/schema/resources/aws-networkfirewall-firewallpolicy.json @@ -204,6 +204,10 @@ }, "Override": { "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "DeepThreatInspection": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "required": [ diff --git a/server/schema/resources/aws-networkfirewall-loggingconfiguration.json b/server/schema/resources/aws-networkfirewall-loggingconfiguration.json index d948ddfc..0392f3a6 100644 --- a/server/schema/resources/aws-networkfirewall-loggingconfiguration.json +++ b/server/schema/resources/aws-networkfirewall-loggingconfiguration.json @@ -88,6 +88,10 @@ }, "LoggingConfiguration": { "$ref": "#/definitions/LoggingConfiguration" + }, + "EnableMonitoringDashboard": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "tagging": { diff --git a/server/schema/resources/aws-networkfirewall-rulegroup.json b/server/schema/resources/aws-networkfirewall-rulegroup.json index e87711e0..fe6886ca 100644 --- a/server/schema/resources/aws-networkfirewall-rulegroup.json +++ b/server/schema/resources/aws-networkfirewall-rulegroup.json @@ -220,6 +220,15 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: TLS_SNI | HTTP_HOST \nUpdate requires: No interruption\n" }, + "SummaryRuleOption": { + "type": "string", + "enum": [ + "SID", + "MSG", + "METADATA" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: SID | MSG | METADATA \nUpdate requires: No interruption\n" + }, "GeneratedRulesType": { "type": "string", "enum": [ @@ -700,6 +709,22 @@ "type": "integer", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: Replacement\n" }, + "SummaryConfiguration": { + "type": "object", + "properties": { + "RuleOptions": { + "type": "array", + "insertionOrder": true, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/SummaryRuleOption" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "Description": { "type": "string", "minLength": 1, @@ -753,7 +778,8 @@ "network-firewall:TagResource", "network-firewall:ListRuleGroups", "iam:CreateServiceLinkedRole", - "ec2:GetManagedPrefixListEntries" + "ec2:GetManagedPrefixListEntries", + "ec2:DescribeManagedPrefixLists" ] }, "read": { @@ -769,7 +795,8 @@ "network-firewall:TagResource", "network-firewall:UntagResource", "iam:CreateServiceLinkedRole", - "ec2:GetManagedPrefixListEntries" + "ec2:GetManagedPrefixListEntries", + "ec2:DescribeManagedPrefixLists" ] }, "delete": { diff --git a/server/schema/resources/aws-networkmanager-vpcattachment.json b/server/schema/resources/aws-networkmanager-vpcattachment.json index f19ea296..071c7579 100644 --- a/server/schema/resources/aws-networkmanager-vpcattachment.json +++ b/server/schema/resources/aws-networkmanager-vpcattachment.json @@ -125,6 +125,18 @@ "type": "boolean", "default": false, "markdownDescription": "Indicates whether to enable ApplianceModeSupport Support for Vpc Attachment. Valid Values: true | false\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "DnsSupport": { + "description": "Indicates whether to enable private DNS Support for Vpc Attachment. Valid Values: true | false", + "type": "boolean", + "default": true, + "markdownDescription": "Indicates whether to enable private DNS Support for Vpc Attachment. Valid Values: true | false\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "SecurityGroupReferencingSupport": { + "description": "Indicates whether to enable Security Group Referencing Support for Vpc Attachment. Valid Values: true | false", + "type": "boolean", + "default": true, + "markdownDescription": "Indicates whether to enable Security Group Referencing Support for Vpc Attachment. Valid Values: true | false\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-observabilityadmin-organizationtelemetryrule.json b/server/schema/resources/aws-observabilityadmin-organizationtelemetryrule.json new file mode 100644 index 00000000..a044d8bb --- /dev/null +++ b/server/schema/resources/aws-observabilityadmin-organizationtelemetryrule.json @@ -0,0 +1,259 @@ +{ + "typeName": "AWS::ObservabilityAdmin::OrganizationTelemetryRule", + "description": "The AWS::ObservabilityAdmin::OrganizationTelemetryRule resource defines a CloudWatch Observability Admin Organization Telemetry Rule.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "observabilityadmin:TagResource", + "observabilityadmin:UntagResource", + "observabilityadmin:ListTagsForResource" + ] + }, + "definitions": { + "ResourceType": { + "description": "Resource Type associated with the Organization Telemetry Rule", + "type": "string", + "enum": [ + "AWS::EC2::VPC" + ], + "markdownDescription": "Resource Type associated with the Organization Telemetry Rule\n\n---\n\nRequired: No \nType: String \nAllowed Values: AWS::EC2::VPC \nUpdate requires: No interruption\n" + }, + "TelemetryType": { + "description": "Telemetry Type associated with the Organization Telemetry Rule", + "type": "string", + "enum": [ + "Logs" + ], + "markdownDescription": "Telemetry Type associated with the Organization Telemetry Rule\n\n---\n\nRequired: No \nType: String \nAllowed Values: Logs \nUpdate requires: No interruption\n" + }, + "Scope": { + "description": "Selection Criteria on scope level for rule application", + "type": "string", + "markdownDescription": "Selection Criteria on scope level for rule application\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "SelectionCriteria": { + "description": "Selection Criteria on resource level for rule application", + "type": "string", + "markdownDescription": "Selection Criteria on resource level for rule application\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "DestinationType": { + "description": "Type of telemetry destination", + "type": "string", + "enum": [ + "cloud-watch-logs" + ], + "markdownDescription": "Type of telemetry destination\n\n---\n\nRequired: No \nType: String \nAllowed Values: cloud-watch-logs \nUpdate requires: No interruption\n" + }, + "DestinationPattern": { + "description": "Pattern for telemetry data destination", + "type": "string", + "markdownDescription": "Pattern for telemetry data destination\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RetentionInDays": { + "description": "Number of days to retain the telemetry data in the specified destination", + "type": "integer", + "markdownDescription": "Number of days to retain the telemetry data in the specified destination\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "VPCFlowLogParameters": { + "description": "Telemetry parameters for VPC Flow logs", + "type": "object", + "properties": { + "LogFormat": { + "description": "The fields to include in the flow log record. If you omit this parameter, the flow log is created using the default format.", + "type": "string", + "markdownDescription": "The fields to include in the flow log record. If you omit this parameter, the flow log is created using the default format.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TrafficType": { + "description": "The type of traffic captured for the flow log. Default is ALL", + "type": "string", + "markdownDescription": "The type of traffic captured for the flow log. Default is ALL\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "MaxAggregationInterval": { + "description": "The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record. Default is 600s.", + "type": "integer", + "markdownDescription": "The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record. Default is 600s.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [], + "additionalProperties": false, + "markdownDescription": "Telemetry parameters for VPC Flow logs\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TelemetryDestinationConfiguration": { + "description": "The destination configuration for telemetry data", + "type": "object", + "properties": { + "DestinationType": { + "$ref": "#/definitions/DestinationType" + }, + "DestinationPattern": { + "$ref": "#/definitions/DestinationPattern" + }, + "RetentionInDays": { + "$ref": "#/definitions/RetentionInDays" + }, + "VPCFlowLogParameters": { + "$ref": "#/definitions/VPCFlowLogParameters" + } + }, + "required": [], + "additionalProperties": false, + "markdownDescription": "The destination configuration for telemetry data\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TelemetryRule": { + "description": "The telemetry rule", + "type": "object", + "properties": { + "ResourceType": { + "$ref": "#/definitions/ResourceType" + }, + "TelemetryType": { + "$ref": "#/definitions/TelemetryType" + }, + "DestinationConfiguration": { + "$ref": "#/definitions/TelemetryDestinationConfiguration" + }, + "Scope": { + "$ref": "#/definitions/Scope" + }, + "SelectionCriteria": { + "$ref": "#/definitions/SelectionCriteria" + } + }, + "required": [ + "ResourceType", + "TelemetryType" + ], + "additionalProperties": false, + "markdownDescription": "The telemetry rule\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "description": "A key-value pair to associate with a resource", + "type": "object", + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "A key-value pair to associate with a resource\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "RuleName": { + "description": "The name of the organization telemetry rule", + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "The name of the organization telemetry rule\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: ^[0-9A-Za-z-]+$ \nUpdate requires: Replacement\n" + }, + "Rule": { + "$ref": "#/definitions/TelemetryRule" + }, + "RuleArn": { + "description": "The arn of the organization telemetry rule", + "type": "string", + "minLength": 1, + "maxLength": 1011, + "markdownDescription": "The arn of the organization telemetry rule\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1011 \nPattern: ^arn:aws([a-z0-9\\-]+)?:([a-zA-Z0-9\\-]+):([a-z0-9\\-]+)?:([0-9]{12})?:(.+)$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "RuleName", + "Rule" + ], + "createOnlyProperties": [ + "/properties/RuleName" + ], + "readOnlyProperties": [ + "/properties/RuleArn" + ], + "primaryIdentifier": [ + "/properties/RuleArn" + ], + "handlers": { + "create": { + "permissions": [ + "observabilityadmin:CreateTelemetryRuleForOrganization", + "observabilityadmin:GetTelemetryRuleForOrganization", + "observabilityadmin:TagResource", + "observabilityadmin:ListTagsForResource", + "observabilityadmin:GetTelemetryEvaluationStatusForOrganization", + "organizations:ListDelegatedAdministrators", + "iam:CreateServiceLinkedRole" + ] + }, + "read": { + "permissions": [ + "observabilityadmin:GetTelemetryRuleForOrganization", + "observabilityadmin:ListTagsForResource", + "observabilityadmin:GetTelemetryEvaluationStatusForOrganization", + "organizations:ListDelegatedAdministrators" + ] + }, + "update": { + "permissions": [ + "observabilityadmin:UpdateTelemetryRuleForOrganization", + "observabilityadmin:GetTelemetryRuleForOrganization", + "observabilityadmin:TagResource", + "observabilityadmin:UntagResource", + "observabilityadmin:ListTagsForResource", + "observabilityadmin:GetTelemetryEvaluationStatusForOrganization", + "organizations:ListDelegatedAdministrators" + ] + }, + "delete": { + "permissions": [ + "observabilityadmin:DeleteTelemetryRuleForOrganization", + "observabilityadmin:GetTelemetryEvaluationStatusForOrganization", + "organizations:ListDelegatedAdministrators" + ] + }, + "list": { + "permissions": [ + "observabilityadmin:ListTelemetryRulesForOrganization", + "observabilityadmin:GetTelemetryEvaluationStatusForOrganization", + "organizations:ListDelegatedAdministrators" + ] + } + }, + "attributes": { + "RuleArn": { + "description": "The arn of the organization telemetry rule", + "type": "string", + "minLength": 1, + "maxLength": 1011, + "markdownDescription": "The arn of the organization telemetry rule\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1011 \nPattern: ^arn:aws([a-z0-9\\-]+)?:([a-zA-Z0-9\\-]+):([a-z0-9\\-]+)?:([0-9]{12})?:(.+)$ \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-observabilityadmin-telemetryrule.json b/server/schema/resources/aws-observabilityadmin-telemetryrule.json new file mode 100644 index 00000000..22960a58 --- /dev/null +++ b/server/schema/resources/aws-observabilityadmin-telemetryrule.json @@ -0,0 +1,251 @@ +{ + "typeName": "AWS::ObservabilityAdmin::TelemetryRule", + "description": "The AWS::ObservabilityAdmin::TelemetryRule resource defines a CloudWatch Observability Admin Telemetry Rule.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "observabilityadmin:TagResource", + "observabilityadmin:UntagResource", + "observabilityadmin:ListTagsForResource" + ] + }, + "definitions": { + "ResourceType": { + "description": "Resource Type associated with the Telemetry Rule", + "type": "string", + "enum": [ + "AWS::EC2::VPC" + ], + "markdownDescription": "Resource Type associated with the Telemetry Rule\n\n---\n\nRequired: No \nType: String \nAllowed Values: AWS::EC2::VPC \nUpdate requires: No interruption\n" + }, + "TelemetryType": { + "description": "Telemetry Type associated with the Telemetry Rule", + "type": "string", + "enum": [ + "Logs" + ], + "markdownDescription": "Telemetry Type associated with the Telemetry Rule\n\n---\n\nRequired: No \nType: String \nAllowed Values: Logs \nUpdate requires: No interruption\n" + }, + "Scope": { + "description": "Selection Criteria on scope level for rule application", + "type": "string", + "markdownDescription": "Selection Criteria on scope level for rule application\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "SelectionCriteria": { + "description": "Selection Criteria on resource level for rule application", + "type": "string", + "markdownDescription": "Selection Criteria on resource level for rule application\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "DestinationType": { + "description": "Type of telemetry destination", + "type": "string", + "enum": [ + "cloud-watch-logs" + ], + "markdownDescription": "Type of telemetry destination\n\n---\n\nRequired: No \nType: String \nAllowed Values: cloud-watch-logs \nUpdate requires: No interruption\n" + }, + "DestinationPattern": { + "description": "Pattern for telemetry data destination", + "type": "string", + "markdownDescription": "Pattern for telemetry data destination\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RetentionInDays": { + "description": "Number of days to retain the telemetry data in the specified destination", + "type": "integer", + "markdownDescription": "Number of days to retain the telemetry data in the specified destination\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "VPCFlowLogParameters": { + "description": "Telemetry parameters for VPC Flow logs", + "type": "object", + "properties": { + "LogFormat": { + "description": "The fields to include in the flow log record. If you omit this parameter, the flow log is created using the default format.", + "type": "string", + "markdownDescription": "The fields to include in the flow log record. If you omit this parameter, the flow log is created using the default format.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TrafficType": { + "description": "The type of traffic captured for the flow log. Default is ALL", + "type": "string", + "markdownDescription": "The type of traffic captured for the flow log. Default is ALL\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "MaxAggregationInterval": { + "description": "The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record. Default is 600s.", + "type": "integer", + "markdownDescription": "The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record. Default is 600s.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [], + "additionalProperties": false, + "markdownDescription": "Telemetry parameters for VPC Flow logs\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TelemetryDestinationConfiguration": { + "description": "The destination configuration for telemetry data", + "type": "object", + "properties": { + "DestinationType": { + "$ref": "#/definitions/DestinationType" + }, + "DestinationPattern": { + "$ref": "#/definitions/DestinationPattern" + }, + "RetentionInDays": { + "$ref": "#/definitions/RetentionInDays" + }, + "VPCFlowLogParameters": { + "$ref": "#/definitions/VPCFlowLogParameters" + } + }, + "required": [], + "additionalProperties": false, + "markdownDescription": "The destination configuration for telemetry data\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TelemetryRule": { + "description": "The telemetry rule", + "type": "object", + "properties": { + "ResourceType": { + "$ref": "#/definitions/ResourceType" + }, + "TelemetryType": { + "$ref": "#/definitions/TelemetryType" + }, + "DestinationConfiguration": { + "$ref": "#/definitions/TelemetryDestinationConfiguration" + }, + "SelectionCriteria": { + "$ref": "#/definitions/SelectionCriteria" + } + }, + "required": [ + "ResourceType", + "TelemetryType" + ], + "additionalProperties": false, + "markdownDescription": "The telemetry rule\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "description": "A key-value pair to associate with a resource", + "type": "object", + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "A key-value pair to associate with a resource\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "RuleName": { + "description": "The name of the telemetry rule", + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "The name of the telemetry rule\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: ^[0-9A-Za-z-]+$ \nUpdate requires: Replacement\n" + }, + "Rule": { + "$ref": "#/definitions/TelemetryRule" + }, + "RuleArn": { + "description": "The arn of the telemetry rule", + "type": "string", + "minLength": 1, + "maxLength": 1011, + "markdownDescription": "The arn of the telemetry rule\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1011 \nPattern: ^arn:aws([a-z0-9\\-]+)?:([a-zA-Z0-9\\-]+):([a-z0-9\\-]+)?:([0-9]{12})?:(.+)$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "RuleName", + "Rule" + ], + "createOnlyProperties": [ + "/properties/RuleName" + ], + "readOnlyProperties": [ + "/properties/RuleArn" + ], + "primaryIdentifier": [ + "/properties/RuleArn" + ], + "handlers": { + "create": { + "permissions": [ + "observabilityadmin:CreateTelemetryRule", + "observabilityadmin:GetTelemetryRule", + "observabilityadmin:TagResource", + "observabilityadmin:ListTagsForResource", + "observabilityadmin:GetTelemetryEvaluationStatus", + "iam:CreateServiceLinkedRole" + ] + }, + "read": { + "permissions": [ + "observabilityadmin:GetTelemetryRule", + "observabilityadmin:ListTagsForResource", + "observabilityadmin:GetTelemetryEvaluationStatus" + ] + }, + "update": { + "permissions": [ + "observabilityadmin:UpdateTelemetryRule", + "observabilityadmin:GetTelemetryRule", + "observabilityadmin:TagResource", + "observabilityadmin:UntagResource", + "observabilityadmin:ListTagsForResource", + "observabilityadmin:GetTelemetryEvaluationStatus" + ] + }, + "delete": { + "permissions": [ + "observabilityadmin:DeleteTelemetryRule", + "observabilityadmin:GetTelemetryEvaluationStatus" + ] + }, + "list": { + "permissions": [ + "observabilityadmin:ListTelemetryRules", + "observabilityadmin:GetTelemetryEvaluationStatus" + ] + } + }, + "attributes": { + "RuleArn": { + "description": "The arn of the telemetry rule", + "type": "string", + "minLength": 1, + "maxLength": 1011, + "markdownDescription": "The arn of the telemetry rule\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1011 \nPattern: ^arn:aws([a-z0-9\\-]+)?:([a-zA-Z0-9\\-]+):([a-z0-9\\-]+)?:([0-9]{12})?:(.+)$ \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-odb-cloudautonomousvmcluster.json b/server/schema/resources/aws-odb-cloudautonomousvmcluster.json new file mode 100644 index 00000000..6be50faa --- /dev/null +++ b/server/schema/resources/aws-odb-cloudautonomousvmcluster.json @@ -0,0 +1,624 @@ +{ + "typeName": "AWS::ODB::CloudAutonomousVmCluster", + "description": "The AWS::ODB::CloudAutonomousVmCluster resource creates a Cloud Autonomous VM Cluster", + "definitions": { + "MaintenanceWindow": { + "description": "The scheduling details for the maintenance window. Patching and system updates take place during the maintenance window.", + "type": "object", + "additionalProperties": false, + "properties": { + "DaysOfWeek": { + "type": "array", + "description": "The days of the week when maintenance can be performed.", + "uniqueItems": false, + "items": { + "type": "string", + "enum": [ + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY", + "SUNDAY" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: MONDAY | TUESDAY | WEDNESDAY | THURSDAY | FRIDAY | SATURDAY | SUNDAY \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The days of the week when maintenance can be performed.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "HoursOfDay": { + "type": "array", + "description": "The hours of the day when maintenance can be performed.", + "uniqueItems": false, + "items": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The hours of the day when maintenance can be performed.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "LeadTimeInWeeks": { + "type": "integer", + "description": "The lead time in weeks before the maintenance window.", + "minLength": 1, + "maxLength": 4, + "markdownDescription": "The lead time in weeks before the maintenance window.\n\n---\n\nRequired: No \nType: Integer \nMinimum Length: 1 \nMaximum Length: 4 \nUpdate requires: No interruption\n" + }, + "Months": { + "type": "array", + "description": "The months when maintenance can be performed.", + "uniqueItems": false, + "items": { + "type": "string", + "enum": [ + "JANUARY", + "FEBRUARY", + "MARCH", + "APRIL", + "MAY", + "JUNE", + "JULY", + "AUGUST", + "SEPTEMBER", + "OCTOBER", + "NOVEMBER", + "DECEMBER" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: JANUARY | FEBRUARY | MARCH | APRIL | MAY | JUNE | JULY | AUGUST | SEPTEMBER | OCTOBER | NOVEMBER | DECEMBER \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The months when maintenance can be performed.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Preference": { + "type": "string", + "description": "The preference for the maintenance window scheduling.", + "enum": [ + "NO_PREFERENCE", + "CUSTOM_PREFERENCE" + ], + "markdownDescription": "The preference for the maintenance window scheduling.\n\n---\n\nRequired: No \nType: String \nAllowed Values: NO_PREFERENCE | CUSTOM_PREFERENCE \nUpdate requires: No interruption\n" + }, + "WeeksOfMonth": { + "type": "array", + "description": "The weeks of the month when maintenance can be performed.", + "uniqueItems": false, + "items": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The weeks of the month when maintenance can be performed.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "The scheduling details for the maintenance window. Patching and system updates take place during the maintenance window.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key" + ], + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "CloudAutonomousVmClusterId": { + "type": "string", + "description": "The unique identifier of the Autonomous VM cluster.", + "markdownDescription": "The unique identifier of the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudAutonomousVmClusterArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the Autonomous VM cluster.", + "markdownDescription": "The Amazon Resource Name (ARN) for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OdbNetworkId": { + "type": "string", + "description": "The unique identifier of the ODB network associated with this Autonomous VM cluster.", + "markdownDescription": "The unique identifier of the ODB network associated with this Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor associated with this Autonomous VM cluster.", + "markdownDescription": "The name of the OCI resource anchor associated with this Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DisplayName": { + "type": "string", + "description": "The display name of the Autonomous VM cluster.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The display name of the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^[a-zA-Z_](?!.*--)[a-zA-Z0-9_-]*$ \nUpdate requires: Replacement\n" + }, + "CloudExadataInfrastructureId": { + "type": "string", + "description": "The unique identifier of the Cloud Exadata Infrastructure containing this Autonomous VM cluster.", + "markdownDescription": "The unique identifier of the Cloud Exadata Infrastructure containing this Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "AutonomousDataStoragePercentage": { + "type": "number", + "description": "The percentage of data storage currently in use for Autonomous Databases in the Autonomous VM cluster.", + "markdownDescription": "The percentage of data storage currently in use for Autonomous Databases in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AutonomousDataStorageSizeInTBs": { + "type": "number", + "description": "The data storage size allocated for Autonomous Databases in the Autonomous VM cluster, in TB.", + "markdownDescription": "The data storage size allocated for Autonomous Databases in the Autonomous VM cluster, in TB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: Replacement\n" + }, + "AvailableAutonomousDataStorageSizeInTBs": { + "type": "number", + "description": "The available data storage space for Autonomous Databases in the Autonomous VM cluster, in TB.", + "markdownDescription": "The available data storage space for Autonomous Databases in the Autonomous VM cluster, in TB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailableContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs that you can create with the currently available storage.", + "markdownDescription": "The number of Autonomous CDBs that you can create with the currently available storage.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailableCpus": { + "type": "number", + "description": "The number of CPU cores available for allocation to Autonomous Databases.", + "markdownDescription": "The number of CPU cores available for allocation to Autonomous Databases.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputeModel": { + "type": "string", + "description": "The compute model of the Autonomous VM cluster: ECPU or OCPU.", + "enum": [ + "ECPU", + "OCPU" + ], + "markdownDescription": "The compute model of the Autonomous VM cluster: ECPU or OCPU.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ECPU | OCPU \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CpuCoreCount": { + "type": "integer", + "description": "The total number of CPU cores in the Autonomous VM cluster.", + "markdownDescription": "The total number of CPU cores in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CpuCoreCountPerNode": { + "type": "integer", + "description": "The number of CPU cores enabled per node in the Autonomous VM cluster.", + "markdownDescription": "The number of CPU cores enabled per node in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "CpuPercentage": { + "type": "number", + "description": "The percentage of total CPU cores currently in use in the Autonomous VM cluster.", + "markdownDescription": "The percentage of total CPU cores currently in use in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DataStorageSizeInGBs": { + "type": "number", + "description": "The total data storage allocated to the Autonomous VM cluster, in GB.", + "markdownDescription": "The total data storage allocated to the Autonomous VM cluster, in GB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DataStorageSizeInTBs": { + "type": "number", + "description": "The total data storage allocated to the Autonomous VM cluster, in TB.", + "markdownDescription": "The total data storage allocated to the Autonomous VM cluster, in TB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbNodeStorageSizeInGBs": { + "type": "integer", + "description": "The local node storage allocated to the Autonomous VM cluster, in gigabytes (GB).", + "markdownDescription": "The local node storage allocated to the Autonomous VM cluster, in gigabytes (GB).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbServers": { + "type": "array", + "description": "The list of database servers associated with the Autonomous VM cluster.", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The list of database servers associated with the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, + "Description": { + "type": "string", + "description": "The user-provided description of the Autonomous VM cluster.", + "markdownDescription": "The user-provided description of the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "Domain": { + "type": "string", + "description": "The domain name for the Autonomous VM cluster.", + "markdownDescription": "The domain name for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ExadataStorageInTBsLowestScaledValue": { + "type": "number", + "description": "The minimum value to which you can scale down the Exadata storage, in TB.", + "markdownDescription": "The minimum value to which you can scale down the Exadata storage, in TB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Hostname": { + "type": "string", + "description": "The hostname for the Autonomous VM cluster.", + "markdownDescription": "The hostname for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Ocid": { + "type": "string", + "description": "The Oracle Cloud Identifier (OCID) of the Autonomous VM cluster.", + "markdownDescription": "The Oracle Cloud Identifier (OCID) of the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciUrl": { + "type": "string", + "description": "The URL for accessing the OCI console page for this Autonomous VM cluster.", + "markdownDescription": "The URL for accessing the OCI console page for this Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "IsMtlsEnabledVmCluster": { + "type": "boolean", + "description": "Indicates whether mutual TLS (mTLS) authentication is enabled for the Autonomous VM cluster.", + "markdownDescription": "Indicates whether mutual TLS (mTLS) authentication is enabled for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Replacement\n" + }, + "LicenseModel": { + "type": "string", + "description": "The Oracle license model that applies to the Autonomous VM cluster. Valid values are LICENSE_INCLUDED or BRING_YOUR_OWN_LICENSE.", + "enum": [ + "BRING_YOUR_OWN_LICENSE", + "LICENSE_INCLUDED" + ], + "markdownDescription": "The Oracle license model that applies to the Autonomous VM cluster. Valid values are LICENSE_INCLUDED or BRING_YOUR_OWN_LICENSE.\n\n---\n\nRequired: No \nType: String \nAllowed Values: BRING_YOUR_OWN_LICENSE | LICENSE_INCLUDED \nUpdate requires: Replacement\n" + }, + "MaintenanceWindow": { + "$ref": "#/definitions/MaintenanceWindow", + "description": "The scheduling details for the maintenance window. Patching and system updates take place during the maintenance window.", + "markdownDescription": "The scheduling details for the maintenance window. Patching and system updates take place during the maintenance window.\n\n---\n\nRequired: No \nType: \nUpdate requires: Replacement\n" + }, + "MaxAcdsLowestScaledValue": { + "type": "integer", + "description": "The minimum value to which you can scale down the maximum number of Autonomous CDBs.", + "markdownDescription": "The minimum value to which you can scale down the maximum number of Autonomous CDBs.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MemoryPerOracleComputeUnitInGBs": { + "type": "integer", + "description": "The amount of memory allocated per Oracle Compute Unit, in GB.", + "markdownDescription": "The amount of memory allocated per Oracle Compute Unit, in GB.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "MemorySizeInGBs": { + "type": "integer", + "description": "The total amount of memory allocated to the Autonomous VM cluster, in gigabytes (GB).", + "markdownDescription": "The total amount of memory allocated to the Autonomous VM cluster, in gigabytes (GB).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "NodeCount": { + "type": "integer", + "description": "The number of database server nodes in the Autonomous VM cluster.", + "markdownDescription": "The number of database server nodes in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "NonProvisionableAutonomousContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs that can't be provisioned because of resource constraints.", + "markdownDescription": "The number of Autonomous CDBs that can't be provisioned because of resource constraints.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionableAutonomousContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs that can be provisioned in the Autonomous VM cluster.", + "markdownDescription": "The number of Autonomous CDBs that can be provisioned in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionedAutonomousContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs currently provisioned in the Autonomous VM cluster.", + "markdownDescription": "The number of Autonomous CDBs currently provisioned in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionedCpus": { + "type": "number", + "description": "The number of CPU cores currently provisioned in the Autonomous VM cluster.", + "markdownDescription": "The number of CPU cores currently provisioned in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ReclaimableCpus": { + "type": "number", + "description": "The number of CPU cores that can be reclaimed from terminated or scaled-down Autonomous Databases.", + "markdownDescription": "The number of CPU cores that can be reclaimed from terminated or scaled-down Autonomous Databases.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ReservedCpus": { + "type": "number", + "description": "The number of CPU cores reserved for system operations and redundancy.", + "markdownDescription": "The number of CPU cores reserved for system operations and redundancy.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ScanListenerPortNonTls": { + "type": "integer", + "description": "The SCAN listener port for non-TLS (TCP) protocol. The default is 1521.", + "minimum": 1024, + "maximum": 8999, + "markdownDescription": "The SCAN listener port for non-TLS (TCP) protocol. The default is 1521.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "ScanListenerPortTls": { + "type": "integer", + "description": "The SCAN listener port for TLS (TCP) protocol. The default is 2484.", + "minimum": 1024, + "maximum": 8999, + "markdownDescription": "The SCAN listener port for TLS (TCP) protocol. The default is 2484.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "Shape": { + "type": "string", + "description": "The shape of the Exadata infrastructure for the Autonomous VM cluster.", + "markdownDescription": "The shape of the Exadata infrastructure for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "type": "array", + "description": "The tags associated with the Autonomous VM cluster.", + "insertionOrder": false, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "The tags associated with the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "TimeZone": { + "type": "string", + "description": "The time zone of the Autonomous VM cluster.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The time zone of the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "TotalContainerDatabases": { + "type": "integer", + "description": "The total number of Autonomous Container Databases that can be created with the allocated local storage.", + "markdownDescription": "The total number of Autonomous Container Databases that can be created with the allocated local storage.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + } + }, + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/OdbNetworkId", + "/properties/CloudExadataInfrastructureId", + "/properties/DbServers", + "/properties/IsMtlsEnabledVmCluster", + "/properties/MemoryPerOracleComputeUnitInGBs", + "/properties/ScanListenerPortNonTls", + "/properties/ScanListenerPortTls", + "/properties/TimeZone", + "/properties/AutonomousDataStorageSizeInTBs", + "/properties/DisplayName", + "/properties/CpuCoreCountPerNode", + "/properties/Description", + "/properties/LicenseModel", + "/properties/MaintenanceWindow", + "/properties/TotalContainerDatabases" + ], + "readOnlyProperties": [ + "/properties/CloudAutonomousVmClusterId", + "/properties/CloudAutonomousVmClusterArn", + "/properties/OciResourceAnchorName", + "/properties/AutonomousDataStoragePercentage", + "/properties/AvailableAutonomousDataStorageSizeInTBs", + "/properties/AvailableContainerDatabases", + "/properties/AvailableCpus", + "/properties/ComputeModel", + "/properties/CpuCoreCount", + "/properties/CpuPercentage", + "/properties/DataStorageSizeInGBs", + "/properties/DataStorageSizeInTBs", + "/properties/DbNodeStorageSizeInGBs", + "/properties/Domain", + "/properties/ExadataStorageInTBsLowestScaledValue", + "/properties/Hostname", + "/properties/Ocid", + "/properties/OciUrl", + "/properties/MaxAcdsLowestScaledValue", + "/properties/MemorySizeInGBs", + "/properties/NodeCount", + "/properties/NonProvisionableAutonomousContainerDatabases", + "/properties/ProvisionableAutonomousContainerDatabases", + "/properties/ProvisionedAutonomousContainerDatabases", + "/properties/ProvisionedCpus", + "/properties/ReclaimableCpus", + "/properties/ReservedCpus", + "/properties/Shape" + ], + "primaryIdentifier": [ + "/properties/CloudAutonomousVmClusterArn" + ], + "handlers": { + "create": { + "permissions": [ + "ec2:DescribeAvailabilityZones", + "iam:CreateServiceLinkedRole", + "odb:CreateCloudAutonomousVmCluster", + "odb:GetCloudAutonomousVmCluster", + "odb:ListCloudAutonomousVmClusters", + "odb:ListTagsForResource", + "odb:TagResource", + "sts:GetCallerIdentity" + ], + "timeoutInMinutes": 2160 + }, + "read": { + "permissions": [ + "odb:GetCloudAutonomousVmCluster", + "odb:ListTagsForResource", + "sts:GetCallerIdentity" + ] + }, + "update": { + "permissions": [ + "odb:TagResource", + "odb:UntagResource", + "odb:GetCloudAutonomousVmCluster", + "odb:ListCloudAutonomousVmClusters", + "odb:ListTagsForResource", + "sts:GetCallerIdentity" + ] + }, + "delete": { + "permissions": [ + "odb:DeleteCloudAutonomousVmCluster", + "odb:GetCloudAutonomousVmCluster", + "odb:ListCloudAutonomousVmClusters", + "odb:ListTagsForResource", + "sts:GetCallerIdentity" + ], + "timeoutInMinutes": 2160 + }, + "list": { + "permissions": [ + "odb:ListCloudAutonomousVmClusters", + "odb:ListTagsForResource", + "sts:GetCallerIdentity" + ] + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "odb:TagResource", + "odb:UntagResource", + "odb:ListTagsForResource" + ] + }, + "attributes": { + "CloudAutonomousVmClusterId": { + "type": "string", + "description": "The unique identifier of the Autonomous VM cluster.", + "markdownDescription": "The unique identifier of the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudAutonomousVmClusterArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the Autonomous VM cluster.", + "markdownDescription": "The Amazon Resource Name (ARN) for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor associated with this Autonomous VM cluster.", + "markdownDescription": "The name of the OCI resource anchor associated with this Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AutonomousDataStoragePercentage": { + "type": "number", + "description": "The percentage of data storage currently in use for Autonomous Databases in the Autonomous VM cluster.", + "markdownDescription": "The percentage of data storage currently in use for Autonomous Databases in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailableAutonomousDataStorageSizeInTBs": { + "type": "number", + "description": "The available data storage space for Autonomous Databases in the Autonomous VM cluster, in TB.", + "markdownDescription": "The available data storage space for Autonomous Databases in the Autonomous VM cluster, in TB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailableContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs that you can create with the currently available storage.", + "markdownDescription": "The number of Autonomous CDBs that you can create with the currently available storage.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailableCpus": { + "type": "number", + "description": "The number of CPU cores available for allocation to Autonomous Databases.", + "markdownDescription": "The number of CPU cores available for allocation to Autonomous Databases.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputeModel": { + "type": "string", + "description": "The compute model of the Autonomous VM cluster: ECPU or OCPU.", + "enum": [ + "ECPU", + "OCPU" + ], + "markdownDescription": "The compute model of the Autonomous VM cluster: ECPU or OCPU.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ECPU | OCPU \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CpuCoreCount": { + "type": "integer", + "description": "The total number of CPU cores in the Autonomous VM cluster.", + "markdownDescription": "The total number of CPU cores in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CpuPercentage": { + "type": "number", + "description": "The percentage of total CPU cores currently in use in the Autonomous VM cluster.", + "markdownDescription": "The percentage of total CPU cores currently in use in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DataStorageSizeInGBs": { + "type": "number", + "description": "The total data storage allocated to the Autonomous VM cluster, in GB.", + "markdownDescription": "The total data storage allocated to the Autonomous VM cluster, in GB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DataStorageSizeInTBs": { + "type": "number", + "description": "The total data storage allocated to the Autonomous VM cluster, in TB.", + "markdownDescription": "The total data storage allocated to the Autonomous VM cluster, in TB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbNodeStorageSizeInGBs": { + "type": "integer", + "description": "The local node storage allocated to the Autonomous VM cluster, in gigabytes (GB).", + "markdownDescription": "The local node storage allocated to the Autonomous VM cluster, in gigabytes (GB).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Domain": { + "type": "string", + "description": "The domain name for the Autonomous VM cluster.", + "markdownDescription": "The domain name for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ExadataStorageInTBsLowestScaledValue": { + "type": "number", + "description": "The minimum value to which you can scale down the Exadata storage, in TB.", + "markdownDescription": "The minimum value to which you can scale down the Exadata storage, in TB.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Hostname": { + "type": "string", + "description": "The hostname for the Autonomous VM cluster.", + "markdownDescription": "The hostname for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Ocid": { + "type": "string", + "description": "The Oracle Cloud Identifier (OCID) of the Autonomous VM cluster.", + "markdownDescription": "The Oracle Cloud Identifier (OCID) of the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciUrl": { + "type": "string", + "description": "The URL for accessing the OCI console page for this Autonomous VM cluster.", + "markdownDescription": "The URL for accessing the OCI console page for this Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxAcdsLowestScaledValue": { + "type": "integer", + "description": "The minimum value to which you can scale down the maximum number of Autonomous CDBs.", + "markdownDescription": "The minimum value to which you can scale down the maximum number of Autonomous CDBs.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MemorySizeInGBs": { + "type": "integer", + "description": "The total amount of memory allocated to the Autonomous VM cluster, in gigabytes (GB).", + "markdownDescription": "The total amount of memory allocated to the Autonomous VM cluster, in gigabytes (GB).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "NodeCount": { + "type": "integer", + "description": "The number of database server nodes in the Autonomous VM cluster.", + "markdownDescription": "The number of database server nodes in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "NonProvisionableAutonomousContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs that can't be provisioned because of resource constraints.", + "markdownDescription": "The number of Autonomous CDBs that can't be provisioned because of resource constraints.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionableAutonomousContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs that can be provisioned in the Autonomous VM cluster.", + "markdownDescription": "The number of Autonomous CDBs that can be provisioned in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionedAutonomousContainerDatabases": { + "type": "integer", + "description": "The number of Autonomous CDBs currently provisioned in the Autonomous VM cluster.", + "markdownDescription": "The number of Autonomous CDBs currently provisioned in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionedCpus": { + "type": "number", + "description": "The number of CPU cores currently provisioned in the Autonomous VM cluster.", + "markdownDescription": "The number of CPU cores currently provisioned in the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ReclaimableCpus": { + "type": "number", + "description": "The number of CPU cores that can be reclaimed from terminated or scaled-down Autonomous Databases.", + "markdownDescription": "The number of CPU cores that can be reclaimed from terminated or scaled-down Autonomous Databases.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ReservedCpus": { + "type": "number", + "description": "The number of CPU cores reserved for system operations and redundancy.", + "markdownDescription": "The number of CPU cores reserved for system operations and redundancy.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Shape": { + "type": "string", + "description": "The shape of the Exadata infrastructure for the Autonomous VM cluster.", + "markdownDescription": "The shape of the Exadata infrastructure for the Autonomous VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-odb-cloudexadatainfrastructure.json b/server/schema/resources/aws-odb-cloudexadatainfrastructure.json new file mode 100644 index 00000000..01a980dc --- /dev/null +++ b/server/schema/resources/aws-odb-cloudexadatainfrastructure.json @@ -0,0 +1,447 @@ +{ + "typeName": "AWS::ODB::CloudExadataInfrastructure", + "description": "The AWS::ODB::CloudExadataInfrastructure resource creates an Exadata Infrastructure", + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key" + ], + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CustomerContact": { + "type": "object", + "description": "A contact to receive notification from Oracle about maintenance updates for a specific Exadata infrastructure.", + "additionalProperties": false, + "properties": { + "Email": { + "type": "string", + "description": "The email address of the contact.", + "markdownDescription": "The email address of the contact.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "A contact to receive notification from Oracle about maintenance updates for a specific Exadata infrastructure.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "ActivatedStorageCount": { + "type": "integer", + "description": "The number of storage servers requested for the Exadata infrastructure.", + "markdownDescription": "The number of storage servers requested for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AdditionalStorageCount": { + "type": "integer", + "description": "The number of storage servers requested for the Exadata infrastructure.", + "markdownDescription": "The number of storage servers requested for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailabilityZone": { + "type": "string", + "description": "The name of the Availability Zone (AZ) where the Exadata infrastructure is located.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The name of the Availability Zone (AZ) where the Exadata infrastructure is located.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "AvailabilityZoneId": { + "type": "string", + "description": "The AZ ID of the AZ where the Exadata infrastructure is located.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The AZ ID of the AZ where the Exadata infrastructure is located.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "AvailableStorageSizeInGBs": { + "type": "integer", + "description": "The amount of available storage, in gigabytes (GB), for the Exadata infrastructure.", + "markdownDescription": "The amount of available storage, in gigabytes (GB), for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudExadataInfrastructureArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the Exadata infrastructure.", + "markdownDescription": "The Amazon Resource Name (ARN) for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudExadataInfrastructureId": { + "type": "string", + "description": "The unique identifier for the Exadata infrastructure.", + "markdownDescription": "The unique identifier for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputeCount": { + "type": "integer", + "description": "The number of database servers for the Exadata infrastructure.", + "markdownDescription": "The number of database servers for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "ComputeModel": { + "type": "string", + "description": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.", + "markdownDescription": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CpuCount": { + "type": "integer", + "description": "The total number of CPU cores that are allocated to the Exadata infrastructure.", + "markdownDescription": "The total number of CPU cores that are allocated to the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CustomerContactsToSendToOCI": { + "type": "array", + "description": "The email addresses of contacts to receive notification from Oracle about maintenance updates for the Exadata infrastructure.", + "insertionOrder": false, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/CustomerContact" + }, + "markdownDescription": "The email addresses of contacts to receive notification from Oracle about maintenance updates for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, + "DataStorageSizeInTBs": { + "type": "number", + "description": "The size of the Exadata infrastructure's data disk group, in terabytes (TB).", + "markdownDescription": "The size of the Exadata infrastructure's data disk group, in terabytes (TB).\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DatabaseServerType": { + "type": "string", + "description": "The database server model type of the Exadata infrastructure. For the list of valid model names, use the ListDbSystemShapes operation.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The database server model type of the Exadata infrastructure. For the list of valid model names, use the ListDbSystemShapes operation.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^[a-zA-Z0-9_\\/.=-]+$ \nUpdate requires: Replacement\n" + }, + "DbNodeStorageSizeInGBs": { + "type": "integer", + "description": "The size of the Exadata infrastructure's local node storage, in gigabytes (GB).", + "markdownDescription": "The size of the Exadata infrastructure's local node storage, in gigabytes (GB).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbServerVersion": { + "type": "string", + "description": "The software version of the database servers (dom0) in the Exadata infrastructure.", + "markdownDescription": "The software version of the database servers (dom0) in the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DisplayName": { + "type": "string", + "description": "The user-friendly name for the Exadata infrastructure.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The user-friendly name for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^[a-zA-Z_](?!.*--)[a-zA-Z0-9_-]*$ \nUpdate requires: Replacement\n" + }, + "MaxCpuCount": { + "type": "integer", + "description": "The total number of CPU cores available on the Exadata infrastructure.", + "markdownDescription": "The total number of CPU cores available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxDataStorageInTBs": { + "type": "number", + "description": "The total amount of data disk group storage, in terabytes (TB), that's available on the Exadata infrastructure.", + "markdownDescription": "The total amount of data disk group storage, in terabytes (TB), that's available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxDbNodeStorageSizeInGBs": { + "type": "integer", + "description": "The total amount of local node storage, in gigabytes (GB), that's available on the Exadata infrastructure.", + "markdownDescription": "The total amount of local node storage, in gigabytes (GB), that's available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxMemoryInGBs": { + "type": "integer", + "description": "The total amount of memory, in gigabytes (GB), that's available on the Exadata infrastructure.", + "markdownDescription": "The total amount of memory, in gigabytes (GB), that's available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MemorySizeInGBs": { + "type": "integer", + "description": "The amount of memory, in gigabytes (GB), that's allocated on the Exadata infrastructure.", + "markdownDescription": "The amount of memory, in gigabytes (GB), that's allocated on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor for the Exadata infrastructure.", + "markdownDescription": "The name of the OCI resource anchor for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciUrl": { + "type": "string", + "description": "The HTTPS link to the Exadata infrastructure in OCI.", + "markdownDescription": "The HTTPS link to the Exadata infrastructure in OCI.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Ocid": { + "type": "string", + "description": "The OCID of the Exadata infrastructure.", + "markdownDescription": "The OCID of the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Shape": { + "type": "string", + "description": "The model name of the Exadata infrastructure.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The model name of the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^[a-zA-Z0-9_\\/.=-]+$ \nUpdate requires: Replacement\n" + }, + "StorageCount": { + "type": "integer", + "description": "The number of storage servers that are activated for the Exadata infrastructure.", + "markdownDescription": "The number of storage servers that are activated for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "StorageServerType": { + "type": "string", + "description": "The storage server model type of the Exadata infrastructure. For the list of valid model names, use the ListDbSystemShapes operation.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The storage server model type of the Exadata infrastructure. For the list of valid model names, use the ListDbSystemShapes operation.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^[a-zA-Z0-9_\\/.=-]+$ \nUpdate requires: Replacement\n" + }, + "StorageServerVersion": { + "type": "string", + "description": "The software version of the storage servers on the Exadata infrastructure.", + "markdownDescription": "The software version of the storage servers on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "type": "array", + "description": "Tags to assign to the Exadata Infrastructure.", + "insertionOrder": false, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "Tags to assign to the Exadata Infrastructure.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "TotalStorageSizeInGBs": { + "type": "integer", + "description": "The total amount of storage, in gigabytes (GB), on the the Exadata infrastructure.", + "markdownDescription": "The total amount of storage, in gigabytes (GB), on the the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbServerIds": { + "type": "array", + "description": "The list of database server identifiers for the Exadata infrastructure.", + "insertionOrder": false, + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The list of database server identifiers for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AvailabilityZone", + "/properties/AvailabilityZoneId", + "/properties/Shape", + "/properties/DatabaseServerType", + "/properties/StorageServerType", + "/properties/DisplayName", + "/properties/ComputeCount", + "/properties/CustomerContactsToSendToOCI", + "/properties/StorageCount" + ], + "readOnlyProperties": [ + "/properties/ActivatedStorageCount", + "/properties/AdditionalStorageCount", + "/properties/AvailableStorageSizeInGBs", + "/properties/CloudExadataInfrastructureArn", + "/properties/CloudExadataInfrastructureId", + "/properties/ComputeModel", + "/properties/CpuCount", + "/properties/DataStorageSizeInTBs", + "/properties/DbNodeStorageSizeInGBs", + "/properties/DbServerVersion", + "/properties/MaxCpuCount", + "/properties/MaxDataStorageInTBs", + "/properties/MaxDbNodeStorageSizeInGBs", + "/properties/MaxMemoryInGBs", + "/properties/MemorySizeInGBs", + "/properties/OciResourceAnchorName", + "/properties/OciUrl", + "/properties/Ocid", + "/properties/StorageServerVersion", + "/properties/TotalStorageSizeInGBs", + "/properties/DbServerIds" + ], + "primaryIdentifier": [ + "/properties/CloudExadataInfrastructureArn" + ], + "handlers": { + "create": { + "permissions": [ + "odb:CreateCloudExadataInfrastructure", + "ec2:DescribeAvailabilityZones", + "iam:CreateServiceLinkedRole", + "odb:ListCloudExadataInfrastructures", + "odb:GetCloudExadataInfrastructure", + "odb:ListDbServers", + "odb:TagResource", + "sts:GetCallerIdentity", + "odb:ListTagsForResource" + ], + "timeoutInMinutes": 2160 + }, + "read": { + "permissions": [ + "odb:GetCloudExadataInfrastructure", + "odb:ListDbServers", + "sts:GetCallerIdentity", + "odb:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "odb:UpdateCloudExadataInfrastructure", + "odb:TagResource", + "odb:UntagResource", + "odb:ListCloudExadataInfrastructures", + "odb:GetCloudExadataInfrastructure", + "odb:ListDbServers", + "sts:GetCallerIdentity", + "odb:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "odb:DeleteCloudExadataInfrastructure", + "odb:ListCloudExadataInfrastructures", + "odb:GetCloudExadataInfrastructure", + "odb:ListDbServers", + "sts:GetCallerIdentity", + "odb:ListTagsForResource" + ], + "timeoutInMinutes": 2160 + }, + "list": { + "permissions": [ + "odb:ListCloudExadataInfrastructures", + "sts:GetCallerIdentity", + "odb:ListTagsForResource", + "odb:ListDbServers" + ] + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "odb:TagResource", + "odb:UntagResource", + "odb:ListTagsForResource" + ] + }, + "attributes": { + "ActivatedStorageCount": { + "type": "integer", + "description": "The number of storage servers requested for the Exadata infrastructure.", + "markdownDescription": "The number of storage servers requested for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AdditionalStorageCount": { + "type": "integer", + "description": "The number of storage servers requested for the Exadata infrastructure.", + "markdownDescription": "The number of storage servers requested for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailableStorageSizeInGBs": { + "type": "integer", + "description": "The amount of available storage, in gigabytes (GB), for the Exadata infrastructure.", + "markdownDescription": "The amount of available storage, in gigabytes (GB), for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudExadataInfrastructureArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the Exadata infrastructure.", + "markdownDescription": "The Amazon Resource Name (ARN) for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudExadataInfrastructureId": { + "type": "string", + "description": "The unique identifier for the Exadata infrastructure.", + "markdownDescription": "The unique identifier for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputeModel": { + "type": "string", + "description": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.", + "markdownDescription": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CpuCount": { + "type": "integer", + "description": "The total number of CPU cores that are allocated to the Exadata infrastructure.", + "markdownDescription": "The total number of CPU cores that are allocated to the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DataStorageSizeInTBs": { + "type": "number", + "description": "The size of the Exadata infrastructure's data disk group, in terabytes (TB).", + "markdownDescription": "The size of the Exadata infrastructure's data disk group, in terabytes (TB).\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbNodeStorageSizeInGBs": { + "type": "integer", + "description": "The size of the Exadata infrastructure's local node storage, in gigabytes (GB).", + "markdownDescription": "The size of the Exadata infrastructure's local node storage, in gigabytes (GB).\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbServerVersion": { + "type": "string", + "description": "The software version of the database servers (dom0) in the Exadata infrastructure.", + "markdownDescription": "The software version of the database servers (dom0) in the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxCpuCount": { + "type": "integer", + "description": "The total number of CPU cores available on the Exadata infrastructure.", + "markdownDescription": "The total number of CPU cores available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxDataStorageInTBs": { + "type": "number", + "description": "The total amount of data disk group storage, in terabytes (TB), that's available on the Exadata infrastructure.", + "markdownDescription": "The total amount of data disk group storage, in terabytes (TB), that's available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxDbNodeStorageSizeInGBs": { + "type": "integer", + "description": "The total amount of local node storage, in gigabytes (GB), that's available on the Exadata infrastructure.", + "markdownDescription": "The total amount of local node storage, in gigabytes (GB), that's available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MaxMemoryInGBs": { + "type": "integer", + "description": "The total amount of memory, in gigabytes (GB), that's available on the Exadata infrastructure.", + "markdownDescription": "The total amount of memory, in gigabytes (GB), that's available on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MemorySizeInGBs": { + "type": "integer", + "description": "The amount of memory, in gigabytes (GB), that's allocated on the Exadata infrastructure.", + "markdownDescription": "The amount of memory, in gigabytes (GB), that's allocated on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor for the Exadata infrastructure.", + "markdownDescription": "The name of the OCI resource anchor for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciUrl": { + "type": "string", + "description": "The HTTPS link to the Exadata infrastructure in OCI.", + "markdownDescription": "The HTTPS link to the Exadata infrastructure in OCI.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Ocid": { + "type": "string", + "description": "The OCID of the Exadata infrastructure.", + "markdownDescription": "The OCID of the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StorageServerVersion": { + "type": "string", + "description": "The software version of the storage servers on the Exadata infrastructure.", + "markdownDescription": "The software version of the storage servers on the Exadata infrastructure.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "TotalStorageSizeInGBs": { + "type": "integer", + "description": "The total amount of storage, in gigabytes (GB), on the the Exadata infrastructure.", + "markdownDescription": "The total amount of storage, in gigabytes (GB), on the the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DbServerIds": { + "type": "array", + "description": "The list of database server identifiers for the Exadata infrastructure.", + "insertionOrder": false, + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The list of database server identifiers for the Exadata infrastructure.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-odb-cloudvmcluster.json b/server/schema/resources/aws-odb-cloudvmcluster.json new file mode 100644 index 00000000..9ebfedfe --- /dev/null +++ b/server/schema/resources/aws-odb-cloudvmcluster.json @@ -0,0 +1,470 @@ +{ + "typeName": "AWS::ODB::CloudVmCluster", + "description": "The AWS::ODB::CloudVmCluster resource creates a Cloud VM Cluster", + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key" + ], + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DataCollectionOptions": { + "description": "Information about the data collection options enabled for a VM cluster.", + "type": "object", + "additionalProperties": false, + "properties": { + "IsDiagnosticsEventsEnabled": { + "type": "boolean", + "description": "Indicates whether diagnostic collection is enabled for the VM cluster.", + "markdownDescription": "Indicates whether diagnostic collection is enabled for the VM cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "IsHealthMonitoringEnabled": { + "type": "boolean", + "description": "Indicates whether health monitoring is enabled for the VM cluster.", + "markdownDescription": "Indicates whether health monitoring is enabled for the VM cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "IsIncidentLogsEnabled": { + "type": "boolean", + "description": "Indicates whether incident logs are enabled for the cloud VM cluster.", + "markdownDescription": "Indicates whether incident logs are enabled for the cloud VM cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Information about the data collection options enabled for a VM cluster.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "CloudExadataInfrastructureId": { + "type": "string", + "description": "The unique identifier of the Exadata infrastructure that this VM cluster belongs to.", + "markdownDescription": "The unique identifier of the Exadata infrastructure that this VM cluster belongs to.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "CloudVmClusterArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the VM cluster.", + "markdownDescription": "The Amazon Resource Name (ARN) of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudVmClusterId": { + "type": "string", + "description": "The unique identifier of the VM cluster.", + "markdownDescription": "The unique identifier of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ClusterName": { + "type": "string", + "description": "The name of the Grid Infrastructure (GI) cluster.", + "minLength": 1, + "maxLength": 11, + "markdownDescription": "The name of the Grid Infrastructure (GI) cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 11 \nPattern: ^[a-zA-Z][a-zA-Z0-9-]*$ \nUpdate requires: Replacement\n" + }, + "ComputeModel": { + "type": "string", + "description": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.", + "markdownDescription": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CpuCoreCount": { + "type": "integer", + "description": "The number of CPU cores enabled on the VM cluster.", + "minimum": 0, + "maximum": 368, + "markdownDescription": "The number of CPU cores enabled on the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "DataCollectionOptions": { + "$ref": "#/definitions/DataCollectionOptions", + "description": "The set of diagnostic collection options enabled for the VM cluster.", + "markdownDescription": "The set of diagnostic collection options enabled for the VM cluster.\n\n---\n\nRequired: No \nType: \nUpdate requires: Replacement\n" + }, + "DataStorageSizeInTBs": { + "type": "number", + "description": "The size of the data disk group, in terabytes (TB), that's allocated for the VM cluster.", + "markdownDescription": "The size of the data disk group, in terabytes (TB), that's allocated for the VM cluster.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: Replacement\n" + }, + "DbNodeStorageSizeInGBs": { + "type": "integer", + "description": "The amount of local node storage, in gigabytes (GB), that's allocated for the VM cluster.", + "markdownDescription": "The amount of local node storage, in gigabytes (GB), that's allocated for the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "DbServers": { + "type": "array", + "description": "The list of database servers for the VM cluster.", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The list of database servers for the VM cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, + "DisplayName": { + "type": "string", + "description": "The user-friendly name for the VM cluster.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The user-friendly name for the VM cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^[a-zA-Z_](?!.*--)[a-zA-Z0-9_-]*$ \nUpdate requires: Replacement\n" + }, + "DiskRedundancy": { + "type": "string", + "description": "The type of redundancy configured for the VM cluster. NORMAL is 2-way redundancy. HIGH is 3-way redundancy.", + "markdownDescription": "The type of redundancy configured for the VM cluster. NORMAL is 2-way redundancy. HIGH is 3-way redundancy.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Domain": { + "type": "string", + "description": "The domain of the VM cluster.", + "markdownDescription": "The domain of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "GiVersion": { + "type": "string", + "description": "The software version of the Oracle Grid Infrastructure (GI) for the VM cluster.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The software version of the Oracle Grid Infrastructure (GI) for the VM cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "Hostname": { + "type": "string", + "description": "The host name for the VM cluster.", + "minLength": 1, + "maxLength": 12, + "markdownDescription": "The host name for the VM cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 12 \nPattern: ^[a-zA-Z][a-zA-Z0-9-]*[a-zA-Z0-9]$ \nUpdate requires: Replacement\n" + }, + "IsLocalBackupEnabled": { + "type": "boolean", + "description": "Indicates whether database backups to local Exadata storage is enabled for the VM cluster.", + "markdownDescription": "Indicates whether database backups to local Exadata storage is enabled for the VM cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Replacement\n" + }, + "IsSparseDiskgroupEnabled": { + "type": "boolean", + "description": "Indicates whether the VM cluster is configured with a sparse disk group.", + "markdownDescription": "Indicates whether the VM cluster is configured with a sparse disk group.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Replacement\n" + }, + "LicenseModel": { + "type": "string", + "description": "The Oracle license model applied to the VM cluster.", + "enum": [ + "BRING_YOUR_OWN_LICENSE", + "LICENSE_INCLUDED" + ], + "markdownDescription": "The Oracle license model applied to the VM cluster.\n\n---\n\nRequired: No \nType: String \nAllowed Values: BRING_YOUR_OWN_LICENSE | LICENSE_INCLUDED \nUpdate requires: Replacement\n" + }, + "ListenerPort": { + "type": "integer", + "description": "The port number configured for the listener on the VM cluster.", + "markdownDescription": "The port number configured for the listener on the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MemorySizeInGBs": { + "type": "integer", + "description": "The amount of memory, in gigabytes (GB), that's allocated for the VM cluster.", + "markdownDescription": "The amount of memory, in gigabytes (GB), that's allocated for the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "NodeCount": { + "type": "integer", + "description": "The number of nodes in the VM cluster.", + "markdownDescription": "The number of nodes in the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OdbNetworkId": { + "type": "string", + "description": "The unique identifier of the ODB network for the VM cluster.", + "markdownDescription": "The unique identifier of the ODB network for the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "Ocid": { + "type": "string", + "description": "The OCID of the VM cluster.", + "markdownDescription": "The OCID of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor for the VM cluster.", + "markdownDescription": "The name of the OCI resource anchor for the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciUrl": { + "type": "string", + "description": "The HTTPS link to the VM cluster in OCI.", + "markdownDescription": "The HTTPS link to the VM cluster in OCI.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ScanDnsName": { + "type": "string", + "description": "The FQDN of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.", + "markdownDescription": "The FQDN of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ScanIpIds": { + "type": "array", + "description": "The OCID of the SCAN IP addresses that are associated with the VM cluster.", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The OCID of the SCAN IP addresses that are associated with the VM cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ScanListenerPortTcp": { + "type": "integer", + "description": "Property description not available.", + "minimum": 1024, + "maximum": 8999, + "markdownDescription": "Property description not available.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "Shape": { + "type": "string", + "description": "The hardware model name of the Exadata infrastructure that's running the VM cluster.", + "markdownDescription": "The hardware model name of the Exadata infrastructure that's running the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SshPublicKeys": { + "type": "array", + "description": "The public key portion of one or more key pairs used for SSH access to the VM cluster.", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The public key portion of one or more key pairs used for SSH access to the VM cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, + "StorageSizeInGBs": { + "type": "integer", + "description": "The amount of local node storage, in gigabytes (GB), that's allocated to the VM cluster.", + "markdownDescription": "The amount of local node storage, in gigabytes (GB), that's allocated to the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SystemVersion": { + "type": "string", + "description": "The operating system version of the image chosen for the VM cluster.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The operating system version of the image chosen for the VM cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "Tags": { + "type": "array", + "description": "Tags to assign to the Vm Cluster.", + "insertionOrder": false, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "Tags to assign to the Vm Cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "TimeZone": { + "type": "string", + "description": "The time zone of the VM cluster.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The time zone of the VM cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "VipIds": { + "type": "array", + "description": "The virtual IP (VIP) addresses that are associated with the VM cluster. Oracle's Cluster Ready Services (CRS) creates and maintains one VIP address for each node in the VM cluster to enable failover. If one node fails, the VIP is reassigned to another active node in the cluster.", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The virtual IP (VIP) addresses that are associated with the VM cluster. Oracle's Cluster Ready Services (CRS) creates and maintains one VIP address for each node in the VM cluster to enable failover. If one node fails, the VIP is reassigned to another active node in the cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CloudExadataInfrastructureId", + "/properties/DataCollectionOptions", + "/properties/DataStorageSizeInTBs", + "/properties/DbNodeStorageSizeInGBs", + "/properties/OdbNetworkId", + "/properties/GiVersion", + "/properties/ClusterName", + "/properties/DbServers", + "/properties/LicenseModel", + "/properties/Hostname", + "/properties/IsLocalBackupEnabled", + "/properties/IsSparseDiskgroupEnabled", + "/properties/SystemVersion", + "/properties/TimeZone", + "/properties/ScanListenerPortTcp", + "/properties/SshPublicKeys", + "/properties/CpuCoreCount", + "/properties/DisplayName", + "/properties/MemorySizeInGBs" + ], + "readOnlyProperties": [ + "/properties/CloudVmClusterArn", + "/properties/CloudVmClusterId", + "/properties/ComputeModel", + "/properties/DiskRedundancy", + "/properties/Domain", + "/properties/ListenerPort", + "/properties/NodeCount", + "/properties/Ocid", + "/properties/OciResourceAnchorName", + "/properties/OciUrl", + "/properties/ScanDnsName", + "/properties/ScanIpIds", + "/properties/Shape", + "/properties/StorageSizeInGBs", + "/properties/VipIds" + ], + "writeOnlyProperties": [ + "/properties/ScanListenerPortTcp" + ], + "primaryIdentifier": [ + "/properties/CloudVmClusterArn" + ], + "handlers": { + "create": { + "permissions": [ + "odb:CreateCloudVmCluster", + "odb:TagResource", + "odb:GetCloudVmCluster", + "odb:ListCloudVmClusters", + "odb:ListTagsForResource", + "sts:GetCallerIdentity", + "ec2:DescribeAvailabilityZones", + "odb:CreateDbNode" + ], + "timeoutInMinutes": 2160 + }, + "read": { + "permissions": [ + "odb:GetCloudVmCluster", + "odb:ListTagsForResource", + "sts:GetCallerIdentity" + ] + }, + "update": { + "permissions": [ + "odb:TagResource", + "odb:UntagResource", + "odb:GetCloudVmCluster", + "odb:ListCloudVmClusters", + "odb:ListTagsForResource", + "sts:GetCallerIdentity" + ] + }, + "delete": { + "permissions": [ + "odb:DeleteCloudVmCluster", + "odb:GetCloudVmCluster", + "odb:ListCloudVmClusters", + "odb:ListTagsForResource", + "sts:GetCallerIdentity", + "odb:DeleteDbNode" + ], + "timeoutInMinutes": 2160 + }, + "list": { + "permissions": [ + "odb:ListCloudVmClusters", + "odb:ListTagsForResource", + "sts:GetCallerIdentity" + ] + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "odb:TagResource", + "odb:UntagResource", + "odb:ListTagsForResource" + ] + }, + "attributes": { + "CloudVmClusterArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the VM cluster.", + "markdownDescription": "The Amazon Resource Name (ARN) of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CloudVmClusterId": { + "type": "string", + "description": "The unique identifier of the VM cluster.", + "markdownDescription": "The unique identifier of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ComputeModel": { + "type": "string", + "description": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.", + "markdownDescription": "The OCI model compute model used when you create or clone an instance: ECPU or OCPU. An ECPU is an abstracted measure of compute resources. ECPUs are based on the number of cores elastically allocated from a pool of compute and storage servers. An OCPU is a legacy physical measure of compute resources. OCPUs are based on the physical core of a processor with hyper-threading enabled.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DiskRedundancy": { + "type": "string", + "description": "The type of redundancy configured for the VM cluster. NORMAL is 2-way redundancy. HIGH is 3-way redundancy.", + "markdownDescription": "The type of redundancy configured for the VM cluster. NORMAL is 2-way redundancy. HIGH is 3-way redundancy.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Domain": { + "type": "string", + "description": "The domain of the VM cluster.", + "markdownDescription": "The domain of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ListenerPort": { + "type": "integer", + "description": "The port number configured for the listener on the VM cluster.", + "markdownDescription": "The port number configured for the listener on the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "NodeCount": { + "type": "integer", + "description": "The number of nodes in the VM cluster.", + "markdownDescription": "The number of nodes in the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Ocid": { + "type": "string", + "description": "The OCID of the VM cluster.", + "markdownDescription": "The OCID of the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor for the VM cluster.", + "markdownDescription": "The name of the OCI resource anchor for the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciUrl": { + "type": "string", + "description": "The HTTPS link to the VM cluster in OCI.", + "markdownDescription": "The HTTPS link to the VM cluster in OCI.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ScanDnsName": { + "type": "string", + "description": "The FQDN of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.", + "markdownDescription": "The FQDN of the DNS record for the Single Client Access Name (SCAN) IP addresses that are associated with the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ScanIpIds": { + "type": "array", + "description": "The OCID of the SCAN IP addresses that are associated with the VM cluster.", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The OCID of the SCAN IP addresses that are associated with the VM cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Shape": { + "type": "string", + "description": "The hardware model name of the Exadata infrastructure that's running the VM cluster.", + "markdownDescription": "The hardware model name of the Exadata infrastructure that's running the VM cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StorageSizeInGBs": { + "type": "integer", + "description": "The amount of local node storage, in gigabytes (GB), that's allocated to the VM cluster.", + "markdownDescription": "The amount of local node storage, in gigabytes (GB), that's allocated to the VM cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "VipIds": { + "type": "array", + "description": "The virtual IP (VIP) addresses that are associated with the VM cluster. Oracle's Cluster Ready Services (CRS) creates and maintains one VIP address for each node in the VM cluster to enable failover. If one node fails, the VIP is reassigned to another active node in the cluster.", + "uniqueItems": false, + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The virtual IP (VIP) addresses that are associated with the VM cluster. Oracle's Cluster Ready Services (CRS) creates and maintains one VIP address for each node in the VM cluster to enable failover. If one node fails, the VIP is reassigned to another active node in the cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-odb-odbnetwork.json b/server/schema/resources/aws-odb-odbnetwork.json new file mode 100644 index 00000000..6bd6ebd7 --- /dev/null +++ b/server/schema/resources/aws-odb-odbnetwork.json @@ -0,0 +1,278 @@ +{ + "typeName": "AWS::ODB::OdbNetwork", + "description": "The AWS::ODB::OdbNetwork resource creates an ODB Network", + "definitions": { + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that's 1 to 128 Unicode characters in length and can't be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., :, /, =, +, @, -, and \".\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that's 1 to 256 characters in length. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key" + ], + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "AvailabilityZone": { + "type": "string", + "description": "The AWS Availability Zone (AZ) where the ODB network is located.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The AWS Availability Zone (AZ) where the ODB network is located.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "AvailabilityZoneId": { + "type": "string", + "description": "The AZ ID of the AZ where the ODB network is located.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The AZ ID of the AZ where the ODB network is located.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "BackupSubnetCidr": { + "type": "string", + "description": "The CIDR range of the backup subnet in the ODB network.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The CIDR range of the backup subnet in the ODB network.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "ClientSubnetCidr": { + "type": "string", + "description": "The CIDR range of the client subnet in the ODB network.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The CIDR range of the client subnet in the ODB network.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "DefaultDnsPrefix": { + "type": "string", + "description": "The DNS prefix to the default DNS domain name. The default DNS domain name is oraclevcn.com.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The DNS prefix to the default DNS domain name. The default DNS domain name is oraclevcn.com.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: Replacement\n" + }, + "DeleteAssociatedResources": { + "type": "boolean", + "description": "Specifies whether to delete associated OCI networking resources along with the ODB network.", + "markdownDescription": "Specifies whether to delete associated OCI networking resources along with the ODB network.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "DisplayName": { + "type": "string", + "description": "The user-friendly name of the ODB network.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The user-friendly name of the ODB network.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^[a-zA-Z_](?!.*--)[a-zA-Z0-9_-]*$ \nUpdate requires: Replacement\n" + }, + "OciNetworkAnchorId": { + "type": "string", + "description": "The unique identifier of the OCI network anchor for the ODB network.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The unique identifier of the OCI network anchor for the ODB network.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor that's associated with the ODB network.", + "markdownDescription": "The name of the OCI resource anchor that's associated with the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciVcnUrl": { + "type": "string", + "description": "The URL for the VCN that's associated with the ODB network.", + "markdownDescription": "The URL for the VCN that's associated with the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OdbNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the ODB network.", + "markdownDescription": "The Amazon Resource Name (ARN) of the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OdbNetworkId": { + "type": "string", + "description": "The unique identifier of the ODB network.", + "markdownDescription": "The unique identifier of the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "type": "array", + "description": "Tags to assign to the Odb Network.", + "insertionOrder": false, + "uniqueItems": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "Tags to assign to the Odb Network.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AvailabilityZone", + "/properties/AvailabilityZoneId", + "/properties/BackupSubnetCidr", + "/properties/ClientSubnetCidr", + "/properties/DefaultDnsPrefix", + "/properties/DisplayName" + ], + "readOnlyProperties": [ + "/properties/OciNetworkAnchorId", + "/properties/OciResourceAnchorName", + "/properties/OciVcnUrl", + "/properties/OdbNetworkArn", + "/properties/OdbNetworkId" + ], + "writeOnlyProperties": [ + "/properties/DeleteAssociatedResources", + "/properties/DefaultDnsPrefix" + ], + "primaryIdentifier": [ + "/properties/OdbNetworkArn" + ], + "handlers": { + "create": { + "permissions": [ + "odb:CreateOdbNetwork", + "odb:TagResource", + "ec2:DescribeAvailabilityZones", + "iam:CreateServiceLinkedRole", + "ec2:DescribeVpcs", + "ec2:CreateOdbNetworkPeering", + "odb:ListTagsForResource", + "sts:GetCallerIdentity", + "odb:GetOdbNetwork", + "odb:ListOdbNetworks", + "odb:UpdateOdbNetwork", + "vpc-lattice:CreateServiceNetwork", + "vpc-lattice:GetServiceNetwork", + "vpc-lattice:CreateServiceNetworkResourceAssociation", + "vpc-lattice:GetServiceNetworkResourceAssociation", + "vpc-lattice:CreateResourceGateway", + "vpc-lattice:GetResourceGateway", + "vpc-lattice:CreateServiceNetworkVpcEndpointAssociation", + "redshiftchannelmanagement:CreateChannel", + "ec2:ModifyOdbNetworkPeering", + "ec2:DescribeVpcEndpointAssociations", + "ec2:CreateVpcEndpoint", + "ec2:DescribeVpcEndpoints", + "ec2:CreateTags" + ], + "timeoutInMinutes": 2160 + }, + "read": { + "permissions": [ + "odb:GetOdbNetwork", + "odb:ListOdbNetworks", + "odb:ListTagsForResource", + "sts:GetCallerIdentity", + "vpc-lattice:GetServiceNetwork", + "vpc-lattice:GetServiceNetworkResourceAssociation", + "vpc-lattice:GetResourceGateway", + "ec2:DescribeVpcEndpointAssociations", + "ec2:DescribeVpcEndpoints" + ] + }, + "update": { + "permissions": [ + "odb:UpdateOdbNetwork", + "odb:TagResource", + "odb:UntagResource", + "ec2:DescribeVpcs", + "ec2:CreateOdbNetworkPeering", + "ec2:DeleteOdbNetworkPeering", + "odb:ListTagsForResource", + "sts:GetCallerIdentity", + "odb:GetOdbNetwork", + "odb:ListOdbNetworks", + "vpc-lattice:GetServiceNetwork", + "vpc-lattice:GetServiceNetworkResourceAssociation", + "vpc-lattice:GetResourceGateway", + "ec2:DescribeVpcEndpointAssociations", + "ec2:DescribeVpcEndpoints" + ] + }, + "delete": { + "permissions": [ + "odb:DeleteOdbNetwork", + "ec2:DeleteOdbNetworkPeering", + "ec2:DescribeVpcs", + "odb:ListTagsForResource", + "sts:GetCallerIdentity", + "odb:GetOdbNetwork", + "odb:ListOdbNetworks", + "vpc-lattice:DeleteServiceNetwork", + "vpc-lattice:GetServiceNetwork", + "vpc-lattice:DeleteServiceNetworkResourceAssociation", + "vpc-lattice:GetServiceNetworkResourceAssociation", + "vpc-lattice:DeleteResourceGateway", + "vpc-lattice:GetResourceGateway", + "ec2:ModifyOdbNetworkPeering", + "ec2:DescribeVpcEndpointAssociations", + "ec2:DeleteVpcEndpoints", + "ec2:DescribeVpcEndpoints" + ], + "timeoutInMinutes": 2160 + }, + "list": { + "permissions": [ + "odb:ListOdbNetworks", + "odb:ListTagsForResource", + "sts:GetCallerIdentity", + "vpc-lattice:GetServiceNetwork", + "vpc-lattice:GetServiceNetworkResourceAssociation", + "vpc-lattice:GetResourceGateway", + "ec2:DescribeVpcEndpointAssociations", + "ec2:DescribeVpcEndpoints" + ] + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "odb:TagResource", + "odb:UntagResource", + "odb:ListTagsForResource" + ] + }, + "attributes": { + "OciNetworkAnchorId": { + "type": "string", + "description": "The unique identifier of the OCI network anchor for the ODB network.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The unique identifier of the OCI network anchor for the ODB network.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciResourceAnchorName": { + "type": "string", + "description": "The name of the OCI resource anchor that's associated with the ODB network.", + "markdownDescription": "The name of the OCI resource anchor that's associated with the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OciVcnUrl": { + "type": "string", + "description": "The URL for the VCN that's associated with the ODB network.", + "markdownDescription": "The URL for the VCN that's associated with the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OdbNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the ODB network.", + "markdownDescription": "The Amazon Resource Name (ARN) of the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "OdbNetworkId": { + "type": "string", + "description": "The unique identifier of the ODB network.", + "markdownDescription": "The unique identifier of the ODB network.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-opensearchservice-domain.json b/server/schema/resources/aws-opensearchservice-domain.json index d384eafa..a9545c12 100644 --- a/server/schema/resources/aws-opensearchservice-domain.json +++ b/server/schema/resources/aws-opensearchservice-domain.json @@ -319,6 +319,25 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "IAMFederationOptions": { + "type": "object", + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "RolesKey": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "SubjectKey": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "AdvancedSecurityOptionsInput": { "type": "object", "additionalProperties": false, @@ -344,6 +363,9 @@ "JWTOptions": { "$ref": "#/definitions/JWTOptions" }, + "IAMFederationOptions": { + "$ref": "#/definitions/IAMFederationOptions" + }, "AnonymousAuthDisableDate": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -706,6 +728,9 @@ "$ref": "#/definitions/IdentityCenterOptions" } }, + "propertyTransform": { + "/properties/EncryptionAtRestOptions/KmsKeyId": "$split(EncryptionAtRestOptions.KmsKeyId, \"/\")[-1] $OR EncryptionAtRestOptions.KmsKeyId" + }, "tagging": { "taggable": true, "tagOnCreate": true, diff --git a/server/schema/resources/aws-opsworkscm-server.json b/server/schema/resources/aws-opsworkscm-server.json deleted file mode 100644 index 5520b2cf..00000000 --- a/server/schema/resources/aws-opsworkscm-server.json +++ /dev/null @@ -1,205 +0,0 @@ -{ - "typeName": "AWS::OpsWorksCM::Server", - "description": "Resource Type definition for AWS::OpsWorksCM::Server", - "additionalProperties": false, - "properties": { - "KeyPair": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "EngineVersion": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "ServiceRoleArn": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" - }, - "DisableAutomatedBackup": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "BackupId": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "EngineModel": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "PreferredMaintenanceWindow": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "AssociatePublicIpAddress": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Replacement\n" - }, - "InstanceProfileArn": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" - }, - "CustomCertificate": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "PreferredBackupWindow": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "SecurityGroupIds": { - "type": "array", - "uniqueItems": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" - }, - "SubnetIds": { - "type": "array", - "uniqueItems": false, - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" - }, - "CustomDomain": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "Endpoint": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "CustomPrivateKey": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "ServerName": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "EngineAttributes": { - "type": "array", - "uniqueItems": false, - "items": { - "$ref": "#/definitions/EngineAttribute" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "BackupRetentionCount": { - "type": "integer", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "Id": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "Arn": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "InstanceType": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" - }, - "Tags": { - "type": "array", - "uniqueItems": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Engine": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - } - }, - "definitions": { - "EngineAttribute": { - "type": "object", - "additionalProperties": false, - "properties": { - "Value": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "Name": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "Tag": { - "type": "object", - "additionalProperties": false, - "properties": { - "Value": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, - "Key": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Value", - "Key" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - } - }, - "required": [ - "ServiceRoleArn", - "InstanceProfileArn", - "InstanceType" - ], - "createOnlyProperties": [ - "/properties/KeyPair", - "/properties/CustomPrivateKey", - "/properties/ServiceRoleArn", - "/properties/InstanceType", - "/properties/CustomCertificate", - "/properties/CustomDomain", - "/properties/InstanceProfileArn", - "/properties/SecurityGroupIds", - "/properties/SubnetIds", - "/properties/BackupId", - "/properties/EngineModel", - "/properties/AssociatePublicIpAddress", - "/properties/EngineVersion", - "/properties/Engine" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "readOnlyProperties": [ - "/properties/Id", - "/properties/ServerName", - "/properties/Endpoint", - "/properties/Arn" - ], - "attributes": { - "Endpoint": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "ServerName": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "Id": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "Arn": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - } - } -} \ No newline at end of file diff --git a/server/schema/resources/aws-organizations-policy.json b/server/schema/resources/aws-organizations-policy.json index d8ff0a88..31de0084 100644 --- a/server/schema/resources/aws-organizations-policy.json +++ b/server/schema/resources/aws-organizations-policy.json @@ -11,7 +11,7 @@ "markdownDescription": "Name of the Policy\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: [\\s\\S]* \nUpdate requires: No interruption\n" }, "Type": { - "description": "The type of policy to create. You can specify one of the following values: AISERVICES_OPT_OUT_POLICY, BACKUP_POLICY, SERVICE_CONTROL_POLICY, TAG_POLICY, CHATBOT_POLICY, RESOURCE_CONTROL_POLICY,DECLARATIVE_POLICY_EC2", + "description": "The type of policy to create. You can specify one of the following values: AISERVICES_OPT_OUT_POLICY, BACKUP_POLICY, SERVICE_CONTROL_POLICY, TAG_POLICY, CHATBOT_POLICY, RESOURCE_CONTROL_POLICY,DECLARATIVE_POLICY_EC2, SECURITYHUB_POLICY", "type": "string", "enum": [ "SERVICE_CONTROL_POLICY", @@ -20,9 +20,10 @@ "TAG_POLICY", "CHATBOT_POLICY", "RESOURCE_CONTROL_POLICY", - "DECLARATIVE_POLICY_EC2" + "DECLARATIVE_POLICY_EC2", + "SECURITYHUB_POLICY" ], - "markdownDescription": "The type of policy to create. You can specify one of the following values: AISERVICES_OPT_OUT_POLICY, BACKUP_POLICY, SERVICE_CONTROL_POLICY, TAG_POLICY, CHATBOT_POLICY, RESOURCE_CONTROL_POLICY,DECLARATIVE_POLICY_EC2\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: SERVICE_CONTROL_POLICY | AISERVICES_OPT_OUT_POLICY | BACKUP_POLICY | TAG_POLICY | CHATBOT_POLICY | RESOURCE_CONTROL_POLICY | DECLARATIVE_POLICY_EC2 \nUpdate requires: Replacement\n" + "markdownDescription": "The type of policy to create. You can specify one of the following values: AISERVICES_OPT_OUT_POLICY, BACKUP_POLICY, SERVICE_CONTROL_POLICY, TAG_POLICY, CHATBOT_POLICY, RESOURCE_CONTROL_POLICY,DECLARATIVE_POLICY_EC2, SECURITYHUB_POLICY\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: SERVICE_CONTROL_POLICY | AISERVICES_OPT_OUT_POLICY | BACKUP_POLICY | TAG_POLICY | CHATBOT_POLICY | RESOURCE_CONTROL_POLICY | DECLARATIVE_POLICY_EC2 | SECURITYHUB_POLICY \nUpdate requires: Replacement\n" }, "Content": { "description": "The Policy text content. For AWS CloudFormation templates formatted in YAML, you can provide the policy in JSON or YAML format. AWS CloudFormation always converts a YAML policy to JSON format before submitting it.", diff --git a/server/schema/resources/aws-pcs-cluster.json b/server/schema/resources/aws-pcs-cluster.json index 4c91b95d..7f0d788a 100644 --- a/server/schema/resources/aws-pcs-cluster.json +++ b/server/schema/resources/aws-pcs-cluster.json @@ -67,6 +67,11 @@ "description": "The endpoint's private IP address.", "markdownDescription": "The endpoint's private IP address.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, + "Ipv6Address": { + "type": "string", + "description": "The endpoint's IPv6 address.", + "markdownDescription": "The endpoint's IPv6 address.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "Type": { "type": "string", "description": "Indicates the type of endpoint running at the specific IP address.", @@ -221,6 +226,16 @@ "$ref": "#/definitions/SubnetId" }, "markdownDescription": "The list of subnet IDs where AWS PCS creates an Elastic Network Interface (ENI) to enable communication between managed controllers and AWS PCS resources. The subnet must have an available IP address, cannot reside in AWS Outposts, AWS Wavelength, or an AWS Local Zone. AWS PCS currently supports only 1 subnet in this list.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "NetworkType": { + "type": "string", + "description": "The IP of the cluster (IPV4 or IPV6)", + "enum": [ + "IPV4", + "IPV6" + ], + "insertionOrder": false, + "markdownDescription": "The IP of the cluster (IPV4 or IPV6)\n\n---\n\nRequired: No \nType: String \nAllowed Values: IPV4 | IPV6 \nUpdate requires: No interruption\n" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-qbusiness-dataaccessor.json b/server/schema/resources/aws-qbusiness-dataaccessor.json index 218fd09b..5b49d82c 100644 --- a/server/schema/resources/aws-qbusiness-dataaccessor.json +++ b/server/schema/resources/aws-qbusiness-dataaccessor.json @@ -77,6 +77,75 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "DataAccessorAuthenticationConfiguration": { + "oneOf": [ + { + "type": "object", + "title": "IdcTrustedTokenIssuerConfiguration", + "properties": { + "IdcTrustedTokenIssuerConfiguration": { + "$ref": "#/definitions/DataAccessorIdcTrustedTokenIssuerConfiguration" + } + }, + "required": [ + "IdcTrustedTokenIssuerConfiguration" + ], + "additionalProperties": false + } + ] + }, + "DataAccessorAuthenticationDetail": { + "type": "object", + "properties": { + "AuthenticationType": { + "$ref": "#/definitions/DataAccessorAuthenticationType" + }, + "AuthenticationConfiguration": { + "$ref": "#/definitions/DataAccessorAuthenticationConfiguration" + }, + "ExternalIds": { + "type": "array", + "items": { + "type": "string", + "maxLength": 1000, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1000 \nPattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*$ \nUpdate requires: No interruption\n" + }, + "maxItems": 1, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "AuthenticationType" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DataAccessorAuthenticationType": { + "type": "string", + "enum": [ + "AWS_IAM_IDC_TTI", + "AWS_IAM_IDC_AUTH_CODE" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: AWS_IAM_IDC_TTI | AWS_IAM_IDC_AUTH_CODE \nUpdate requires: No interruption\n" + }, + "DataAccessorIdcTrustedTokenIssuerConfiguration": { + "type": "object", + "properties": { + "IdcTrustedTokenIssuerArn": { + "type": "string", + "maxLength": 1284, + "minLength": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1284 \nPattern: ^arn:aws:sso::[0-9]{12}:trustedTokenIssuer/(sso)?ins-[a-zA-Z0-9-.]{16}/tti-[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "IdcTrustedTokenIssuerArn" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DocumentAttribute": { "type": "object", "properties": { @@ -205,6 +274,9 @@ "minLength": 36, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 36 \nMaximum Length: 36 \nPattern: ^[a-zA-Z0-9][a-zA-Z0-9-]{35}$ \nUpdate requires: Replacement\n" }, + "AuthenticationDetail": { + "$ref": "#/definitions/DataAccessorAuthenticationDetail" + }, "CreatedAt": { "type": "string", "format": "date-time", @@ -282,11 +354,13 @@ "qbusiness:CreateDataAccessor", "qbusiness:GetDataAccessor", "qbusiness:ListTagsForResource", + "qbusiness:CreateDataAccessorWithTti", "qbusiness:TagResource", "sso:CreateApplication", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant", - "sso:PutApplicationAccessScope" + "sso:PutApplicationAccessScope", + "sso:DescribeTrustedTokenIssuer" ] }, "read": { @@ -304,7 +378,9 @@ "qbusiness:UpdateDataAccessor", "sso:PutApplicationAuthenticationMethod", "sso:PutApplicationGrant", - "sso:PutApplicationAccessScope" + "sso:PutApplicationAccessScope", + "sso:DescribeTrustedTokenIssuer", + "sso:UpdateApplication" ] }, "delete": { diff --git a/server/schema/resources/aws-qbusiness-permission.json b/server/schema/resources/aws-qbusiness-permission.json index 975a7ef0..da514d1d 100644 --- a/server/schema/resources/aws-qbusiness-permission.json +++ b/server/schema/resources/aws-qbusiness-permission.json @@ -1,6 +1,41 @@ { "typeName": "AWS::QBusiness::Permission", "description": "Definition of AWS::QBusiness::Permission Resource Type", + "definitions": { + "Condition": { + "type": "object", + "properties": { + "ConditionOperator": { + "type": "string", + "enum": [ + "StringEquals" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: StringEquals \nUpdate requires: No interruption\n" + }, + "ConditionKey": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^aws:PrincipalTag/qbusiness-dataaccessor:[a-zA-Z]+ \nUpdate requires: No interruption\n" + }, + "ConditionValues": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nPattern: ^[a-zA-Z0-9][a-zA-Z0-9_-]*$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ConditionOperator", + "ConditionKey", + "ConditionValues" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, "properties": { "ApplicationId": { "type": "string", @@ -24,6 +59,15 @@ "minItems": 1, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: Replacement\n" }, + "Conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/Condition" + }, + "minItems": 1, + "maxItems": 10, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, "Principal": { "type": "string", "maxLength": 1284, @@ -41,7 +85,8 @@ "/properties/ApplicationId", "/properties/StatementId", "/properties/Actions", - "/properties/Principal" + "/properties/Principal", + "/properties/Conditions" ], "primaryIdentifier": [ "/properties/ApplicationId", diff --git a/server/schema/resources/aws-quicksight-custompermissions.json b/server/schema/resources/aws-quicksight-custompermissions.json index 476e2f7d..93ab3f48 100644 --- a/server/schema/resources/aws-quicksight-custompermissions.json +++ b/server/schema/resources/aws-quicksight-custompermissions.json @@ -11,6 +11,12 @@ "ExportToExcel": { "$ref": "#/definitions/CapabilityState" }, + "ExportToPdf": { + "$ref": "#/definitions/CapabilityState" + }, + "PrintReports": { + "$ref": "#/definitions/CapabilityState" + }, "CreateAndUpdateThemes": { "$ref": "#/definitions/CapabilityState" }, @@ -55,6 +61,18 @@ }, "CreateSPICEDataset": { "$ref": "#/definitions/CapabilityState" + }, + "ExportToPdfInScheduledReports": { + "$ref": "#/definitions/CapabilityState" + }, + "ExportToCsvInScheduledReports": { + "$ref": "#/definitions/CapabilityState" + }, + "ExportToExcelInScheduledReports": { + "$ref": "#/definitions/CapabilityState" + }, + "IncludeContentInScheduledReportsEmail": { + "$ref": "#/definitions/CapabilityState" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-quicksight-dataset.json b/server/schema/resources/aws-quicksight-dataset.json index baadfb68..28ecd94f 100644 --- a/server/schema/resources/aws-quicksight-dataset.json +++ b/server/schema/resources/aws-quicksight-dataset.json @@ -117,7 +117,7 @@ "ColumnName": { "description": "

The column name that a tag key is assigned to.

", "type": "string", - "markdownDescription": "

The column name that a tag key is assigned to.

\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "

The column name that a tag key is assigned to.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "TagKey": { "minLength": 1, @@ -142,7 +142,6 @@ } }, "required": [ - "ColumnName", "TagKey" ], "markdownDescription": "

A set of rules associated with a tag.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -238,7 +237,7 @@ "markdownDescription": "

The Amazon Resource Name (ARN) for the data source.

\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "InputColumns": { - "minItems": 1, + "minItems": 0, "maxItems": 2048, "description": "

The column schema of the table.

", "type": "array", @@ -645,12 +644,9 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "markdownDescription": "

Projected columns.

\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "

Projected columns.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "required": [ - "ProjectedColumns" - ], "markdownDescription": "

A transform operation that projects columns. Operations that come after a projection\n can only refer to projected columns.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "IntegerDatasetParameter": { @@ -829,12 +825,9 @@ "description": "

An expression that must evaluate to a Boolean value. Rows for which the expression\n evaluates to true are kept in the dataset.

", "type": "string", "maxLength": 4096, - "markdownDescription": "

An expression that must evaluate to a Boolean value. Rows for which the expression\n evaluates to true are kept in the dataset.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" + "markdownDescription": "

An expression that must evaluate to a Boolean value. Rows for which the expression\n evaluates to true are kept in the dataset.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" } }, - "required": [ - "ConditionExpression" - ], "markdownDescription": "

A transform operation that filters rows based on a condition.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "ColumnLevelPermissionRule": { @@ -876,7 +869,7 @@ "description": "

Column name.

", "type": "string", "maxLength": 127, - "markdownDescription": "

Column name.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" + "markdownDescription": "

Column name.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" }, "SubType": { "$ref": "#/definitions/ColumnDataSubType" @@ -893,7 +886,6 @@ } }, "required": [ - "ColumnName", "NewColumnType" ], "markdownDescription": "

A transform operation that casts a column to a different type.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -952,7 +944,7 @@ "properties": { "Columns": { "minItems": 0, - "maxItems": 128, + "maxItems": 256, "description": "

Calculated columns to create.

", "type": "array", "items": { @@ -1117,7 +1109,7 @@ "markdownDescription": "

The Amazon Resource Name (ARN) for the data source.

\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, "InputColumns": { - "minItems": 1, + "minItems": 0, "maxItems": 2048, "description": "

A physical table type for an S3 data source.

\n \n

For files that aren't JSON, only STRING data types are supported in input columns.

\n
", "type": "array", @@ -1323,12 +1315,9 @@ "description": "

The name of the column to be renamed.

", "type": "string", "maxLength": 127, - "markdownDescription": "

The name of the column to be renamed.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" + "markdownDescription": "

The name of the column to be renamed.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" } }, - "required": [ - "ColumnName" - ], "markdownDescription": "

A transform operation that renames a column.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "FieldFolderMap": { @@ -1515,12 +1504,9 @@ "maxLength": 127, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nUpdate requires: No interruption\n" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "required": [ - "ColumnNames" - ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "GeoSpatialDataRole": { @@ -1649,7 +1635,7 @@ "markdownDescription": "

The SQL query.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 168000 \nUpdate requires: No interruption\n" }, "Columns": { - "minItems": 1, + "minItems": 0, "maxItems": 2048, "description": "

The column schema from the SQL query result set.

", "type": "array", diff --git a/server/schema/resources/aws-quicksight-datasource.json b/server/schema/resources/aws-quicksight-datasource.json index 621500b6..63bc63e5 100644 --- a/server/schema/resources/aws-quicksight-datasource.json +++ b/server/schema/resources/aws-quicksight-datasource.json @@ -1,125 +1,150 @@ { + "tagging": { + "permissions": [ + "quicksight:TagResource", + "quicksight:UntagResource", + "quicksight:ListTagsForResource" + ], + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": true + }, "typeName": "AWS::QuickSight::DataSource", + "readOnlyProperties": [ + "/properties/Arn", + "/properties/CreatedTime", + "/properties/LastUpdatedTime", + "/properties/Status" + ], "description": "Definition of the AWS::QuickSight::DataSource Resource Type.", - "definitions": { - "AmazonElasticsearchParameters": { - "type": "object", - "description": "

The parameters for OpenSearch.

", - "properties": { - "Domain": { - "type": "string", - "maxLength": 64, - "minLength": 1, - "description": "

The OpenSearch domain.

", - "markdownDescription": "

The OpenSearch domain.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Domain" - ], - "additionalProperties": false, - "markdownDescription": "

The parameters for OpenSearch.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "createOnlyProperties": [ + "/properties/AwsAccountId", + "/properties/DataSourceId", + "/properties/Type" + ], + "primaryIdentifier": [ + "/properties/AwsAccountId", + "/properties/DataSourceId" + ], + "required": [ + "Name", + "Type" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-quicksight", + "handlers": { + "read": { + "permissions": [ + "quicksight:DescribeDataSource", + "quicksight:DescribeDataSourcePermissions", + "quicksight:ListTagsForResource" + ] }, - "AmazonOpenSearchParameters": { - "type": "object", - "description": "

The parameters for OpenSearch.

", - "properties": { - "Domain": { - "type": "string", - "maxLength": 64, - "minLength": 1, - "description": "

The OpenSearch domain.

", - "markdownDescription": "

The OpenSearch domain.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Domain" - ], - "additionalProperties": false, - "markdownDescription": "

The parameters for OpenSearch.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "create": { + "permissions": [ + "quicksight:CreateDataSource", + "quicksight:DescribeDataSource", + "quicksight:DescribeDataSourcePermissions", + "quicksight:TagResource", + "quicksight:ListTagsForResource", + "quicksight:CreateFolderMembership", + "quicksight:DeleteFolderMembership", + "quicksight:ListFoldersForResource" + ] }, - "AthenaParameters": { - "type": "object", - "description": "

Parameters for Amazon Athena.

", - "properties": { - "WorkGroup": { - "type": "string", - "maxLength": 128, - "minLength": 1, - "description": "

The workgroup that Amazon Athena uses.

", - "markdownDescription": "

The workgroup that Amazon Athena uses.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "RoleArn": { - "type": "string", - "maxLength": 2048, - "minLength": 20, - "description": "

Use the RoleArn structure to override an account-wide role for a specific Athena data source. For example, say an account administrator has turned off all Athena access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow Athena access for the single Athena data source that is specified in the structure, even if the account-wide role forbidding Athena access is still active.

", - "markdownDescription": "

Use the RoleArn structure to override an account-wide role for a specific Athena data source. For example, say an account administrator has turned off all Athena access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow Athena access for the single Athena data source that is specified in the structure, even if the account-wide role forbidding Athena access is still active.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" - } - }, - "additionalProperties": false, - "markdownDescription": "

Parameters for Amazon Athena.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "update": { + "permissions": [ + "quicksight:DescribeDataSource", + "quicksight:DescribeDataSourcePermissions", + "quicksight:UpdateDataSource", + "quicksight:UpdateDataSourcePermissions", + "quicksight:CreateFolderMembership", + "quicksight:DeleteFolderMembership", + "quicksight:ListFoldersForResource", + "quicksight:TagResource", + "quicksight:UntagResource", + "quicksight:ListTagsForResource" + ] }, - "AuroraParameters": { + "list": { + "permissions": [ + "quicksight:DescribeDataSource", + "quicksight:ListDataSources" + ] + }, + "delete": { + "permissions": [ + "quicksight:DescribeDataSource", + "quicksight:DescribeDataSourcePermissions", + "quicksight:DeleteDataSource", + "quicksight:ListTagsForResource" + ] + } + }, + "writeOnlyProperties": [ + "/properties/Credentials", + "/properties/FolderArns" + ], + "additionalProperties": false, + "definitions": { + "ImpalaParameters": { + "additionalProperties": false, "type": "object", - "description": "

Parameters for Amazon Aurora.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Port": { - "type": "number", "default": 0, "maximum": 65535, + "type": "number", "minimum": 1, - "description": "

Port.

", - "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, - "Database": { + "Host": { + "minLength": 1, "type": "string", - "maxLength": 128, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "SqlEndpointPath": { "minLength": 1, - "description": "

Database.

", - "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 4096, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" } }, "required": [ - "Database", "Host", - "Port" + "Port", + "SqlEndpointPath" ], - "additionalProperties": false, - "markdownDescription": "

Parameters for Amazon Aurora.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "AuroraPostgreSqlParameters": { - "type": "object", "description": "

Parameters for Amazon Aurora PostgreSQL-Compatible Edition.

", + "additionalProperties": false, + "type": "object", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

The Amazon Aurora PostgreSQL-Compatible host to connect to.

", - "markdownDescription": "

The Amazon Aurora PostgreSQL-Compatible host to connect to.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Port": { - "type": "number", "default": 0, "maximum": 65535, - "minimum": 1, "description": "

The port that Amazon Aurora PostgreSQL is listening on.

", + "type": "number", + "minimum": 1, "markdownDescription": "

The port that Amazon Aurora PostgreSQL is listening on.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, "Database": { - "type": "string", - "maxLength": 128, "minLength": 1, "description": "

The Amazon Aurora PostgreSQL database to connect to.

", + "type": "string", + "maxLength": 128, "markdownDescription": "

The Amazon Aurora PostgreSQL database to connect to.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Host": { + "minLength": 1, + "description": "

The Amazon Aurora PostgreSQL-Compatible host to connect to.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

The Amazon Aurora PostgreSQL-Compatible host to connect to.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ @@ -127,192 +152,214 @@ "Host", "Port" ], - "additionalProperties": false, "markdownDescription": "

Parameters for Amazon Aurora PostgreSQL-Compatible Edition.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AuthenticationType": { - "type": "string", - "enum": [ - "PASSWORD", - "TOKEN", - "X509" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: PASSWORD | TOKEN | X509 \nUpdate requires: No interruption\n" - }, - "AwsIotAnalyticsParameters": { + "DataSourceCredentials": { + "description": "

Data source credentials. This is a variant type structure. For this structure to be\n valid, only one of the attributes can be non-null.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for IoT Analytics.

", "properties": { - "DataSetName": { - "type": "string", - "maxLength": 128, + "SecretArn": { "minLength": 1, - "description": "

Dataset name.

", - "markdownDescription": "

Dataset name.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "description": "

The Amazon Resource Name (ARN) of the secret associated with the data source in Amazon Secrets Manager.

", + "type": "string", + "maxLength": 2048, + "markdownDescription": "

The Amazon Resource Name (ARN) of the secret associated with the data source in Amazon Secrets Manager.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: ^arn:[-a-z0-9]*:secretsmanager:[-a-z0-9]*:[0-9]{12}:secret:.+$ \nUpdate requires: No interruption\n" + }, + "CopySourceArn": { + "description": "

The Amazon Resource Name (ARN) of a data source that has the credential pair that you\n want to use. When CopySourceArn is not null, the credential pair from the\n data source in the ARN is used as the credentials for the\n DataSourceCredentials structure.

", + "type": "string", + "markdownDescription": "

The Amazon Resource Name (ARN) of a data source that has the credential pair that you\n want to use. When CopySourceArn is not null, the credential pair from the\n data source in the ARN is used as the credentials for the\n DataSourceCredentials structure.

\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:[-a-z0-9]*:quicksight:[-a-z0-9]*:[0-9]{12}:datasource/.+$ \nUpdate requires: No interruption\n" + }, + "CredentialPair": { + "$ref": "#/definitions/CredentialPair" } }, - "required": [ - "DataSetName" - ], - "additionalProperties": false, - "markdownDescription": "

The parameters for IoT Analytics.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

Data source credentials. This is a variant type structure. For this structure to be\n valid, only one of the attributes can be non-null.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "CredentialPair": { + "ManifestFileLocation": { + "description": "

Amazon S3 manifest file location.

", + "additionalProperties": false, "type": "object", - "description": "

The combination of user name and password that are used as credentials.

", "properties": { - "Username": { - "type": "string", - "maxLength": 64, + "Bucket": { "minLength": 1, - "description": "

User name.

", - "markdownDescription": "

User name.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - }, - "Password": { + "description": "

Amazon S3 bucket.

", "type": "string", "maxLength": 1024, - "minLength": 1, - "description": "

Password.

", - "markdownDescription": "

Password.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + "markdownDescription": "

Amazon S3 bucket.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" }, - "AlternateDataSourceParameters": { - "type": "array", - "items": { - "$ref": "#/definitions/DataSourceParameters" - }, - "maxItems": 50, - "minItems": 1, - "description": "

A set of alternate data source parameters that you want to share for these\n credentials. The credentials are applied in tandem with the data source parameters when\n you copy a data source by using a create or update request. The API operation compares\n the DataSourceParameters structure that's in the request with the\n structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the new data source with\n the existing credentials. If the AlternateDataSourceParameters list is\n null, the DataSourceParameters originally used with these\n Credentials is automatically allowed.

", - "markdownDescription": "

A set of alternate data source parameters that you want to share for these\n credentials. The credentials are applied in tandem with the data source parameters when\n you copy a data source by using a create or update request. The API operation compares\n the DataSourceParameters structure that's in the request with the\n structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the new data source with\n the existing credentials. If the AlternateDataSourceParameters list is\n null, the DataSourceParameters originally used with these\n Credentials is automatically allowed.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "Key": { + "minLength": 1, + "description": "

Amazon S3 key that identifies an object.

", + "type": "string", + "maxLength": 1024, + "markdownDescription": "

Amazon S3 key that identifies an object.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" } }, "required": [ - "Password", - "Username" + "Bucket", + "Key" ], - "additionalProperties": false, - "markdownDescription": "

The combination of user name and password that are used as credentials.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

Amazon S3 manifest file location.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DataSourceCredentials": { + "StarburstParameters": { + "description": "

The parameters that are required to connect to a Starburst data source.

", + "additionalProperties": false, "type": "object", - "description": "

Data source credentials. This is a variant type structure. For this structure to be\n valid, only one of the attributes can be non-null.

", "properties": { - "CredentialPair": { - "$ref": "#/definitions/CredentialPair" + "Port": { + "default": 0, + "maximum": 65535, + "description": "

The port for the Starburst data source.

", + "type": "number", + "minimum": 1, + "markdownDescription": "

The port for the Starburst data source.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, - "CopySourceArn": { + "DatabaseAccessControlRole": { + "minLength": 0, "type": "string", - "description": "

The Amazon Resource Name (ARN) of a data source that has the credential pair that you\n want to use. When CopySourceArn is not null, the credential pair from the\n data source in the ARN is used as the credentials for the\n DataSourceCredentials structure.

", - "markdownDescription": "

The Amazon Resource Name (ARN) of a data source that has the credential pair that you\n want to use. When CopySourceArn is not null, the credential pair from the\n data source in the ARN is used as the credentials for the\n DataSourceCredentials structure.

\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:[-a-z0-9]*:quicksight:[-a-z0-9]*:[0-9]{12}:datasource/.+$ \nUpdate requires: No interruption\n" + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "SecretArn": { - "type": "string", - "maxLength": 2048, + "ProductType": { + "$ref": "#/definitions/StarburstProductType" + }, + "OAuthParameters": { + "$ref": "#/definitions/OAuthParameters" + }, + "Host": { "minLength": 1, - "description": "

The Amazon Resource Name (ARN) of the secret associated with the data source in Amazon Secrets Manager.

", - "markdownDescription": "

The Amazon Resource Name (ARN) of the secret associated with the data source in Amazon Secrets Manager.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nPattern: ^arn:[-a-z0-9]*:secretsmanager:[-a-z0-9]*:[0-9]{12}:secret:.+$ \nUpdate requires: No interruption\n" + "description": "

The host name of the Starburst data source.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

The host name of the Starburst data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "Catalog": { + "minLength": 0, + "description": "

The catalog name for the Starburst data source.

", + "type": "string", + "maxLength": 128, + "markdownDescription": "

The catalog name for the Starburst data source.

\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "AuthenticationType": { + "$ref": "#/definitions/AuthenticationType" } }, - "additionalProperties": false, - "markdownDescription": "

Data source credentials. This is a variant type structure. For this structure to be\n valid, only one of the attributes can be non-null.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "Catalog", + "Host", + "Port" + ], + "markdownDescription": "

The parameters that are required to connect to a Starburst data source.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DataSourceErrorInfo": { + "RedshiftParameters": { + "description": "

The parameters for Amazon Redshift. The ClusterId field can be blank if\n Host and Port are both set. The Host and Port fields can be blank if the ClusterId field is set.

", + "additionalProperties": false, "type": "object", - "description": "

Error information for the data source creation or update.

", "properties": { - "Type": { - "$ref": "#/definitions/DataSourceErrorInfoType" + "IAMParameters": { + "$ref": "#/definitions/RedshiftIAMParameters" }, - "Message": { + "ClusterId": { + "minLength": 1, + "description": "

Cluster ID. This field can be blank if the Host and Port are\n provided.

", "type": "string", - "description": "

Error message.

", - "markdownDescription": "

Error message.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "maxLength": 64, + "markdownDescription": "

Cluster ID. This field can be blank if the Host and Port are\n provided.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + }, + "Port": { + "default": 0, + "maximum": 65535, + "description": "

Port. This field can be blank if the ClusterId is provided.

", + "type": "number", + "minimum": 0, + "markdownDescription": "

Port. This field can be blank if the ClusterId is provided.

\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "Database": { + "minLength": 1, + "description": "

Database.

", + "type": "string", + "maxLength": 128, + "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Host": { + "minLength": 1, + "description": "

Host. This field can be blank if ClusterId is provided.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host. This field can be blank if ClusterId is provided.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/IdentityCenterConfiguration" } }, - "additionalProperties": false, - "markdownDescription": "

Error information for the data source creation or update.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "Database" + ], + "markdownDescription": "

The parameters for Amazon Redshift. The ClusterId field can be blank if\n Host and Port are both set. The Host and Port fields can be blank if the ClusterId field is set.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DataSourceErrorInfoType": { - "type": "string", - "enum": [ - "ACCESS_DENIED", - "COPY_SOURCE_NOT_FOUND", - "TIMEOUT", - "ENGINE_VERSION_NOT_SUPPORTED", - "UNKNOWN_HOST", - "GENERIC_SQL_FAILURE", - "CONFLICT", - "UNKNOWN" + "VpcConnectionProperties": { + "description": "

VPC connection properties.

", + "additionalProperties": false, + "type": "object", + "properties": { + "VpcConnectionArn": { + "description": "

The Amazon Resource Name (ARN) for the VPC connection.

", + "type": "string", + "markdownDescription": "

The Amazon Resource Name (ARN) for the VPC connection.

\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "VpcConnectionArn" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ACCESS_DENIED | COPY_SOURCE_NOT_FOUND | TIMEOUT | ENGINE_VERSION_NOT_SUPPORTED | UNKNOWN_HOST | GENERIC_SQL_FAILURE | CONFLICT | UNKNOWN \nUpdate requires: No interruption\n" + "markdownDescription": "

VPC connection properties.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DataSourceParameters": { + "SnowflakeParameters": { + "description": "

The parameters for Snowflake.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters that Amazon QuickSight uses to connect to your underlying data source.\n This is a variant type structure. For this structure to be valid, only one of the\n attributes can be non-null.

", "properties": { - "AmazonElasticsearchParameters": { - "$ref": "#/definitions/AmazonElasticsearchParameters" - }, - "AthenaParameters": { - "$ref": "#/definitions/AthenaParameters" - }, - "AuroraParameters": { - "$ref": "#/definitions/AuroraParameters" - }, - "AuroraPostgreSqlParameters": { - "$ref": "#/definitions/AuroraPostgreSqlParameters" - }, - "MariaDbParameters": { - "$ref": "#/definitions/MariaDbParameters" - }, - "MySqlParameters": { - "$ref": "#/definitions/MySqlParameters" - }, - "OracleParameters": { - "$ref": "#/definitions/OracleParameters" - }, - "PostgreSqlParameters": { - "$ref": "#/definitions/PostgreSqlParameters" - }, - "PrestoParameters": { - "$ref": "#/definitions/PrestoParameters" - }, - "RdsParameters": { - "$ref": "#/definitions/RdsParameters" - }, - "RedshiftParameters": { - "$ref": "#/definitions/RedshiftParameters" - }, - "S3Parameters": { - "$ref": "#/definitions/S3Parameters" - }, - "SnowflakeParameters": { - "$ref": "#/definitions/SnowflakeParameters" - }, - "SparkParameters": { - "$ref": "#/definitions/SparkParameters" - }, - "SqlServerParameters": { - "$ref": "#/definitions/SqlServerParameters" + "Warehouse": { + "minLength": 0, + "description": "

Warehouse.

", + "type": "string", + "maxLength": 128, + "markdownDescription": "

Warehouse.

\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "TeradataParameters": { - "$ref": "#/definitions/TeradataParameters" + "DatabaseAccessControlRole": { + "minLength": 0, + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "AmazonOpenSearchParameters": { - "$ref": "#/definitions/AmazonOpenSearchParameters" + "Database": { + "minLength": 1, + "description": "

Database.

", + "type": "string", + "maxLength": 128, + "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "DatabricksParameters": { - "$ref": "#/definitions/DatabricksParameters" + "OAuthParameters": { + "$ref": "#/definitions/OAuthParameters" }, - "StarburstParameters": { - "$ref": "#/definitions/StarburstParameters" + "Host": { + "minLength": 1, + "description": "

Host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" }, - "TrinoParameters": { - "$ref": "#/definitions/TrinoParameters" + "AuthenticationType": { + "$ref": "#/definitions/AuthenticationType" } }, - "additionalProperties": false, - "markdownDescription": "

The parameters that Amazon QuickSight uses to connect to your underlying data source.\n This is a variant type structure. For this structure to be valid, only one of the\n attributes can be non-null.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "Database", + "Host", + "Warehouse" + ], + "markdownDescription": "

The parameters for Snowflake.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "DataSourceType": { "type": "string", @@ -339,13 +386,16 @@ "ORACLE", "POSTGRESQL", "PRESTO", + "QBUSINESS", "REDSHIFT", "S3", "S3_TABLES", + "S3_KNOWLEDGE_BASE", "SALESFORCE", "SERVICENOW", "SNOWFLAKE", "SPARK", + "SPICE", "SQLSERVER", "TERADATA", "TIMESTREAM", @@ -359,145 +409,122 @@ "DOCUMENTDB", "APPFLOW", "IMPALA", - "GLUE" + "GLUE", + "GOOGLE_DRIVE", + "CONFLUENCE", + "SHAREPOINT", + "ONE_DRIVE", + "WEB_CRAWLER" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ADOBE_ANALYTICS | AMAZON_ELASTICSEARCH | AMAZON_OPENSEARCH | ATHENA | AURORA | AURORA_POSTGRESQL | AWS_IOT_ANALYTICS | DATABRICKS | DENODO | DREMIO | DYNAMODB | SAPHANA | DB2_AS400 | EXASOL | FILE | GITHUB | JIRA | MARIADB | MYSQL | ORACLE | POSTGRESQL | PRESTO | REDSHIFT | S3 | S3_TABLES | SALESFORCE | SERVICENOW | SNOWFLAKE | SPARK | SQLSERVER | TERADATA | TIMESTREAM | TWITTER | BIGQUERY | GOOGLE_ANALYTICS | TRINO | STARBURST | MONGO | MONGO_ATLAS | DOCUMENTDB | APPFLOW | IMPALA | GLUE \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ADOBE_ANALYTICS | AMAZON_ELASTICSEARCH | AMAZON_OPENSEARCH | ATHENA | AURORA | AURORA_POSTGRESQL | AWS_IOT_ANALYTICS | DATABRICKS | DENODO | DREMIO | DYNAMODB | SAPHANA | DB2_AS400 | EXASOL | FILE | GITHUB | JIRA | MARIADB | MYSQL | ORACLE | POSTGRESQL | PRESTO | QBUSINESS | REDSHIFT | S3 | S3_TABLES | S3_KNOWLEDGE_BASE | SALESFORCE | SERVICENOW | SNOWFLAKE | SPARK | SPICE | SQLSERVER | TERADATA | TIMESTREAM | TWITTER | BIGQUERY | GOOGLE_ANALYTICS | TRINO | STARBURST | MONGO | MONGO_ATLAS | DOCUMENTDB | APPFLOW | IMPALA | GLUE | GOOGLE_DRIVE | CONFLUENCE | SHAREPOINT | ONE_DRIVE | WEB_CRAWLER \nUpdate requires: No interruption\n" }, - "DatabricksParameters": { + "OAuthParameters": { + "additionalProperties": false, "type": "object", - "description": "

The parameters that are required to connect to a Databricks data source.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, + "TokenProviderUrl": { "minLength": 1, - "description": "

The host name of the Databricks data source.

", - "markdownDescription": "

The host name of the Databricks data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, - "Port": { - "type": "number", - "default": 0, - "maximum": 65535, - "minimum": 1, - "description": "

The port for the Databricks data source.

", - "markdownDescription": "

The port for the Databricks data source.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" - }, - "SqlEndpointPath": { + "OAuthScope": { + "minLength": 1, "type": "string", - "maxLength": 4096, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "IdentityProviderVpcConnectionProperties": { + "$ref": "#/definitions/VpcConnectionProperties" + }, + "IdentityProviderResourceUri": { "minLength": 1, - "description": "

The HTTP path of the Databricks data source.

", - "markdownDescription": "

The HTTP path of the Databricks data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" + "type": "string", + "maxLength": 2048, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" } }, "required": [ - "Host", - "Port", - "SqlEndpointPath" + "TokenProviderUrl" ], - "additionalProperties": false, - "markdownDescription": "

The parameters that are required to connect to a Databricks data source.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "IdentityCenterConfiguration": { - "type": "object", - "description": "

The parameters for an IAM Identity Center configuration.

", - "properties": { - "EnableIdentityPropagation": { - "type": "boolean", - "default": null, - "description": "

A Boolean option that controls whether Trusted Identity Propagation should be used.

", - "markdownDescription": "

A Boolean option that controls whether Trusted Identity Propagation should be used.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - } - }, + "AmazonElasticsearchParameters": { + "description": "

The parameters for OpenSearch.

", "additionalProperties": false, - "markdownDescription": "

The parameters for an IAM Identity Center configuration.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ManifestFileLocation": { "type": "object", - "description": "

Amazon S3 manifest file location.

", "properties": { - "Bucket": { - "type": "string", - "maxLength": 1024, + "Domain": { "minLength": 1, - "description": "

Amazon S3 bucket.

", - "markdownDescription": "

Amazon S3 bucket.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" - }, - "Key": { + "description": "

The OpenSearch domain.

", "type": "string", - "maxLength": 1024, - "minLength": 1, - "description": "

Amazon S3 key that identifies an object.

", - "markdownDescription": "

Amazon S3 key that identifies an object.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + "maxLength": 64, + "markdownDescription": "

The OpenSearch domain.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" } }, "required": [ - "Bucket", - "Key" + "Domain" ], - "additionalProperties": false, - "markdownDescription": "

Amazon S3 manifest file location.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for OpenSearch.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "MariaDbParameters": { + "AmazonOpenSearchParameters": { + "description": "

The parameters for OpenSearch.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for MariaDB.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, + "Domain": { "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, - "Port": { - "type": "number", - "default": 0, - "maximum": 65535, - "minimum": 1, - "description": "

Port.

", - "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" - }, - "Database": { + "description": "

The OpenSearch domain.

", "type": "string", - "maxLength": 128, - "minLength": 1, - "description": "

Database.

", - "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "maxLength": 64, + "markdownDescription": "

The OpenSearch domain.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" } }, "required": [ - "Database", - "Host", - "Port" + "Domain" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for MariaDB.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for OpenSearch.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "MySqlParameters": { + "ResourceStatus": { + "type": "string", + "enum": [ + "CREATION_IN_PROGRESS", + "CREATION_SUCCESSFUL", + "CREATION_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL", + "UPDATE_FAILED", + "PENDING_UPDATE", + "DELETED" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: CREATION_IN_PROGRESS | CREATION_SUCCESSFUL | CREATION_FAILED | UPDATE_IN_PROGRESS | UPDATE_SUCCESSFUL | UPDATE_FAILED | PENDING_UPDATE | DELETED \nUpdate requires: No interruption\n" + }, + "AuroraParameters": { + "description": "

Parameters for Amazon Aurora.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for MySQL.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Port": { - "type": "number", "default": 0, "maximum": 65535, - "minimum": 1, "description": "

Port.

", + "type": "number", + "minimum": 1, "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, "Database": { - "type": "string", - "maxLength": 128, "minLength": 1, "description": "

Database.

", + "type": "string", + "maxLength": 128, "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Host": { + "minLength": 1, + "description": "

Host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ @@ -505,161 +532,182 @@ "Host", "Port" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for MySQL.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

Parameters for Amazon Aurora.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "OAuthParameters": { + "S3Parameters": { + "description": "

The parameters for S3.

", + "additionalProperties": false, "type": "object", "properties": { - "TokenProviderUrl": { - "type": "string", - "maxLength": 2048, - "minLength": 1, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" - }, - "OAuthScope": { - "type": "string", - "maxLength": 128, - "minLength": 1, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "IdentityProviderVpcConnectionProperties": { - "$ref": "#/definitions/VpcConnectionProperties" + "ManifestFileLocation": { + "$ref": "#/definitions/ManifestFileLocation" }, - "IdentityProviderResourceUri": { + "RoleArn": { + "minLength": 20, + "description": "

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

", "type": "string", "maxLength": 2048, - "minLength": 1, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "markdownDescription": "

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" } }, "required": [ - "TokenProviderUrl" + "ManifestFileLocation" ], - "additionalProperties": false, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for S3.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "OracleParameters": { + "IdentityCenterConfiguration": { + "description": "

The parameters for an IAM Identity Center configuration.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for Oracle.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

An Oracle host.

", - "markdownDescription": "

An Oracle host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, - "Port": { - "type": "number", - "default": 0, - "maximum": 65535, - "minimum": 1, - "description": "

The port.

", - "markdownDescription": "

The port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" - }, - "Database": { - "type": "string", - "maxLength": 128, - "minLength": 1, - "description": "

The database.

", - "markdownDescription": "

The database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "EnableIdentityPropagation": { + "default": null, + "description": "

A Boolean option that controls whether Trusted Identity Propagation should be used.

", + "type": "boolean", + "markdownDescription": "

A Boolean option that controls whether Trusted Identity Propagation should be used.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, - "required": [ - "Database", - "Host", - "Port" - ], - "additionalProperties": false, - "markdownDescription": "

The parameters for Oracle.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for an IAM Identity Center configuration.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "PostgreSqlParameters": { + "SslProperties": { + "description": "

Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your\n underlying data source.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for PostgreSQL.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, - "Port": { - "type": "number", - "default": 0, - "maximum": 65535, - "minimum": 1, - "description": "

Port.

", - "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" - }, - "Database": { - "type": "string", - "maxLength": 128, - "minLength": 1, - "description": "

Database.

", - "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "DisableSsl": { + "default": false, + "description": "

A Boolean option to control whether SSL should be disabled.

", + "type": "boolean", + "markdownDescription": "

A Boolean option to control whether SSL should be disabled.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, - "required": [ - "Database", - "Host", - "Port" - ], - "additionalProperties": false, - "markdownDescription": "

The parameters for PostgreSQL.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your\n underlying data source.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "PrestoParameters": { - "type": "object", - "description": "

The parameters for Presto.

", + "DataSourceErrorInfoType": { + "type": "string", + "enum": [ + "ACCESS_DENIED", + "COPY_SOURCE_NOT_FOUND", + "TIMEOUT", + "ENGINE_VERSION_NOT_SUPPORTED", + "UNKNOWN_HOST", + "GENERIC_SQL_FAILURE", + "CONFLICT", + "UNKNOWN" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ACCESS_DENIED | COPY_SOURCE_NOT_FOUND | TIMEOUT | ENGINE_VERSION_NOT_SUPPORTED | UNKNOWN_HOST | GENERIC_SQL_FAILURE | CONFLICT | UNKNOWN \nUpdate requires: No interruption\n" + }, + "ResourcePermission": { + "description": "

Permission for the resource.

", + "additionalProperties": false, + "type": "object", "properties": { - "Host": { + "Actions": { + "minItems": 1, + "maxItems": 20, + "description": "

The IAM action to grant or revoke permissions on.

", + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "

The IAM action to grant or revoke permissions on.

\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Resource": { "type": "string", - "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Principal": { "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "description": "

The Amazon Resource Name (ARN) of the principal. This can be one of the\n following:

\n
    \n
  • \n

    The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon Web Services account root: This is an IAM ARN rather than a QuickSight\n ARN. Use this option only to share resources (templates) across Amazon Web Services accounts.\n (This is less common.)

    \n
  • \n
", + "type": "string", + "maxLength": 256, + "markdownDescription": "

The Amazon Resource Name (ARN) of the principal. This can be one of the\n following:

\n
    \n
  • \n

    The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon Web Services account root: This is an IAM ARN rather than a QuickSight\n ARN. Use this option only to share resources (templates) across Amazon Web Services accounts.\n (This is less common.)

    \n
  • \n
\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Actions", + "Principal" + ], + "markdownDescription": "

Permission for the resource.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AuthenticationType": { + "type": "string", + "enum": [ + "PASSWORD", + "TOKEN", + "X509" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: PASSWORD | TOKEN | X509 \nUpdate requires: No interruption\n" + }, + "DataSourceErrorInfo": { + "description": "

Error information for the data source creation or update.

", + "additionalProperties": false, + "type": "object", + "properties": { + "Type": { + "$ref": "#/definitions/DataSourceErrorInfoType" }, + "Message": { + "description": "

Error message.

", + "type": "string", + "markdownDescription": "

Error message.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "

Error information for the data source creation or update.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TeradataParameters": { + "description": "

The parameters for Teradata.

", + "additionalProperties": false, + "type": "object", + "properties": { "Port": { - "type": "number", "default": 0, "maximum": 65535, - "minimum": 1, "description": "

Port.

", + "type": "number", + "minimum": 1, "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, - "Catalog": { + "Database": { + "minLength": 1, + "description": "

Database.

", "type": "string", "maxLength": 128, - "minLength": 0, - "description": "

Catalog.

", - "markdownDescription": "

Catalog.

\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Host": { + "minLength": 1, + "description": "

Host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ - "Catalog", + "Database", "Host", "Port" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for Presto.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for Teradata.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "RdsParameters": { - "type": "object", "description": "

The parameters for Amazon RDS.

", + "additionalProperties": false, + "type": "object", "properties": { "InstanceId": { - "type": "string", - "maxLength": 64, "minLength": 1, "description": "

Instance ID.

", + "type": "string", + "maxLength": 64, "markdownDescription": "

Instance ID.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" }, "Database": { - "type": "string", - "maxLength": 128, "minLength": 1, "description": "

Database.

", + "type": "string", + "maxLength": 128, "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" } }, @@ -667,265 +715,290 @@ "Database", "InstanceId" ], - "additionalProperties": false, "markdownDescription": "

The parameters for Amazon RDS.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RedshiftIAMParameters": { + "AthenaParameters": { + "description": "

Parameters for Amazon Athena.

", + "additionalProperties": false, "type": "object", - "description": "

A structure that grants Amazon QuickSight access to your cluster and make a call to the redshift:GetClusterCredentials API. For more information on the redshift:GetClusterCredentials API, see \n GetClusterCredentials\n .

", "properties": { + "WorkGroup": { + "minLength": 1, + "description": "

The workgroup that Amazon Athena uses.

", + "type": "string", + "maxLength": 128, + "markdownDescription": "

The workgroup that Amazon Athena uses.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "IdentityCenterConfiguration": { + "$ref": "#/definitions/IdentityCenterConfiguration" + }, "RoleArn": { + "minLength": 20, + "description": "

Use the RoleArn structure to override an account-wide role for a specific Athena data source. For example, say an account administrator has turned off all Athena access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow Athena access for the single Athena data source that is specified in the structure, even if the account-wide role forbidding Athena access is still active.

", "type": "string", "maxLength": 2048, - "minLength": 20, - "description": "

Use the RoleArn structure to allow Amazon QuickSight to call redshift:GetClusterCredentials on your cluster. The calling principal must have iam:PassRole access to pass the role to Amazon QuickSight. The role's trust policy must allow the Amazon QuickSight service principal to assume the role.

", - "markdownDescription": "

Use the RoleArn structure to allow Amazon QuickSight to call redshift:GetClusterCredentials on your cluster. The calling principal must have iam:PassRole access to pass the role to Amazon QuickSight. The role's trust policy must allow the Amazon QuickSight service principal to assume the role.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "markdownDescription": "

Use the RoleArn structure to override an account-wide role for a specific Athena data source. For example, say an account administrator has turned off all Athena access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow Athena access for the single Athena data source that is specified in the structure, even if the account-wide role forbidding Athena access is still active.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "

Parameters for Amazon Athena.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SparkParameters": { + "description": "

The parameters for Spark.

", + "additionalProperties": false, + "type": "object", + "properties": { + "Port": { + "default": 0, + "maximum": 65535, + "description": "

Port.

", + "type": "number", + "minimum": 1, + "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, - "DatabaseUser": { - "type": "string", - "maxLength": 64, + "Host": { "minLength": 1, - "description": "

The user whose permissions and group memberships will be used by Amazon QuickSight to access the cluster. If this user already exists in your database, Amazon QuickSight is granted the same permissions that the user has. If the user doesn't exist, set the value of AutoCreateDatabaseUser to True to create a new user with PUBLIC permissions.

", - "markdownDescription": "

The user whose permissions and group memberships will be used by Amazon QuickSight to access the cluster. If this user already exists in your database, Amazon QuickSight is granted the same permissions that the user has. If the user doesn't exist, set the value of AutoCreateDatabaseUser to True to create a new user with PUBLIC permissions.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - }, - "DatabaseGroups": { - "type": "array", - "items": { - "type": "string", - "maxLength": 64, - "minLength": 1, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - }, - "maxItems": 50, - "minItems": 1, - "description": "

A list of groups whose permissions will be granted to Amazon QuickSight to access the cluster. These permissions are combined with the permissions granted to Amazon QuickSight by the DatabaseUser. If you choose to include this parameter, the RoleArn must grant access to redshift:JoinGroup.

", - "markdownDescription": "

A list of groups whose permissions will be granted to Amazon QuickSight to access the cluster. These permissions are combined with the permissions granted to Amazon QuickSight by the DatabaseUser. If you choose to include this parameter, the RoleArn must grant access to redshift:JoinGroup.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "AutoCreateDatabaseUser": { - "type": "boolean", - "default": false, - "description": "

Automatically creates a database user. If your database doesn't have a DatabaseUser, set this parameter to True. If there is no DatabaseUser, Amazon QuickSight can't connect to your cluster. The RoleArn that you use for this operation must grant access to redshift:CreateClusterUser to successfully create the user.

", - "markdownDescription": "

Automatically creates a database user. If your database doesn't have a DatabaseUser, set this parameter to True. If there is no DatabaseUser, Amazon QuickSight can't connect to your cluster. The RoleArn that you use for this operation must grant access to redshift:CreateClusterUser to successfully create the user.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "description": "

Host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ - "RoleArn" + "Host", + "Port" ], - "additionalProperties": false, - "markdownDescription": "

A structure that grants Amazon QuickSight access to your cluster and make a call to the redshift:GetClusterCredentials API. For more information on the redshift:GetClusterCredentials API, see \n GetClusterCredentials\n .

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for Spark.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RedshiftParameters": { + "MariaDbParameters": { + "description": "

The parameters for MariaDB.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for Amazon Redshift. The ClusterId field can be blank if\n Host and Port are both set. The Host and Port fields can be blank if the ClusterId field is set.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host. This field can be blank if ClusterId is provided.

", - "markdownDescription": "

Host. This field can be blank if ClusterId is provided.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Port": { - "type": "number", "default": 0, "maximum": 65535, - "minimum": 0, - "description": "

Port. This field can be blank if the ClusterId is provided.

", - "markdownDescription": "

Port. This field can be blank if the ClusterId is provided.

\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + "description": "

Port.

", + "type": "number", + "minimum": 1, + "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, "Database": { - "type": "string", - "maxLength": 128, "minLength": 1, "description": "

Database.

", + "type": "string", + "maxLength": 128, "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "ClusterId": { - "type": "string", - "maxLength": 64, + "Host": { "minLength": 1, - "description": "

Cluster ID. This field can be blank if the Host and Port are\n provided.

", - "markdownDescription": "

Cluster ID. This field can be blank if the Host and Port are\n provided.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" - }, - "IAMParameters": { - "$ref": "#/definitions/RedshiftIAMParameters" - }, - "IdentityCenterConfiguration": { - "$ref": "#/definitions/IdentityCenterConfiguration" + "description": "

Host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ - "Database" + "Database", + "Host", + "Port" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for Amazon Redshift. The ClusterId field can be blank if\n Host and Port are both set. The Host and Port fields can be blank if the ClusterId field is set.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for MariaDB.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ResourcePermission": { + "OracleParameters": { + "description": "

The parameters for Oracle.

", + "additionalProperties": false, "type": "object", - "description": "

Permission for the resource.

", "properties": { - "Principal": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

The Amazon Resource Name (ARN) of the principal. This can be one of the\n following:

\n
    \n
  • \n

    The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon Web Services account root: This is an IAM ARN rather than a QuickSight\n ARN. Use this option only to share resources (templates) across Amazon Web Services accounts.\n (This is less common.)

    \n
  • \n
", - "markdownDescription": "

The Amazon Resource Name (ARN) of the principal. This can be one of the\n following:

\n
    \n
  • \n

    The ARN of an Amazon QuickSight user or group associated with a data source or dataset. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon QuickSight user, group, or namespace associated with an analysis, dashboard, template, or theme. (This is common.)

    \n
  • \n
  • \n

    The ARN of an Amazon Web Services account root: This is an IAM ARN rather than a QuickSight\n ARN. Use this option only to share resources (templates) across Amazon Web Services accounts.\n (This is less common.)

    \n
  • \n
\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "UseServiceName": { + "default": false, + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "Resource": { + "Port": { + "default": 0, + "maximum": 65535, + "description": "

The port.

", + "type": "number", + "minimum": 1, + "markdownDescription": "

The port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + }, + "Database": { + "minLength": 1, + "description": "

The database.

", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "maxLength": 128, + "markdownDescription": "

The database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "Actions": { - "type": "array", - "items": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "maxItems": 20, - "minItems": 1, - "description": "

The IAM action to grant or revoke permissions on.

", - "markdownDescription": "

The IAM action to grant or revoke permissions on.

\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "Host": { + "minLength": 1, + "description": "

An Oracle host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

An Oracle host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ - "Actions", - "Principal" - ], - "additionalProperties": false, - "markdownDescription": "

Permission for the resource.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ResourceStatus": { - "type": "string", - "enum": [ - "CREATION_IN_PROGRESS", - "CREATION_SUCCESSFUL", - "CREATION_FAILED", - "UPDATE_IN_PROGRESS", - "UPDATE_SUCCESSFUL", - "UPDATE_FAILED", - "DELETED" + "Database", + "Host", + "Port" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: CREATION_IN_PROGRESS | CREATION_SUCCESSFUL | CREATION_FAILED | UPDATE_IN_PROGRESS | UPDATE_SUCCESSFUL | UPDATE_FAILED | DELETED \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for Oracle.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "S3Parameters": { + "PrestoParameters": { + "description": "

The parameters for Presto.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for S3.

", "properties": { - "ManifestFileLocation": { - "$ref": "#/definitions/ManifestFileLocation" + "Port": { + "default": 0, + "maximum": 65535, + "description": "

Port.

", + "type": "number", + "minimum": 1, + "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, - "RoleArn": { + "Host": { + "minLength": 1, + "description": "

Host.

", "type": "string", - "maxLength": 2048, - "minLength": 20, - "description": "

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

", - "markdownDescription": "

Use the RoleArn structure to override an account-wide role for a specific S3 data source. For example, say an account administrator has turned off all S3 access with an account-wide role. The administrator can then use RoleArn to bypass the account-wide role and allow S3 access for the single S3 data source that is specified in the structure, even if the account-wide role forbidding S3 access is still active.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "Catalog": { + "minLength": 0, + "description": "

Catalog.

", + "type": "string", + "maxLength": 128, + "markdownDescription": "

Catalog.

\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" } }, "required": [ - "ManifestFileLocation" + "Catalog", + "Host", + "Port" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for S3.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for Presto.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SnowflakeParameters": { + "AwsIotAnalyticsParameters": { + "description": "

The parameters for IoT Analytics.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for Snowflake.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, - "Database": { - "type": "string", - "maxLength": 128, + "DataSetName": { "minLength": 1, - "description": "

Database.

", - "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "Warehouse": { - "type": "string", - "maxLength": 128, - "minLength": 0, - "description": "

Warehouse.

", - "markdownDescription": "

Warehouse.

\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "AuthenticationType": { - "$ref": "#/definitions/AuthenticationType" - }, - "DatabaseAccessControlRole": { + "description": "

Dataset name.

", "type": "string", "maxLength": 128, - "minLength": 0, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "OAuthParameters": { - "$ref": "#/definitions/OAuthParameters" + "markdownDescription": "

Dataset name.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" } }, "required": [ - "Database", - "Host", - "Warehouse" + "DataSetName" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for Snowflake.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for IoT Analytics.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SparkParameters": { + "StarburstProductType": { + "type": "string", + "enum": [ + "GALAXY", + "ENTERPRISE" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: GALAXY | ENTERPRISE \nUpdate requires: No interruption\n" + }, + "DataSourceParameters": { + "description": "

The parameters that Amazon QuickSight uses to connect to your underlying data source.\n This is a variant type structure. For this structure to be valid, only one of the\n attributes can be non-null.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for Spark.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "AuroraPostgreSqlParameters": { + "$ref": "#/definitions/AuroraPostgreSqlParameters" }, - "Port": { - "type": "number", - "default": 0, - "maximum": 65535, - "minimum": 1, - "description": "

Port.

", - "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + "TeradataParameters": { + "$ref": "#/definitions/TeradataParameters" + }, + "RdsParameters": { + "$ref": "#/definitions/RdsParameters" + }, + "AthenaParameters": { + "$ref": "#/definitions/AthenaParameters" + }, + "SparkParameters": { + "$ref": "#/definitions/SparkParameters" + }, + "MariaDbParameters": { + "$ref": "#/definitions/MariaDbParameters" + }, + "OracleParameters": { + "$ref": "#/definitions/OracleParameters" + }, + "PrestoParameters": { + "$ref": "#/definitions/PrestoParameters" + }, + "StarburstParameters": { + "$ref": "#/definitions/StarburstParameters" + }, + "RedshiftParameters": { + "$ref": "#/definitions/RedshiftParameters" + }, + "MySqlParameters": { + "$ref": "#/definitions/MySqlParameters" + }, + "SqlServerParameters": { + "$ref": "#/definitions/SqlServerParameters" + }, + "SnowflakeParameters": { + "$ref": "#/definitions/SnowflakeParameters" + }, + "AmazonElasticsearchParameters": { + "$ref": "#/definitions/AmazonElasticsearchParameters" + }, + "AmazonOpenSearchParameters": { + "$ref": "#/definitions/AmazonOpenSearchParameters" + }, + "PostgreSqlParameters": { + "$ref": "#/definitions/PostgreSqlParameters" + }, + "AuroraParameters": { + "$ref": "#/definitions/AuroraParameters" + }, + "S3Parameters": { + "$ref": "#/definitions/S3Parameters" + }, + "TrinoParameters": { + "$ref": "#/definitions/TrinoParameters" + }, + "DatabricksParameters": { + "$ref": "#/definitions/DatabricksParameters" } }, - "required": [ - "Host", - "Port" - ], - "additionalProperties": false, - "markdownDescription": "

The parameters for Spark.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters that Amazon QuickSight uses to connect to your underlying data source.\n This is a variant type structure. For this structure to be valid, only one of the\n attributes can be non-null.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SqlServerParameters": { + "MySqlParameters": { + "description": "

The parameters for MySQL.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for SQL Server.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Port": { - "type": "number", "default": 0, "maximum": 65535, - "minimum": 1, "description": "

Port.

", + "type": "number", + "minimum": 1, "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, "Database": { - "type": "string", - "maxLength": 128, "minLength": 1, "description": "

Database.

", + "type": "string", + "maxLength": 128, "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Host": { + "minLength": 1, + "description": "

Host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ @@ -933,132 +1006,149 @@ "Host", "Port" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for SQL Server.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for MySQL.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SslProperties": { + "RedshiftIAMParameters": { + "description": "

A structure that grants Amazon QuickSight access to your cluster and make a call to the redshift:GetClusterCredentials API. For more information on the redshift:GetClusterCredentials API, see \n GetClusterCredentials\n .

", + "additionalProperties": false, "type": "object", - "description": "

Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your\n underlying data source.

", "properties": { - "DisableSsl": { - "type": "boolean", + "AutoCreateDatabaseUser": { "default": false, - "description": "

A Boolean option to control whether SSL should be disabled.

", - "markdownDescription": "

A Boolean option to control whether SSL should be disabled.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "description": "

Automatically creates a database user. If your database doesn't have a DatabaseUser, set this parameter to True. If there is no DatabaseUser, Amazon QuickSight can't connect to your cluster. The RoleArn that you use for this operation must grant access to redshift:CreateClusterUser to successfully create the user.

", + "type": "boolean", + "markdownDescription": "

Automatically creates a database user. If your database doesn't have a DatabaseUser, set this parameter to True. If there is no DatabaseUser, Amazon QuickSight can't connect to your cluster. The RoleArn that you use for this operation must grant access to redshift:CreateClusterUser to successfully create the user.

\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "DatabaseUser": { + "minLength": 1, + "description": "

The user whose permissions and group memberships will be used by Amazon QuickSight to access the cluster. If this user already exists in your database, Amazon QuickSight is granted the same permissions that the user has. If the user doesn't exist, set the value of AutoCreateDatabaseUser to True to create a new user with PUBLIC permissions.

", + "type": "string", + "maxLength": 64, + "markdownDescription": "

The user whose permissions and group memberships will be used by Amazon QuickSight to access the cluster. If this user already exists in your database, Amazon QuickSight is granted the same permissions that the user has. If the user doesn't exist, set the value of AutoCreateDatabaseUser to True to create a new user with PUBLIC permissions.

\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + }, + "RoleArn": { + "minLength": 20, + "description": "

Use the RoleArn structure to allow Amazon QuickSight to call redshift:GetClusterCredentials on your cluster. The calling principal must have iam:PassRole access to pass the role to Amazon QuickSight. The role's trust policy must allow the Amazon QuickSight service principal to assume the role.

", + "type": "string", + "maxLength": 2048, + "markdownDescription": "

Use the RoleArn structure to allow Amazon QuickSight to call redshift:GetClusterCredentials on your cluster. The calling principal must have iam:PassRole access to pass the role to Amazon QuickSight. The role's trust policy must allow the Amazon QuickSight service principal to assume the role.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "DatabaseGroups": { + "minItems": 1, + "maxItems": 50, + "description": "

A list of groups whose permissions will be granted to Amazon QuickSight to access the cluster. These permissions are combined with the permissions granted to Amazon QuickSight by the DatabaseUser. If you choose to include this parameter, the RoleArn must grant access to redshift:JoinGroup.

", + "type": "array", + "items": { + "minLength": 1, + "type": "string", + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + }, + "markdownDescription": "

A list of groups whose permissions will be granted to Amazon QuickSight to access the cluster. These permissions are combined with the permissions granted to Amazon QuickSight by the DatabaseUser. If you choose to include this parameter, the RoleArn must grant access to redshift:JoinGroup.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "additionalProperties": false, - "markdownDescription": "

Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your\n underlying data source.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "RoleArn" + ], + "markdownDescription": "

A structure that grants Amazon QuickSight access to your cluster and make a call to the redshift:GetClusterCredentials API. For more information on the redshift:GetClusterCredentials API, see \n GetClusterCredentials\n .

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "StarburstParameters": { + "SqlServerParameters": { + "description": "

The parameters for SQL Server.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters that are required to connect to a Starburst data source.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

The host name of the Starburst data source.

", - "markdownDescription": "

The host name of the Starburst data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Port": { - "type": "number", "default": 0, "maximum": 65535, + "description": "

Port.

", + "type": "number", "minimum": 1, - "description": "

The port for the Starburst data source.

", - "markdownDescription": "

The port for the Starburst data source.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, - "Catalog": { + "Database": { + "minLength": 1, + "description": "

Database.

", "type": "string", "maxLength": 128, - "minLength": 0, - "description": "

The catalog name for the Starburst data source.

", - "markdownDescription": "

The catalog name for the Starburst data source.

\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "ProductType": { - "$ref": "#/definitions/StarburstProductType" + "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "DatabaseAccessControlRole": { + "Host": { + "minLength": 1, + "description": "

Host.

", "type": "string", - "maxLength": 128, - "minLength": 0, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, - "AuthenticationType": { - "$ref": "#/definitions/AuthenticationType" - }, - "OAuthParameters": { - "$ref": "#/definitions/OAuthParameters" + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ - "Catalog", + "Database", "Host", "Port" ], - "additionalProperties": false, - "markdownDescription": "

The parameters that are required to connect to a Starburst data source.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "StarburstProductType": { - "type": "string", - "enum": [ - "GALAXY", - "ENTERPRISE" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: GALAXY | ENTERPRISE \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for SQL Server.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Tag": { + "CredentialPair": { + "description": "

The combination of user name and password that are used as credentials.

", + "additionalProperties": false, "type": "object", - "description": "

The key or keys of the key-value pairs for the resource tag or tags assigned to the\n resource.

", "properties": { - "Key": { - "type": "string", - "maxLength": 128, - "minLength": 1, - "description": "

Tag key.

", - "markdownDescription": "

Tag key.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "AlternateDataSourceParameters": { + "minItems": 1, + "maxItems": 50, + "description": "

A set of alternate data source parameters that you want to share for these\n credentials. The credentials are applied in tandem with the data source parameters when\n you copy a data source by using a create or update request. The API operation compares\n the DataSourceParameters structure that's in the request with the\n structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the new data source with\n the existing credentials. If the AlternateDataSourceParameters list is\n null, the DataSourceParameters originally used with these\n Credentials is automatically allowed.

", + "type": "array", + "items": { + "$ref": "#/definitions/DataSourceParameters" + }, + "markdownDescription": "

A set of alternate data source parameters that you want to share for these\n credentials. The credentials are applied in tandem with the data source parameters when\n you copy a data source by using a create or update request. The API operation compares\n the DataSourceParameters structure that's in the request with the\n structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the new data source with\n the existing credentials. If the AlternateDataSourceParameters list is\n null, the DataSourceParameters originally used with these\n Credentials is automatically allowed.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "Value": { + "Username": { + "minLength": 1, + "description": "

User name.

", "type": "string", - "maxLength": 256, + "maxLength": 64, + "markdownDescription": "

User name.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + }, + "Password": { "minLength": 1, - "description": "

Tag value.

", - "markdownDescription": "

Tag value.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "description": "

Password.

", + "type": "string", + "maxLength": 1024, + "markdownDescription": "

Password.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" } }, "required": [ - "Key", - "Value" + "Password", + "Username" ], - "additionalProperties": false, - "markdownDescription": "

The key or keys of the key-value pairs for the resource tag or tags assigned to the\n resource.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The combination of user name and password that are used as credentials.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "TeradataParameters": { + "PostgreSqlParameters": { + "description": "

The parameters for PostgreSQL.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters for Teradata.

", "properties": { - "Host": { - "type": "string", - "maxLength": 256, - "minLength": 1, - "description": "

Host.

", - "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Port": { - "type": "number", "default": 0, "maximum": 65535, - "minimum": 1, "description": "

Port.

", + "type": "number", + "minimum": 1, "markdownDescription": "

Port.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, "Database": { - "type": "string", - "maxLength": 128, "minLength": 1, "description": "

Database.

", + "type": "string", + "maxLength": 128, "markdownDescription": "

Database.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Host": { + "minLength": 1, + "description": "

Host.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

Host.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ @@ -1066,33 +1156,59 @@ "Host", "Port" ], - "additionalProperties": false, - "markdownDescription": "

The parameters for Teradata.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters for PostgreSQL.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "TrinoParameters": { + "Tag": { + "description": "

The key or keys of the key-value pairs for the resource tag or tags assigned to the\n resource.

", + "additionalProperties": false, "type": "object", - "description": "

The parameters that are required to connect to a Trino data source.

", "properties": { - "Host": { + "Value": { + "minLength": 1, + "description": "

Tag value.

", "type": "string", "maxLength": 256, - "minLength": 1, - "description": "

The host name of the Trino data source.

", - "markdownDescription": "

The host name of the Trino data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "markdownDescription": "

Tag value.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" }, + "Key": { + "minLength": 1, + "description": "

Tag key.

", + "type": "string", + "maxLength": 128, + "markdownDescription": "

Tag key.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "

The key or keys of the key-value pairs for the resource tag or tags assigned to the\n resource.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TrinoParameters": { + "description": "

The parameters that are required to connect to a Trino data source.

", + "additionalProperties": false, + "type": "object", + "properties": { "Port": { - "type": "number", "default": 0, "maximum": 65535, - "minimum": 1, "description": "

The port for the Trino data source.

", + "type": "number", + "minimum": 1, "markdownDescription": "

The port for the Trino data source.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" }, + "Host": { + "minLength": 1, + "description": "

The host name of the Trino data source.

", + "type": "string", + "maxLength": 256, + "markdownDescription": "

The host name of the Trino data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, "Catalog": { - "type": "string", - "maxLength": 128, "minLength": 0, "description": "

The catalog name for the Trino data source.

", + "type": "string", + "maxLength": 128, "markdownDescription": "

The catalog name for the Trino data source.

\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" } }, @@ -1101,226 +1217,158 @@ "Host", "Port" ], - "additionalProperties": false, "markdownDescription": "

The parameters that are required to connect to a Trino data source.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "VpcConnectionProperties": { + "DatabricksParameters": { + "description": "

The parameters that are required to connect to a Databricks data source.

", + "additionalProperties": false, "type": "object", - "description": "

VPC connection properties.

", "properties": { - "VpcConnectionArn": { + "Port": { + "default": 0, + "maximum": 65535, + "description": "

The port for the Databricks data source.

", + "type": "number", + "minimum": 1, + "markdownDescription": "

The port for the Databricks data source.

\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + }, + "Host": { + "minLength": 1, + "description": "

The host name of the Databricks data source.

", "type": "string", - "description": "

The Amazon Resource Name (ARN) for the VPC connection.

", - "markdownDescription": "

The Amazon Resource Name (ARN) for the VPC connection.

\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "maxLength": 256, + "markdownDescription": "

The host name of the Databricks data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "SqlEndpointPath": { + "minLength": 1, + "description": "

The HTTP path of the Databricks data source.

", + "type": "string", + "maxLength": 4096, + "markdownDescription": "

The HTTP path of the Databricks data source.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" } }, "required": [ - "VpcConnectionArn" + "Host", + "Port", + "SqlEndpointPath" ], - "additionalProperties": false, - "markdownDescription": "

VPC connection properties.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "

The parameters that are required to connect to a Databricks data source.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { - "AlternateDataSourceParameters": { - "type": "array", - "items": { - "$ref": "#/definitions/DataSourceParameters" - }, - "maxItems": 50, - "minItems": 1, - "description": "

A set of alternate data source parameters that you want to share for the credentials\n stored with this data source. The credentials are applied in tandem with the data source\n parameters when you copy a data source by using a create or update request. The API\n operation compares the DataSourceParameters structure that's in the request\n with the structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the credentials from this\n existing data source. If the AlternateDataSourceParameters list is null,\n the Credentials originally used with this DataSourceParameters\n are automatically allowed.

", - "markdownDescription": "

A set of alternate data source parameters that you want to share for the credentials\n stored with this data source. The credentials are applied in tandem with the data source\n parameters when you copy a data source by using a create or update request. The API\n operation compares the DataSourceParameters structure that's in the request\n with the structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the credentials from this\n existing data source. If the AlternateDataSourceParameters list is null,\n the Credentials originally used with this DataSourceParameters\n are automatically allowed.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Arn": { - "type": "string", - "description": "

The Amazon Resource Name (ARN) of the data source.

", - "markdownDescription": "

The Amazon Resource Name (ARN) of the data source.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "AwsAccountId": { - "type": "string", - "maxLength": 12, - "minLength": 12, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 12 \nPattern: ^[0-9]{12}$ \nUpdate requires: Replacement\n" + "Status": { + "$ref": "#/definitions/ResourceStatus" }, "CreatedTime": { - "type": "string", - "description": "

The time that this data source was created.

", "format": "date-time", - "markdownDescription": "

The time that this data source was created.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "Credentials": { - "$ref": "#/definitions/DataSourceCredentials" - }, - "DataSourceId": { + "description": "

The time that this data source was created.

", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" - }, - "DataSourceParameters": { - "$ref": "#/definitions/DataSourceParameters" + "markdownDescription": "

The time that this data source was created.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "ErrorInfo": { "$ref": "#/definitions/DataSourceErrorInfo" }, + "LastUpdatedTime": { + "format": "date-time", + "description": "

The last time that this data source was updated.

", + "type": "string", + "markdownDescription": "

The last time that this data source was updated.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "FolderArns": { + "minItems": 0, + "maxItems": 10, "type": "array", "items": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "maxItems": 10, - "minItems": 0, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "LastUpdatedTime": { - "type": "string", - "description": "

The last time that this data source was updated.

", - "format": "date-time", - "markdownDescription": "

The last time that this data source was updated.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, "Name": { + "minLength": 1, "type": "string", "maxLength": 128, - "minLength": 1, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, + "DataSourceParameters": { + "$ref": "#/definitions/DataSourceParameters" + }, + "Type": { + "$ref": "#/definitions/DataSourceType" + }, + "VpcConnectionProperties": { + "$ref": "#/definitions/VpcConnectionProperties" + }, + "AlternateDataSourceParameters": { + "minItems": 1, + "maxItems": 50, + "description": "

A set of alternate data source parameters that you want to share for the credentials\n stored with this data source. The credentials are applied in tandem with the data source\n parameters when you copy a data source by using a create or update request. The API\n operation compares the DataSourceParameters structure that's in the request\n with the structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the credentials from this\n existing data source. If the AlternateDataSourceParameters list is null,\n the Credentials originally used with this DataSourceParameters\n are automatically allowed.

", + "type": "array", + "items": { + "$ref": "#/definitions/DataSourceParameters" + }, + "markdownDescription": "

A set of alternate data source parameters that you want to share for the credentials\n stored with this data source. The credentials are applied in tandem with the data source\n parameters when you copy a data source by using a create or update request. The API\n operation compares the DataSourceParameters structure that's in the request\n with the structures in the AlternateDataSourceParameters allow list. If the\n structures are an exact match, the request is allowed to use the credentials from this\n existing data source. If the AlternateDataSourceParameters list is null,\n the Credentials originally used with this DataSourceParameters\n are automatically allowed.

\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "AwsAccountId": { + "minLength": 12, + "type": "string", + "maxLength": 12, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 12 \nPattern: ^[0-9]{12}$ \nUpdate requires: Replacement\n" + }, "Permissions": { + "minItems": 1, + "maxItems": 64, "type": "array", "items": { "$ref": "#/definitions/ResourcePermission" }, - "maxItems": 64, - "minItems": 1, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, + "Arn": { + "description": "

The Amazon Resource Name (ARN) of the data source.

", + "type": "string", + "markdownDescription": "

The Amazon Resource Name (ARN) of the data source.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "SslProperties": { "$ref": "#/definitions/SslProperties" }, - "Status": { - "$ref": "#/definitions/ResourceStatus" + "Credentials": { + "$ref": "#/definitions/DataSourceCredentials" + }, + "DataSourceId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "Tags": { + "minItems": 1, + "maxItems": 200, "type": "array", "items": { "$ref": "#/definitions/Tag" }, - "maxItems": 200, - "minItems": 1, "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Type": { - "$ref": "#/definitions/DataSourceType" - }, - "VpcConnectionProperties": { - "$ref": "#/definitions/VpcConnectionProperties" - } - }, - "required": [ - "Name", - "Type" - ], - "readOnlyProperties": [ - "/properties/Arn", - "/properties/CreatedTime", - "/properties/LastUpdatedTime", - "/properties/Status" - ], - "writeOnlyProperties": [ - "/properties/Credentials", - "/properties/FolderArns" - ], - "createOnlyProperties": [ - "/properties/AwsAccountId", - "/properties/DataSourceId", - "/properties/Type" - ], - "primaryIdentifier": [ - "/properties/AwsAccountId", - "/properties/DataSourceId" - ], - "handlers": { - "read": { - "permissions": [ - "quicksight:DescribeDataSource", - "quicksight:DescribeDataSourcePermissions", - "quicksight:ListTagsForResource" - ] - }, - "create": { - "permissions": [ - "quicksight:CreateDataSource", - "quicksight:DescribeDataSource", - "quicksight:DescribeDataSourcePermissions", - "quicksight:TagResource", - "quicksight:ListTagsForResource", - "quicksight:CreateFolderMembership", - "quicksight:DeleteFolderMembership", - "quicksight:ListFoldersForResource" - ] - }, - "update": { - "permissions": [ - "quicksight:DescribeDataSource", - "quicksight:DescribeDataSourcePermissions", - "quicksight:UpdateDataSource", - "quicksight:UpdateDataSourcePermissions", - "quicksight:CreateFolderMembership", - "quicksight:DeleteFolderMembership", - "quicksight:ListFoldersForResource", - "quicksight:TagResource", - "quicksight:UntagResource", - "quicksight:ListTagsForResource" - ] - }, - "delete": { - "permissions": [ - "quicksight:DescribeDataSource", - "quicksight:DescribeDataSourcePermissions", - "quicksight:DeleteDataSource", - "quicksight:ListTagsForResource" - ] - }, - "list": { - "permissions": [ - "quicksight:DescribeDataSource", - "quicksight:ListDataSources" - ] } }, - "additionalProperties": false, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-quicksight", - "tagging": { - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "cloudFormationSystemTags": true, - "tagProperty": "/properties/Tags", - "permissions": [ - "quicksight:TagResource", - "quicksight:UntagResource", - "quicksight:ListTagsForResource" - ] - }, "attributes": { - "Arn": { - "type": "string", - "description": "

The Amazon Resource Name (ARN) of the data source.

", - "markdownDescription": "

The Amazon Resource Name (ARN) of the data source.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "Status": { + "$ref": "#/definitions/ResourceStatus" }, "CreatedTime": { - "type": "string", - "description": "

The time that this data source was created.

", "format": "date-time", + "description": "

The time that this data source was created.

", + "type": "string", "markdownDescription": "

The time that this data source was created.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "LastUpdatedTime": { - "type": "string", - "description": "

The last time that this data source was updated.

", "format": "date-time", + "description": "

The last time that this data source was updated.

", + "type": "string", "markdownDescription": "

The last time that this data source was updated.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, - "Status": { - "$ref": "#/definitions/ResourceStatus" + "Arn": { + "description": "

The Amazon Resource Name (ARN) of the data source.

", + "type": "string", + "markdownDescription": "

The Amazon Resource Name (ARN) of the data source.

\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-quicksight-topic.json b/server/schema/resources/aws-quicksight-topic.json index 00339582..6984e6a1 100644 --- a/server/schema/resources/aws-quicksight-topic.json +++ b/server/schema/resources/aws-quicksight-topic.json @@ -133,6 +133,22 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: SINGULAR | RANGE | COLLECTIVE \nUpdate requires: No interruption\n" }, + "CustomInstructions": { + "type": "object", + "properties": { + "CustomInstructionsString": { + "type": "string", + "maxLength": 5000, + "minLength": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 5000 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "CustomInstructionsString" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DataAggregation": { "type": "object", "properties": { @@ -550,6 +566,32 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "Tag": { + "type": "object", + "description": "

The key or keys of the key-value pairs for the resource tag or tags assigned to the\n resource.

", + "properties": { + "Key": { + "type": "string", + "maxLength": 128, + "minLength": 1, + "description": "

Tag key.

", + "markdownDescription": "

Tag key.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "maxLength": 256, + "minLength": 1, + "description": "

Tag value.

", + "markdownDescription": "

Tag value.

\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "

The key or keys of the key-value pairs for the resource tag or tags assigned to the\n resource.

\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "TopicCalculatedField": { "type": "object", "properties": { @@ -1097,6 +1139,9 @@ "ConfigOptions": { "$ref": "#/definitions/TopicConfigOptions" }, + "CustomInstructions": { + "$ref": "#/definitions/CustomInstructions" + }, "DataSets": { "type": "array", "items": { @@ -1126,6 +1171,15 @@ "minLength": 1, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, + "Tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, "TopicId": { "type": "string", "maxLength": 256, @@ -1145,7 +1199,8 @@ "createOnlyProperties": [ "/properties/AwsAccountId", "/properties/FolderArns", - "/properties/TopicId" + "/properties/TopicId", + "/properties/Tags" ], "primaryIdentifier": [ "/properties/AwsAccountId", @@ -1156,12 +1211,14 @@ "permissions": [ "quicksight:CreateTopic", "quicksight:PassDataSet", - "quicksight:DescribeTopicRefresh" + "quicksight:DescribeTopicRefresh", + "quicksight:TagResource" ] }, "read": { "permissions": [ - "quicksight:DescribeTopic" + "quicksight:DescribeTopic", + "quicksight:ListTagsForResource" ] }, "update": { @@ -1184,10 +1241,15 @@ }, "additionalProperties": false, "tagging": { - "taggable": false, - "tagOnCreate": false, + "taggable": true, + "tagOnCreate": true, "tagUpdatable": false, - "cloudFormationSystemTags": false + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "quicksight:TagResource", + "quicksight:ListTagsForResource" + ] }, "attributes": { "Arn": { diff --git a/server/schema/resources/aws-rds-dbcluster.json b/server/schema/resources/aws-rds-dbcluster.json index e09fd9b6..6f24a9c2 100644 --- a/server/schema/resources/aws-rds-dbcluster.json +++ b/server/schema/resources/aws-rds-dbcluster.json @@ -57,8 +57,8 @@ }, "ClusterScalabilityType": { "type": "string", - "description": "Specifies the scalability mode of the Aurora DB cluster. When set to ``limitless``, the cluster operates as an Aurora Limitless Database, allowing you to create a DB shard group for horizontal scaling (sharding) capabilities. When set to ``standard`` (the default), the cluster uses normal DB instance creation.", - "markdownDescription": "Specifies the scalability mode of the Aurora DB cluster. When set to ``limitless``, the cluster operates as an Aurora Limitless Database, allowing you to create a DB shard group for horizontal scaling (sharding) capabilities. When set to ``standard`` (the default), the cluster uses normal DB instance creation.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "Specifies the scalability mode of the Aurora DB cluster. When set to ``limitless``, the cluster operates as an Aurora Limitless Database, allowing you to create a DB shard group for horizontal scaling (sharding) capabilities. When set to ``standard`` (the default), the cluster uses normal DB instance creation.\n *Important:* Automated backup retention isn't supported with Aurora Limitless Database clusters. If you set this property to ``limitless``, you cannot set ``DeleteAutomatedBackups`` to ``false``. To create a backup, use manual snapshots instead.", + "markdownDescription": "Specifies the scalability mode of the Aurora DB cluster. When set to ``limitless``, the cluster operates as an Aurora Limitless Database, allowing you to create a DB shard group for horizontal scaling (sharding) capabilities. When set to ``standard`` (the default), the cluster uses normal DB instance creation.\n *Important:* Automated backup retention isn't supported with Aurora Limitless Database clusters. If you set this property to ``limitless``, you cannot set ``DeleteAutomatedBackups`` to ``false``. To create a backup, use manual snapshots instead.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "CopyTagsToSnapshot": { "description": "A value that indicates whether to copy all tags from the DB cluster to snapshots of the DB cluster. The default is not to copy them.\n Valid for: Aurora DB clusters and Multi-AZ DB clusters", @@ -124,6 +124,11 @@ "type": "string", "markdownDescription": "A DB subnet group that you want to associate with this DB cluster. \n If you are restoring a DB cluster to a point in time with ``RestoreType`` set to ``copy-on-write``, and don't specify a DB subnet group name, then the DB cluster is restored with a default DB subnet group.\n Valid for: Aurora DB clusters and Multi-AZ DB clusters\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, + "DeleteAutomatedBackups": { + "type": "boolean", + "description": "Specifies whether to remove automated backups immediately after the DB cluster is deleted. This parameter isn't case-sensitive. The default is to remove automated backups immediately after the DB cluster is deleted, unless the AWS Backup policy specifies a point-in-time restore rule.", + "markdownDescription": "Specifies whether to remove automated backups immediately after the DB cluster is deleted. This parameter isn't case-sensitive. The default is to remove automated backups immediately after the DB cluster is deleted, unless the AWS Backup policy specifies a point-in-time restore rule.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, "DeletionProtection": { "description": "A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection is disabled.\n Valid for: Aurora DB clusters and Multi-AZ DB clusters", "type": "boolean", @@ -175,9 +180,9 @@ "markdownDescription": "The name of the database engine to be used for this DB cluster.\n Valid Values:\n + ``aurora-mysql`` \n + ``aurora-postgresql`` \n + ``mysql`` \n + ``postgres`` \n \n Valid for: Aurora DB clusters and Multi-AZ DB clusters\n\n---\n\nRequired: No \nType: String \nUpdate requires: Some interruptions\n" }, "EngineLifecycleSupport": { - "description": "The life cycle type for this DB cluster.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB cluster into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB cluster will fail if the DB major version is past its end of standard support date.\n You can use this setting to enroll your DB cluster into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB cluster past the end of standard support for that engine version. For more information, see the following sections:\n + Amazon Aurora - [Using Amazon RDS Extended Support](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html) in the *Amazon Aurora User Guide*\n + Amazon RDS - [Using Amazon RDS Extended Support](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*\n \n Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``", + "description": "The life cycle type for this DB cluster.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB cluster into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB cluster will fail if the DB major version is past its end of standard support date.\n You can use this setting to enroll your DB cluster into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB cluster past the end of standard support for that engine version. For more information, see the following sections:\n + Amazon Aurora - [Amazon RDS Extended Support with Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html) in the *Amazon Aurora User Guide*\n + Amazon RDS - [Amazon RDS Extended Support with Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*\n \n Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``", "type": "string", - "markdownDescription": "The life cycle type for this DB cluster.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB cluster into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB cluster will fail if the DB major version is past its end of standard support date.\n You can use this setting to enroll your DB cluster into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB cluster past the end of standard support for that engine version. For more information, see the following sections:\n + Amazon Aurora - [Using Amazon RDS Extended Support](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html) in the *Amazon Aurora User Guide*\n + Amazon RDS - [Using Amazon RDS Extended Support](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*\n \n Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The life cycle type for this DB cluster.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB cluster into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB cluster will fail if the DB major version is past its end of standard support date.\n You can use this setting to enroll your DB cluster into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB cluster past the end of standard support for that engine version. For more information, see the following sections:\n + Amazon Aurora - [Amazon RDS Extended Support with Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/extended-support.html) in the *Amazon Aurora User Guide*\n + Amazon RDS - [Amazon RDS Extended Support with Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*\n \n Valid for Cluster Type: Aurora DB clusters and Multi-AZ DB clusters\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "EngineMode": { "description": "The DB engine mode of the DB cluster, either ``provisioned`` or ``serverless``.\n The ``serverless`` engine mode only applies for Aurora Serverless v1 DB clusters. Aurora Serverless v2 DB clusters use the ``provisioned`` engine mode.\n For information about limitations and requirements for Serverless DB clusters, see the following sections in the *Amazon Aurora User Guide*:\n + [Limitations of Aurora Serverless v1](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.limitations) \n + [Requirements for Aurora Serverless v2](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.requirements.html) \n \n Valid for Cluster Type: Aurora DB clusters only", @@ -301,9 +306,14 @@ "markdownDescription": "The identifier for the DB snapshot or DB cluster snapshot to restore from.\n You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, you can use only the ARN to specify a DB snapshot.\n After you restore a DB cluster with a ``SnapshotIdentifier`` property, you must specify the same ``SnapshotIdentifier`` property for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the snapshot again, and the data in the database is not changed. However, if you don't specify the ``SnapshotIdentifier`` property, an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, a new DB cluster is restored from the specified ``SnapshotIdentifier`` property, and the original DB cluster is deleted.\n If you specify the ``SnapshotIdentifier`` property to restore a DB cluster (as opposed to specifying it for DB cluster updates), then don't specify the following properties:\n + ``GlobalClusterIdentifier`` \n + ``MasterUsername`` \n + ``MasterUserPassword`` \n + ``ReplicationSourceIdentifier`` \n + ``RestoreType`` \n + ``SourceDBClusterIdentifier`` \n + ``SourceRegion`` \n + ``StorageEncrypted`` (for an encrypted snapshot)\n + ``UseLatestRestorableTime`` \n \n Constraints:\n + Must match the identifier of an existing Snapshot.\n \n Valid for: Aurora DB clusters and Multi-AZ DB clusters\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "SourceDBClusterIdentifier": { - "description": "When restoring a DB cluster to a point in time, the identifier of the source DB cluster from which to restore.\n Constraints:\n + Must match the identifier of an existing DBCluster.\n \n Valid for: Aurora DB clusters and Multi-AZ DB clusters", + "description": "When restoring a DB cluster to a point in time, the identifier of the source DB cluster from which to restore.\n Constraints:\n + Must match the identifier of an existing DBCluster.\n + Cannot be specified if ``SourceDbClusterResourceId`` is specified. You must specify either ``SourceDBClusterIdentifier`` or ``SourceDbClusterResourceId``, but not both.\n \n Valid for: Aurora DB clusters and Multi-AZ DB clusters", "type": "string", - "markdownDescription": "When restoring a DB cluster to a point in time, the identifier of the source DB cluster from which to restore.\n Constraints:\n + Must match the identifier of an existing DBCluster.\n \n Valid for: Aurora DB clusters and Multi-AZ DB clusters\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "markdownDescription": "When restoring a DB cluster to a point in time, the identifier of the source DB cluster from which to restore.\n Constraints:\n + Must match the identifier of an existing DBCluster.\n + Cannot be specified if ``SourceDbClusterResourceId`` is specified. You must specify either ``SourceDBClusterIdentifier`` or ``SourceDbClusterResourceId``, but not both.\n \n Valid for: Aurora DB clusters and Multi-AZ DB clusters\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, + "SourceDbClusterResourceId": { + "description": "The resource ID of the source DB cluster from which to restore.", + "type": "string", + "markdownDescription": "The resource ID of the source DB cluster from which to restore.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, "SourceRegion": { "description": "The AWS Region which contains the source DB cluster when replicating a DB cluster. For example, ``us-east-1``. \n Valid for: Aurora DB clusters only", @@ -552,6 +562,7 @@ "/properties/RestoreType", "/properties/SnapshotIdentifier", "/properties/SourceDBClusterIdentifier", + "/properties/SourceDbClusterResourceId", "/properties/SourceRegion", "/properties/StorageEncrypted", "/properties/UseLatestRestorableTime" @@ -567,11 +578,13 @@ "writeOnlyProperties": [ "/properties/ClusterScalabilityType", "/properties/DBInstanceParameterGroupName", + "/properties/DeleteAutomatedBackups", "/properties/MasterUserPassword", "/properties/RestoreToTime", "/properties/RestoreType", "/properties/SnapshotIdentifier", "/properties/SourceDBClusterIdentifier", + "/properties/SourceDbClusterResourceId", "/properties/SourceRegion", "/properties/UseLatestRestorableTime" ], @@ -585,6 +598,7 @@ "rds:CreateDBCluster", "rds:CreateDBInstance", "rds:DescribeDBClusters", + "rds:DescribeDBClusterAutomatedBackups", "rds:DescribeDBClusterSnapshots", "rds:DescribeDBSnapshots", "rds:DescribeEvents", @@ -592,6 +606,7 @@ "rds:ModifyDBCluster", "rds:RestoreDBClusterFromSnapshot", "rds:RestoreDBClusterToPointInTime", + "rds:DescribeDBClusterSnapshots", "secretsmanager:CreateSecret", "secretsmanager:TagResource" ], diff --git a/server/schema/resources/aws-rds-dbclusterparametergroup.json b/server/schema/resources/aws-rds-dbclusterparametergroup.json index dbdbdf97..753258eb 100644 --- a/server/schema/resources/aws-rds-dbclusterparametergroup.json +++ b/server/schema/resources/aws-rds-dbclusterparametergroup.json @@ -98,7 +98,6 @@ "permissions": [ "rds:DescribeDBClusterParameterGroups", "rds:DescribeDBClusterParameters", - "rds:DescribeEngineDefaultClusterParameters", "rds:ListTagsForResource" ] }, diff --git a/server/schema/resources/aws-rds-dbinstance.json b/server/schema/resources/aws-rds-dbinstance.json index 1bb2e1e9..e79ef788 100644 --- a/server/schema/resources/aws-rds-dbinstance.json +++ b/server/schema/resources/aws-rds-dbinstance.json @@ -67,6 +67,34 @@ "description": "Information about an AWS Identity and Access Management (IAM) role that is associated with a DB instance.", "markdownDescription": "Information about an AWS Identity and Access Management (IAM) role that is associated with a DB instance.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "DBInstanceStatusInfo": { + "type": "object", + "additionalProperties": false, + "properties": { + "Message": { + "type": "string", + "description": "Details of the error if there is an error for the instance. If the instance isn't in an error state, this value is blank.", + "markdownDescription": "Details of the error if there is an error for the instance. If the instance isn't in an error state, this value is blank.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Normal": { + "type": "boolean", + "description": "Indicates whether the instance is operating normally (TRUE) or is in an error state (FALSE).", + "markdownDescription": "Indicates whether the instance is operating normally (TRUE) or is in an error state (FALSE).\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "Status": { + "type": "string", + "description": "The status of the DB instance. For a StatusType of read replica, the values can be replicating, replication stop point set, replication stop point reached, error, stopped, or terminated.", + "markdownDescription": "The status of the DB instance. For a StatusType of read replica, the values can be replicating, replication stop point set, replication stop point reached, error, stopped, or terminated.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "StatusType": { + "type": "string", + "description": "This value is currently \"read replication.\"", + "markdownDescription": "This value is currently \"read replication.\"\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "description": "Provides a list of status information for a DB instance.", + "markdownDescription": "Provides a list of status information for a DB instance.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "ProcessorFeature": { "type": "object", "additionalProperties": false, @@ -173,6 +201,11 @@ "description": "The retention period for automated backups in a different AWS Region. Use this parameter to set a unique retention period that only applies to cross-Region automated backups. To enable automated backups in a different Region, specify a positive value for the ``AutomaticBackupReplicationRegion`` parameter. \n If not specified, this parameter defaults to the value of the ``BackupRetentionPeriod`` parameter. The maximum allowed value is 35.", "markdownDescription": "The retention period for automated backups in a different AWS Region. Use this parameter to set a unique retention period that only applies to cross-Region automated backups. To enable automated backups in a different Region, specify a positive value for the ``AutomaticBackupReplicationRegion`` parameter. \n If not specified, this parameter defaults to the value of the ``BackupRetentionPeriod`` parameter. The maximum allowed value is 35.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, + "AutomaticRestartTime": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "AvailabilityZone": { "type": "string", "description": "The Availability Zone (AZ) where the database will be created. For information on AWS-Regions and Availability Zones, see [Regions and Availability Zones](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.RegionsAndAvailabilityZones.html).\n For Amazon Aurora, each Aurora DB cluster hosts copies of its storage in three separate Availability Zones. Specify one of these Availability Zones. Aurora automatically chooses an appropriate Availability Zone if you don't specify one.\n Default: A random, system-chosen Availability Zone in the endpoint's AWS-Region.\n Constraints:\n + The ``AvailabilityZone`` parameter can't be specified if the DB instance is a Multi-AZ deployment.\n + The specified Availability Zone must be in the same AWS-Region as the current endpoint.\n \n Example: ``us-east-1d``", @@ -184,6 +217,11 @@ "description": "The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.\n *Amazon Aurora* \n Not applicable. The retention period for automated backups is managed by the DB cluster.\n Default: 1\n Constraints:\n + Must be a value from 0 to 35\n + Can't be set to 0 if the DB instance is a source to read replicas", "markdownDescription": "The number of days for which automated backups are retained. Setting this parameter to a positive number enables backups. Setting this parameter to 0 disables automated backups.\n *Amazon Aurora* \n Not applicable. The retention period for automated backups is managed by the DB cluster.\n Default: 1\n Constraints:\n + Must be a value from 0 to 35\n + Can't be set to 0 if the DB instance is a source to read replicas\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Some interruptions\n" }, + "BackupTarget": { + "type": "string", + "description": "The location for storing automated backups and manual snapshots.\n Valid Values:\n + ``local`` (Dedicated Local Zone)\n + ``outposts`` (AWS Outposts)\n + ``region`` (AWS-Region)\n \n Default: ``region``\n For more information, see [Working with Amazon RDS on Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) in the *Amazon RDS User Guide*.", + "markdownDescription": "The location for storing automated backups and manual snapshots.\n Valid Values:\n + ``local`` (Dedicated Local Zone)\n + ``outposts`` (AWS Outposts)\n + ``region`` (AWS-Region)\n \n Default: ``region``\n For more information, see [Working with Amazon RDS on Outposts](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html) in the *Amazon RDS User Guide*.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + }, "CACertificateIdentifier": { "type": "string", "description": "The identifier of the CA certificate for this DB instance.\n For more information, see [Using SSL/TLS to encrypt a connection to a DB instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html) in the *Amazon RDS User Guide* and [Using SSL/TLS to encrypt a connection to a DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/UsingWithRDS.SSL.html) in the *Amazon Aurora User Guide*.", @@ -246,6 +284,11 @@ "description": "A name for the DB instance. If you specify a name, AWS CloudFormation converts it to lowercase. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the DB instance. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n For information about constraints that apply to DB instance identifiers, see [Naming constraints in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints) in the *Amazon RDS User Guide*.\n If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.", "markdownDescription": "A name for the DB instance. If you specify a name, AWS CloudFormation converts it to lowercase. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the DB instance. For more information, see [Name Type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html).\n For information about constraints that apply to DB instance identifiers, see [Naming constraints in Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.Constraints) in the *Amazon RDS User Guide*.\n If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 63 \nPattern: ^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$ \nUpdate requires: Replacement\n" }, + "DBInstanceStatus": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "DbiResourceId": { "type": "string", "description": "", @@ -366,8 +409,8 @@ }, "EngineLifecycleSupport": { "type": "string", - "description": "The life cycle type for this DB instance.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB instance will fail if the DB major version is past its end of standard support date.\n This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.\n You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB instance past the end of standard support for that engine version. For more information, see [Using Amazon RDS Extended Support](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*.\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``", - "markdownDescription": "The life cycle type for this DB instance.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB instance will fail if the DB major version is past its end of standard support date.\n This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.\n You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB instance past the end of standard support for that engine version. For more information, see [Using Amazon RDS Extended Support](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*.\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "description": "The life cycle type for this DB instance.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB instance will fail if the DB major version is past its end of standard support date.\n This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.\n You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB instance past the end of standard support for that engine version. For more information, see [Amazon RDS Extended Support with Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*.\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``", + "markdownDescription": "The life cycle type for this DB instance.\n By default, this value is set to ``open-source-rds-extended-support``, which enrolls your DB instance into Amazon RDS Extended Support. At the end of standard support, you can avoid charges for Extended Support by setting the value to ``open-source-rds-extended-support-disabled``. In this case, creating the DB instance will fail if the DB major version is past its end of standard support date.\n This setting applies only to RDS for MySQL and RDS for PostgreSQL. For Amazon Aurora DB instances, the life cycle type is managed by the DB cluster.\n You can use this setting to enroll your DB instance into Amazon RDS Extended Support. With RDS Extended Support, you can run the selected major engine version on your DB instance past the end of standard support for that engine version. For more information, see [Amazon RDS Extended Support with Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/extended-support.html) in the *Amazon RDS User Guide*.\n Valid Values: ``open-source-rds-extended-support | open-source-rds-extended-support-disabled``\n Default: ``open-source-rds-extended-support``\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "EngineVersion": { "type": "string", @@ -379,21 +422,43 @@ "description": "Specifies whether to manage the master user password with AWS Secrets Manager.\n For more information, see [Password management with Secrets Manager](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html) in the *Amazon RDS User Guide.*\n Constraints:\n + Can't manage the master user password with AWS Secrets Manager if ``MasterUserPassword`` is specified.", "markdownDescription": "Specifies whether to manage the master user password with AWS Secrets Manager.\n For more information, see [Password management with Secrets Manager](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html) in the *Amazon RDS User Guide.*\n Constraints:\n + Can't manage the master user password with AWS Secrets Manager if ``MasterUserPassword`` is specified.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, + "InstanceCreateTime": { + "type": "string", + "description": "", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "Iops": { "type": "integer", "description": "The number of I/O operations per second (IOPS) that the database provisions. The value must be equal to or greater than 1000. \n If you specify this property, you must follow the range of allowed ratios of your requested IOPS rate to the amount of storage that you allocate (IOPS to allocated storage). For example, you can provision an Oracle database instance with 1000 IOPS and 200 GiB of storage (a ratio of 5:1), or specify 2000 IOPS with 200 GiB of storage (a ratio of 10:1). For more information, see [Amazon RDS Provisioned IOPS Storage to Improve Performance](https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/CHAP_Storage.html#USER_PIOPS) in the *Amazon RDS User Guide*.\n If you specify ``io1`` for the ``StorageType`` property, then you must also specify the ``Iops`` property.\n Constraints:\n + For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance.\n + For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.", "markdownDescription": "The number of I/O operations per second (IOPS) that the database provisions. The value must be equal to or greater than 1000. \n If you specify this property, you must follow the range of allowed ratios of your requested IOPS rate to the amount of storage that you allocate (IOPS to allocated storage). For example, you can provision an Oracle database instance with 1000 IOPS and 200 GiB of storage (a ratio of 5:1), or specify 2000 IOPS with 200 GiB of storage (a ratio of 10:1). For more information, see [Amazon RDS Provisioned IOPS Storage to Improve Performance](https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/CHAP_Storage.html#USER_PIOPS) in the *Amazon RDS User Guide*.\n If you specify ``io1`` for the ``StorageType`` property, then you must also specify the ``Iops`` property.\n Constraints:\n + For RDS for Db2, MariaDB, MySQL, Oracle, and PostgreSQL - Must be a multiple between .5 and 50 of the storage amount for the DB instance.\n + For RDS for SQL Server - Must be a multiple between 1 and 50 of the storage amount for the DB instance.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, + "IsStorageConfigUpgradeAvailable": { + "type": "boolean", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\nRead only property: Yes" + }, "KmsKeyId": { "type": "string", "description": "The ARN of the AWS KMS key that's used to encrypt the DB instance, such as ``arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef``. If you enable the StorageEncrypted property but don't specify this property, AWS CloudFormation uses the default KMS key. If you specify this property, you must set the StorageEncrypted property to true. \n If you specify the ``SourceDBInstanceIdentifier`` or ``SourceDbiResourceId`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. However, if the source DB instance is in a different AWS Region, you must specify a KMS key ID.\n If you specify the ``SourceDBInstanceAutomatedBackupsArn`` property, don't specify this property. The value is inherited from the source DB instance automated backup, and if the automated backup is encrypted, the specified ``KmsKeyId`` property is used.\n If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region.\n If you specify the ``DBSnapshotIdentifier`` property, don't specify this property. The ``StorageEncrypted`` property value is inherited from the snapshot. If the DB instance is encrypted, the specified ``KmsKeyId`` property is also inherited from the snapshot.\n If you specify ``DBSecurityGroups``, AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see [Using Amazon RDS with Amazon VPC](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html) in the *Amazon RDS User Guide*.\n *Amazon Aurora* \n Not applicable. The KMS key identifier is managed by the DB cluster.", "markdownDescription": "The ARN of the AWS KMS key that's used to encrypt the DB instance, such as ``arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef``. If you enable the StorageEncrypted property but don't specify this property, AWS CloudFormation uses the default KMS key. If you specify this property, you must set the StorageEncrypted property to true. \n If you specify the ``SourceDBInstanceIdentifier`` or ``SourceDbiResourceId`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used. However, if the source DB instance is in a different AWS Region, you must specify a KMS key ID.\n If you specify the ``SourceDBInstanceAutomatedBackupsArn`` property, don't specify this property. The value is inherited from the source DB instance automated backup, and if the automated backup is encrypted, the specified ``KmsKeyId`` property is used.\n If you create an encrypted read replica in a different AWS Region, then you must specify a KMS key for the destination AWS Region. KMS encryption keys are specific to the region that they're created in, and you can't use encryption keys from one region in another region.\n If you specify the ``DBSnapshotIdentifier`` property, don't specify this property. The ``StorageEncrypted`` property value is inherited from the snapshot. If the DB instance is encrypted, the specified ``KmsKeyId`` property is also inherited from the snapshot.\n If you specify ``DBSecurityGroups``, AWS CloudFormation ignores this property. To specify both a security group and this property, you must use a VPC security group. For more information about Amazon RDS and VPC, see [Using Amazon RDS with Amazon VPC](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.html) in the *Amazon RDS User Guide*.\n *Amazon Aurora* \n Not applicable. The KMS key identifier is managed by the DB cluster.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, + "LatestRestorableTime": { + "type": "string", + "description": "", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "LicenseModel": { "type": "string", "description": "License model information for this DB instance.\n Valid Values:\n + Aurora MySQL - ``general-public-license``\n + Aurora PostgreSQL - ``postgresql-license``\n + RDS for Db2 - ``bring-your-own-license``. For more information about RDS for Db2 licensing, see [](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html) in the *Amazon RDS User Guide.*\n + RDS for MariaDB - ``general-public-license``\n + RDS for Microsoft SQL Server - ``license-included``\n + RDS for MySQL - ``general-public-license``\n + RDS for Oracle - ``bring-your-own-license`` or ``license-included``\n + RDS for PostgreSQL - ``postgresql-license``\n \n If you've specified ``DBSecurityGroups`` and then you update the license model, AWS CloudFormation replaces the underlying DB instance. This will incur some interruptions to database availability.", "markdownDescription": "License model information for this DB instance.\n Valid Values:\n + Aurora MySQL - ``general-public-license``\n + Aurora PostgreSQL - ``postgresql-license``\n + RDS for Db2 - ``bring-your-own-license``. For more information about RDS for Db2 licensing, see [](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/db2-licensing.html) in the *Amazon RDS User Guide.*\n + RDS for MariaDB - ``general-public-license``\n + RDS for Microsoft SQL Server - ``license-included``\n + RDS for MySQL - ``general-public-license``\n + RDS for Oracle - ``bring-your-own-license`` or ``license-included``\n + RDS for PostgreSQL - ``postgresql-license``\n \n If you've specified ``DBSecurityGroups`` and then you update the license model, AWS CloudFormation replaces the underlying DB instance. This will incur some interruptions to database availability.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "ListenerEndpoint": { + "$ref": "#/definitions/Endpoint", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + }, "MasterUsername": { "type": "string", "description": "The master user name for the DB instance.\n If you specify the ``SourceDBInstanceIdentifier`` or ``DBSnapshotIdentifier`` property, don't specify this property. The value is inherited from the source DB instance or snapshot.\n When migrating a self-managed Db2 database, we recommend that you use the same master username as your self-managed Db2 instance name.\n *Amazon Aurora* \n Not applicable. The name for the master user is managed by the DB cluster. \n *RDS for Db2* \n Constraints:\n + Must be 1 to 16 letters or numbers.\n + First character must be a letter.\n + Can't be a reserved word for the chosen database engine.\n \n *RDS for MariaDB* \n Constraints:\n + Must be 1 to 16 letters or numbers.\n + Can't be a reserved word for the chosen database engine.\n \n *RDS for Microsoft SQL Server* \n Constraints:\n + Must be 1 to 128 letters or numbers.\n + First character must be a letter.\n + Can't be a reserved word for the chosen database engine.\n \n *RDS for MySQL* \n Constraints:\n + Must be 1 to 16 letters or numbers.\n + First character must be a letter.\n + Can't be a reserved word for the chosen database engine.\n \n *RDS for Oracle* \n Constraints:\n + Must be 1 to 30 letters or numbers.\n + First character must be a letter.\n + Can't be a reserved word for the chosen database engine.\n \n *RDS for PostgreSQL* \n Constraints:\n + Must be 1 to 63 letters or numbers.\n + First character must be a letter.\n + Can't be a reserved word for the chosen database engine.", @@ -428,8 +493,8 @@ }, "MultiAZ": { "type": "boolean", - "description": "Specifies whether the DB instance is a Multi-AZ deployment. You can't set the ``AvailabilityZone`` parameter if the DB instance is a Multi-AZ deployment.\n This setting doesn't apply to the following DB instances:\n + Amazon Aurora (DB instance Availability Zones (AZs) are managed by the DB cluster.)\n + RDS Custom", - "markdownDescription": "Specifies whether the DB instance is a Multi-AZ deployment. You can't set the ``AvailabilityZone`` parameter if the DB instance is a Multi-AZ deployment.\n This setting doesn't apply to the following DB instances:\n + Amazon Aurora (DB instance Availability Zones (AZs) are managed by the DB cluster.)\n + RDS Custom\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Some interruptions\n" + "description": "Specifies whether the DB instance is a Multi-AZ deployment. You can't set the ``AvailabilityZone`` parameter if the DB instance is a Multi-AZ deployment.\n This setting doesn't apply to Amazon Aurora because the DB instance Availability Zones (AZs) are managed by the DB cluster.", + "markdownDescription": "Specifies whether the DB instance is a Multi-AZ deployment. You can't set the ``AvailabilityZone`` parameter if the DB instance is a Multi-AZ deployment.\n This setting doesn't apply to Amazon Aurora because the DB instance Availability Zones (AZs) are managed by the DB cluster.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Some interruptions\n" }, "NcharCharacterSetName": { "type": "string", @@ -446,6 +511,11 @@ "description": "Indicates that the DB instance should be associated with the specified option group.\n Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group. Also, that option group can't be removed from a DB instance once it is associated with a DB instance.", "markdownDescription": "Indicates that the DB instance should be associated with the specified option group.\n Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group. Also, that option group can't be removed from a DB instance once it is associated with a DB instance.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "PercentProgress": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "PerformanceInsightsKMSKeyId": { "type": "string", "description": "The AWS KMS key identifier for encryption of Performance Insights data.\n The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key.\n If you do not specify a value for ``PerformanceInsightsKMSKeyId``, then Amazon RDS uses your default KMS key. There is a default KMS key for your AWS account. Your AWS account has a different default KMS key for each AWS Region.\n For information about enabling Performance Insights, see [EnablePerformanceInsights](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-enableperformanceinsights).", @@ -490,6 +560,24 @@ "description": "Indicates whether the DB instance is an internet-facing instance. If you specify true, AWS CloudFormation creates an instance with a publicly resolvable DNS name, which resolves to a public IP address. If you specify false, AWS CloudFormation creates an internal instance with a DNS name that resolves to a private IP address. \n The default behavior value depends on your VPC setup and the database subnet group. For more information, see the ``PubliclyAccessible`` parameter in the [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) in the *Amazon RDS API Reference*.", "markdownDescription": "Indicates whether the DB instance is an internet-facing instance. If you specify true, AWS CloudFormation creates an instance with a publicly resolvable DNS name, which resolves to a public IP address. If you specify false, AWS CloudFormation creates an internal instance with a DNS name that resolves to a private IP address. \n The default behavior value depends on your VPC setup and the database subnet group. For more information, see the ``PubliclyAccessible`` parameter in the [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) in the *Amazon RDS API Reference*.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, + "ReadReplicaDBClusterIdentifiers": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ReadReplicaDBInstanceIdentifiers": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, "ReplicaMode": { "description": "The open mode of an Oracle read replica. For more information, see [Working with Oracle Read Replicas for Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/oracle-read-replicas.html) in the *Amazon RDS User Guide*.\n This setting is only supported in RDS for Oracle.\n Default: ``open-read-only``\n Valid Values: ``open-read-only`` or ``mounted``", "type": "string", @@ -501,6 +589,16 @@ "format": "date-time", "markdownDescription": "The date and time to restore from. This parameter applies to point-in-time recovery. For more information, see [Restoring a DB instance to a specified time](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIT.html) in the in the *Amazon RDS User Guide*.\n Constraints:\n + Must be a time in Universal Coordinated Time (UTC) format.\n + Must be before the latest restorable time for the DB instance.\n + Can't be specified if the ``UseLatestRestorableTime`` parameter is enabled.\n \n Example: ``2009-09-07T23:45:00Z``\n\n---\n\nRequired: No \nType: String \nUpdate requires: Some interruptions\n" }, + "ResumeFullAutomationModeTime": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SecondaryAvailabilityZone": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "SourceDBClusterIdentifier": { "description": "The identifier of the Multi-AZ DB cluster that will act as the source for the read replica. Each DB cluster can have up to 15 read replicas.\n Constraints:\n + Must be the identifier of an existing Multi-AZ DB cluster.\n + Can't be specified if the ``SourceDBInstanceIdentifier`` parameter is also specified.\n + The specified DB cluster must have automatic backups enabled, that is, its backup retention period must be greater than 0.\n + The source DB cluster must be in the same AWS-Region as the read replica. Cross-Region replication isn't supported.", "type": "string", @@ -526,6 +624,14 @@ "description": "The ID of the region that contains the source DB instance for the read replica.", "markdownDescription": "The ID of the region that contains the source DB instance for the read replica.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" }, + "StatusInfos": { + "type": "array", + "items": { + "$ref": "#/definitions/DBInstanceStatusInfo" + }, + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, "StorageEncrypted": { "type": "boolean", "description": "A value that indicates whether the DB instance is encrypted. By default, it isn't encrypted.\n If you specify the ``KmsKeyId`` property, then you must enable encryption.\n If you specify the ``SourceDBInstanceIdentifier`` or ``SourceDbiResourceId`` property, don't specify this property. The value is inherited from the source DB instance, and if the DB instance is encrypted, the specified ``KmsKeyId`` property is used.\n If you specify the ``SourceDBInstanceAutomatedBackupsArn`` property, don't specify this property. The value is inherited from the source DB instance automated backup. \n If you specify ``DBSnapshotIdentifier`` property, don't specify this property. The value is inherited from the snapshot.\n *Amazon Aurora* \n Not applicable. The encryption for DB instances is managed by the DB cluster.", @@ -615,6 +721,7 @@ "/properties/StorageType": "$lowercase(StorageType)" }, "createOnlyProperties": [ + "/properties/BackupTarget", "/properties/CharacterSetName", "/properties/CustomIAMInstanceProfile", "/properties/DBClusterIdentifier", @@ -670,16 +777,31 @@ "/properties/ApplyImmediately" ], "readOnlyProperties": [ + "/properties/AutomaticRestartTime", + "/properties/CertificateDetails", + "/properties/CertificateDetails/CAIdentifier", + "/properties/CertificateDetails/ValidTill", "/properties/Endpoint", "/properties/Endpoint/Address", "/properties/Endpoint/Port", "/properties/Endpoint/HostedZoneId", "/properties/DbiResourceId", "/properties/DBInstanceArn", + "/properties/DBInstanceStatus", + "/properties/InstanceCreateTime", + "/properties/IsStorageConfigUpgradeAvailable", + "/properties/LatestRestorableTime", + "/properties/ListenerEndpoint", + "/properties/ListenerEndpoint/Address", + "/properties/ListenerEndpoint/Port", + "/properties/ListenerEndpoint/HostedZoneId", "/properties/MasterUserSecret/SecretArn", - "/properties/CertificateDetails", - "/properties/CertificateDetails/CAIdentifier", - "/properties/CertificateDetails/ValidTill" + "/properties/PercentProgress", + "/properties/ReadReplicaDBClusterIdentifiers", + "/properties/ReadReplicaDBInstanceIdentifiers", + "/properties/ResumeFullAutomationModeTime", + "/properties/SecondaryAvailabilityZone", + "/properties/StatusInfos" ], "primaryIdentifier": [ "/properties/DBInstanceIdentifier" @@ -794,6 +916,11 @@ ] }, "attributes": { + "AutomaticRestartTime": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "CertificateDetails": { "$ref": "#/definitions/CertificateDetails", "description": "", @@ -804,6 +931,11 @@ "description": "", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, + "DBInstanceStatus": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "DbiResourceId": { "type": "string", "description": "", @@ -813,6 +945,69 @@ "$ref": "#/definitions/Endpoint", "description": "", "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + }, + "InstanceCreateTime": { + "type": "string", + "description": "", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "IsStorageConfigUpgradeAvailable": { + "type": "boolean", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\nRead only property: Yes" + }, + "LatestRestorableTime": { + "type": "string", + "description": "", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ListenerEndpoint": { + "$ref": "#/definitions/Endpoint", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + }, + "PercentProgress": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ReadReplicaDBClusterIdentifiers": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ReadReplicaDBInstanceIdentifiers": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ResumeFullAutomationModeTime": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SecondaryAvailabilityZone": { + "type": "string", + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "StatusInfos": { + "type": "array", + "items": { + "$ref": "#/definitions/DBInstanceStatusInfo" + }, + "description": "", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-rds-dbparametergroup.json b/server/schema/resources/aws-rds-dbparametergroup.json index 13f74315..48780884 100644 --- a/server/schema/resources/aws-rds-dbparametergroup.json +++ b/server/schema/resources/aws-rds-dbparametergroup.json @@ -96,7 +96,6 @@ "permissions": [ "rds:DescribeDBParameterGroups", "rds:DescribeDBParameters", - "rds:DescribeEngineDefaultParameters", "rds:ListTagsForResource" ] }, diff --git a/server/schema/resources/aws-rds-dbproxy.json b/server/schema/resources/aws-rds-dbproxy.json index dd33aa79..18d82552 100644 --- a/server/schema/resources/aws-rds-dbproxy.json +++ b/server/schema/resources/aws-rds-dbproxy.json @@ -39,11 +39,12 @@ "type": "string", "enum": [ "MYSQL_NATIVE_PASSWORD", + "MYSQL_CACHING_SHA2_PASSWORD", "POSTGRES_SCRAM_SHA_256", "POSTGRES_MD5", "SQL_SERVER_AUTHENTICATION" ], - "markdownDescription": "The type of authentication the proxy uses for connections from clients.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MYSQL_NATIVE_PASSWORD | POSTGRES_SCRAM_SHA_256 | POSTGRES_MD5 | SQL_SERVER_AUTHENTICATION \nUpdate requires: No interruption\n" + "markdownDescription": "The type of authentication the proxy uses for connections from clients.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MYSQL_NATIVE_PASSWORD | MYSQL_CACHING_SHA2_PASSWORD | POSTGRES_SCRAM_SHA_256 | POSTGRES_MD5 | SQL_SERVER_AUTHENTICATION \nUpdate requires: No interruption\n" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-rds-dbshardgroup.json b/server/schema/resources/aws-rds-dbshardgroup.json index 4319461a..0d7fb33f 100644 --- a/server/schema/resources/aws-rds-dbshardgroup.json +++ b/server/schema/resources/aws-rds-dbshardgroup.json @@ -34,10 +34,10 @@ "markdownDescription": "The name of the primary DB cluster for the DB shard group.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 63 \nUpdate requires: Replacement\n" }, "ComputeRedundancy": { - "description": "Specifies whether to create standby DB shard groups for the DB shard group. Valid values are the following:\n + 0 - Creates a DB shard group without a standby DB shard group. This is the default value.\n + 1 - Creates a DB shard group with a standby DB shard group in a different Availability Zone (AZ).\n + 2 - Creates a DB shard group with two standby DB shard groups in two different AZs.", + "description": "Specifies whether to create standby standby DB data access shard for the DB shard group. Valid values are the following:\n + 0 - Creates a DB shard group without a standby DB data access shard. This is the default value.\n + 1 - Creates a DB shard group with a standby DB data access shard in a different Availability Zone (AZ).\n + 2 - Creates a DB shard group with two standby DB data access shard in two different AZs.", "minimum": 0, "type": "integer", - "markdownDescription": "Specifies whether to create standby DB shard groups for the DB shard group. Valid values are the following:\n + 0 - Creates a DB shard group without a standby DB shard group. This is the default value.\n + 1 - Creates a DB shard group with a standby DB shard group in a different Availability Zone (AZ).\n + 2 - Creates a DB shard group with two standby DB shard groups in two different AZs.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies whether to create standby standby DB data access shard for the DB shard group. Valid values are the following:\n + 0 - Creates a DB shard group without a standby DB data access shard. This is the default value.\n + 1 - Creates a DB shard group with a standby DB data access shard in a different Availability Zone (AZ).\n + 2 - Creates a DB shard group with two standby DB data access shard in two different AZs.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "MaxACU": { "description": "The maximum capacity of the DB shard group in Aurora capacity units (ACUs).", diff --git a/server/schema/resources/aws-redshift-cluster.json b/server/schema/resources/aws-redshift-cluster.json index 7fc9e4e7..1708d227 100644 --- a/server/schema/resources/aws-redshift-cluster.json +++ b/server/schema/resources/aws-redshift-cluster.json @@ -55,26 +55,22 @@ "redshift:GetResourcePolicy", "redshift:PutResourcePolicy", "redshift:ModifyClusterMaintenance", - "ec2:DescribeVpcs", - "ec2:DescribeSubnets", - "ec2:DescribeNetworkInterfaces", - "ec2:DescribeAddresses", + "ec2:Describe*", "ec2:AssociateAddress", "ec2:CreateNetworkInterface", "ec2:ModifyNetworkInterfaceAttribute", "ec2:CreateVpcEndpoint", - "ec2:DescribeVpcEndpoints", "ec2:ModifyVpcEndpoint", "ec2:AllocateAddress", "ec2:CreateSecurityGroup", - "ec2:DescribeVpcAttribute", - "ec2:DescribeSecurityGroups", - "ec2:DescribeInternetGateways", - "ec2:DescribeSecurityGroupRules", - "ec2:DescribeAvailabilityZones", - "ec2:DescribeNetworkAcls", - "ec2:DescribeRouteTables", - "cloudwatch:PutMetricData" + "cloudwatch:PutMetricData", + "kms:GenerateDataKey", + "kms:CreateGrant", + "kms:DescribeKey", + "kms:Encrypt", + "kms:Decrypt", + "secretsmanager:CreateSecret", + "secretsmanager:TagResource" ], "timeoutInMinutes": 2160 }, @@ -106,7 +102,14 @@ "redshift:PutResourcePolicy", "redshift:GetResourcePolicy", "redshift:DeleteResourcePolicy", - "cloudwatch:PutMetricData" + "cloudwatch:PutMetricData", + "kms:GenerateDataKey", + "kms:CreateGrant", + "kms:DescribeKey", + "kms:Encrypt", + "kms:Decrypt", + "secretsmanager:CreateSecret", + "secretsmanager:TagResource" ], "timeoutInMinutes": 2160 }, @@ -155,10 +158,6 @@ "type": "object", "properties": { "BucketName": { - "relationshipRef": { - "typeName": "AWS::S3::Bucket", - "propertyPath": "/properties/BucketName" - }, "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, diff --git a/server/schema/resources/aws-redshift-clustersubnetgroup.json b/server/schema/resources/aws-redshift-clustersubnetgroup.json index 30a5f959..d339df1f 100644 --- a/server/schema/resources/aws-redshift-clustersubnetgroup.json +++ b/server/schema/resources/aws-redshift-clustersubnetgroup.json @@ -1,6 +1,6 @@ { "typeName": "AWS::Redshift::ClusterSubnetGroup", - "description": "Specifies an Amazon Redshift subnet group.", + "description": "Resource Type definition for AWS::Redshift::ClusterSubnetGroup. Specifies an Amazon Redshift subnet group.", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-redshift", "definitions": { "Tag": { @@ -73,19 +73,23 @@ "Description", "SubnetIds" ], - "primaryIdentifier": [ - "/properties/ClusterSubnetGroupName" - ], "readOnlyProperties": [ "/properties/ClusterSubnetGroupName" ], - "writeOnlyProperties": [ - "/properties/Tags", - "/properties/Tags/*/Key", - "/properties/Tags/*/Value" + "primaryIdentifier": [ + "/properties/ClusterSubnetGroupName" ], "tagging": { - "taggable": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "redshift:DescribeTags", + "redshift:CreateTags", + "redshift:DeleteTags" + ] }, "handlers": { "create": { @@ -146,6 +150,7 @@ "redshift:DeleteClusterSubnetGroup", "redshift:DescribeClusterSubnetGroups", "redshift:DescribeTags", + "redshift:DeleteTags", "ec2:AllocateAddress", "ec2:AssociateAddress", "ec2:AttachNetworkInterface", diff --git a/server/schema/resources/aws-redshift-endpointaccess.json b/server/schema/resources/aws-redshift-endpointaccess.json index acb4ad73..56f9dd98 100644 --- a/server/schema/resources/aws-redshift-endpointaccess.json +++ b/server/schema/resources/aws-redshift-endpointaccess.json @@ -112,10 +112,6 @@ "markdownDescription": "The status of the VPC security group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "VpcSecurityGroupId": { - "relationshipRef": { - "typeName": "AWS::EC2::SecurityGroup", - "propertyPath": "/properties/Id" - }, "description": "The identifier of the VPC security group.", "type": "string", "markdownDescription": "The identifier of the VPC security group.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -129,10 +125,6 @@ "type": "object", "properties": { "PrivateIpAddress": { - "relationshipRef": { - "typeName": "AWS::EC2::NetworkInterface", - "propertyPath": "/properties/PrivateIpAddress" - }, "description": "The IPv4 address of the network interface within the subnet.", "type": "string", "markdownDescription": "The IPv4 address of the network interface within the subnet.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" @@ -143,19 +135,11 @@ "markdownDescription": "The Availability Zone.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "SubnetId": { - "relationshipRef": { - "typeName": "AWS::EC2::NetworkInterface", - "propertyPath": "/properties/SubnetId" - }, "description": "The subnet identifier.", "type": "string", "markdownDescription": "The subnet identifier.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "NetworkInterfaceId": { - "relationshipRef": { - "typeName": "AWS::EC2::NetworkInterface", - "propertyPath": "/properties/Id" - }, "description": "The network interface identifier.", "type": "string", "markdownDescription": "The network interface identifier.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" diff --git a/server/schema/resources/aws-redshift-eventsubscription.json b/server/schema/resources/aws-redshift-eventsubscription.json index de09b85a..6f19e8d6 100644 --- a/server/schema/resources/aws-redshift-eventsubscription.json +++ b/server/schema/resources/aws-redshift-eventsubscription.json @@ -1,27 +1,17 @@ { + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-redshift", "tagging": { - "taggable": false + "permissions": [ + "redshift:DescribeTags", + "redshift:CreateTags", + "redshift:DeleteTags" + ], + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": false }, - "typeName": "AWS::Redshift::EventSubscription", - "readOnlyProperties": [ - "/properties/CustomerAwsId", - "/properties/CustSubscriptionId", - "/properties/Status", - "/properties/SubscriptionCreationTime", - "/properties/SourceIdsList", - "/properties/EventCategoriesList" - ], - "description": "The `AWS::Redshift::EventSubscription` resource creates an Amazon Redshift Event Subscription.", - "createOnlyProperties": [ - "/properties/SubscriptionName" - ], - "primaryIdentifier": [ - "/properties/SubscriptionName" - ], - "required": [ - "SubscriptionName" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-redshift", "handlers": { "read": { "permissions": [ @@ -61,12 +51,23 @@ ] } }, - "writeOnlyProperties": [ - "/properties/Tags", - "/properties/Tags/*/Key", - "/properties/Tags/*/Value" + "typeName": "AWS::Redshift::EventSubscription", + "readOnlyProperties": [ + "/properties/CustomerAwsId", + "/properties/CustSubscriptionId", + "/properties/Status", + "/properties/SubscriptionCreationTime", + "/properties/SourceIdsList", + "/properties/EventCategoriesList" + ], + "description": "The `AWS::Redshift::EventSubscription` resource creates an Amazon Redshift Event Subscription.", + "createOnlyProperties": [ + "/properties/SubscriptionName" ], "additionalProperties": false, + "primaryIdentifier": [ + "/properties/SubscriptionName" + ], "definitions": { "Tag": { "description": "A key-value pair to associate with a resource.", @@ -216,6 +217,9 @@ "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, + "required": [ + "SubscriptionName" + ], "attributes": { "Status": { "description": "The status of the Amazon Redshift event notification subscription.", diff --git a/server/schema/resources/aws-redshift-scheduledaction.json b/server/schema/resources/aws-redshift-scheduledaction.json index 61e7a2e6..1a704ba0 100644 --- a/server/schema/resources/aws-redshift-scheduledaction.json +++ b/server/schema/resources/aws-redshift-scheduledaction.json @@ -96,26 +96,14 @@ "type": "object", "properties": { "NodeType": { - "relationshipRef": { - "typeName": "AWS::Redshift::Cluster", - "propertyPath": "/properties/NodeType" - }, "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "NumberOfNodes": { - "relationshipRef": { - "typeName": "AWS::Redshift::Cluster", - "propertyPath": "/properties/NumberOfNodes" - }, "type": "integer", "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "ClusterType": { - "relationshipRef": { - "typeName": "AWS::Redshift::Cluster", - "propertyPath": "/properties/ClusterType" - }, "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, @@ -124,10 +112,6 @@ "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "ClusterIdentifier": { - "relationshipRef": { - "typeName": "AWS::Redshift::Cluster", - "propertyPath": "/properties/ClusterIdentifier" - }, "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } @@ -143,10 +127,6 @@ "type": "object", "properties": { "ClusterIdentifier": { - "relationshipRef": { - "typeName": "AWS::Redshift::Cluster", - "propertyPath": "/properties/ClusterIdentifier" - }, "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } @@ -162,10 +142,6 @@ "type": "object", "properties": { "ClusterIdentifier": { - "relationshipRef": { - "typeName": "AWS::Redshift::Cluster", - "propertyPath": "/properties/ClusterIdentifier" - }, "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } diff --git a/server/schema/resources/aws-redshiftserverless-snapshot.json b/server/schema/resources/aws-redshiftserverless-snapshot.json new file mode 100644 index 00000000..92e01401 --- /dev/null +++ b/server/schema/resources/aws-redshiftserverless-snapshot.json @@ -0,0 +1,231 @@ +{ + "typeName": "AWS::RedshiftServerless::Snapshot", + "description": "Resource Type definition for AWS::RedshiftServerless::Snapshot Resource Type.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-redshift-serverless", + "definitions": { + "SnapshotStatus": { + "type": "string", + "enum": [ + "AVAILABLE", + "CREATING", + "DELETED", + "CANCELLED", + "FAILED", + "COPYING" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: AVAILABLE | CREATING | DELETED | CANCELLED | FAILED | COPYING \nUpdate requires: No interruption\n" + }, + "Snapshot": { + "type": "object", + "properties": { + "NamespaceArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "NamespaceName": { + "type": "string", + "maxLength": 64, + "minLength": 3, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 3 \nMaximum Length: 64 \nPattern: ^[a-z0-9-]+$ \nUpdate requires: No interruption\n" + }, + "SnapshotName": { + "type": "string", + "maxLength": 64, + "minLength": 3, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 3 \nMaximum Length: 64 \nPattern: ^[a-z0-9-]+$ \nUpdate requires: No interruption\n" + }, + "SnapshotCreateTime": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Status": { + "$ref": "#/definitions/SnapshotStatus" + }, + "AdminUsername": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "KmsKeyId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "OwnerAccount": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RetentionPeriod": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "SnapshotArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "maxLength": 128, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "maxLength": 256, + "minLength": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "SnapshotName": { + "description": "The name of the snapshot.", + "type": "string", + "maxLength": 64, + "minLength": 3, + "markdownDescription": "The name of the snapshot.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 3 \nMaximum Length: 64 \nPattern: ^(?=^[a-z0-9-]+$).{3,64}$ \nUpdate requires: Replacement\n" + }, + "NamespaceName": { + "description": "The namespace the snapshot is associated with.", + "type": "string", + "maxLength": 64, + "minLength": 3, + "markdownDescription": "The namespace the snapshot is associated with.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 3 \nMaximum Length: 64 \nPattern: ^(?=^[a-z0-9-]+$).{3,64}$ \nUpdate requires: Replacement\n" + }, + "OwnerAccount": { + "description": "The owner account of the snapshot.", + "type": "string", + "markdownDescription": "The owner account of the snapshot.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "RetentionPeriod": { + "description": "The retention period of the snapshot.", + "type": "integer", + "markdownDescription": "The retention period of the snapshot.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource.", + "type": "array", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, + "Snapshot": { + "description": "Definition for snapshot resource", + "$ref": "#/definitions/Snapshot", + "markdownDescription": "Definition for snapshot resource\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": false, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "redshift-serverless:ListTagsForResource", + "redshift-serverless:TagResource", + "redshift-serverless:UntagResource" + ] + }, + "required": [ + "SnapshotName" + ], + "createOnlyProperties": [ + "/properties/NamespaceName", + "/properties/SnapshotName", + "/properties/Tags", + "/properties/Tags/*/Key", + "/properties/Tags/*/Value" + ], + "readOnlyProperties": [ + "/properties/Snapshot", + "/properties/OwnerAccount", + "/properties/Snapshot/SnapshotName", + "/properties/Snapshot/NamespaceName", + "/properties/Snapshot/NamespaceArn", + "/properties/Snapshot/SnapshotArn", + "/properties/Snapshot/SnapshotCreateTime", + "/properties/Snapshot/Status", + "/properties/Snapshot/AdminUsername", + "/properties/Snapshot/KmsKeyId", + "/properties/Snapshot/OwnerAccount", + "/properties/Snapshot/RetentionPeriod" + ], + "primaryIdentifier": [ + "/properties/SnapshotName" + ], + "handlers": { + "create": { + "permissions": [ + "redshift-serverless:CreateSnapshot", + "redshift-serverless:GetSnapshot", + "redshift-serverless:ListTagsForResource", + "redshift-serverless:TagResource", + "redshift-serverless:GetNamespace" + ] + }, + "read": { + "permissions": [ + "redshift-serverless:GetSnapshot", + "redshift-serverless:ListTagsForResource", + "redshift-serverless:GetNamespace" + ] + }, + "update": { + "permissions": [ + "redshift-serverless:UpdateSnapshot", + "redshift-serverless:GetSnapshot", + "redshift-serverless:ListTagsForResource", + "redshift-serverless:TagResource", + "redshift-serverless:UntagResource", + "redshift-serverless:GetNamespace" + ] + }, + "delete": { + "permissions": [ + "redshift-serverless:DeleteSnapshot", + "redshift-serverless:GetSnapshot", + "redshift-serverless:ListTagsForResource", + "redshift-serverless:UntagResource", + "redshift-serverless:GetNamespace" + ] + }, + "list": { + "permissions": [ + "redshift-serverless:ListSnapshots", + "redshift-serverless:GetSnapshot", + "redshift-serverless:ListTagsForResource", + "redshift-serverless:GetNamespace" + ] + } + }, + "additionalProperties": false, + "attributes": { + "OwnerAccount": { + "description": "The owner account of the snapshot.", + "type": "string", + "markdownDescription": "The owner account of the snapshot.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Snapshot": { + "description": "Definition for snapshot resource", + "$ref": "#/definitions/Snapshot", + "markdownDescription": "Definition for snapshot resource\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-rolesanywhere-trustanchor.json b/server/schema/resources/aws-rolesanywhere-trustanchor.json index bae9f8e5..a47246a6 100644 --- a/server/schema/resources/aws-rolesanywhere-trustanchor.json +++ b/server/schema/resources/aws-rolesanywhere-trustanchor.json @@ -118,10 +118,9 @@ "type": "string", "enum": [ "AWS_ACM_PCA", - "CERTIFICATE_BUNDLE", - "SELF_SIGNED_REPOSITORY" + "CERTIFICATE_BUNDLE" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: AWS_ACM_PCA | CERTIFICATE_BUNDLE | SELF_SIGNED_REPOSITORY \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: AWS_ACM_PCA | CERTIFICATE_BUNDLE \nUpdate requires: No interruption\n" } }, "properties": { diff --git a/server/schema/resources/aws-route53-hostedzone.json b/server/schema/resources/aws-route53-hostedzone.json index dc9f54dd..892c35bf 100644 --- a/server/schema/resources/aws-route53-hostedzone.json +++ b/server/schema/resources/aws-route53-hostedzone.json @@ -1,38 +1,99 @@ { + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53.git", + "propertyTransform": { + "/properties/Name": "Name $OR $join([Name, \".\"])" + }, + "tagging": { + "permissions": [ + "route53:ChangeTagsForResource", + "route53:ListTagsForResource" + ], + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "tagProperty": "/properties/HostedZoneTags", + "cloudFormationSystemTags": false + }, + "handlers": { + "read": { + "permissions": [ + "route53:GetHostedZone", + "route53:ListTagsForResource", + "route53:ListQueryLoggingConfigs" + ] + }, + "create": { + "permissions": [ + "route53:CreateHostedZone", + "route53:CreateQueryLoggingConfig", + "route53:ChangeTagsForResource", + "route53:GetChange", + "route53:AssociateVPCWithHostedZone", + "ec2:DescribeVpcs" + ] + }, + "update": { + "permissions": [ + "route53:GetChange", + "route53:GetHostedZone", + "route53:ListTagsForResource", + "route53:ListQueryLoggingConfigs", + "route53:UpdateHostedZoneComment", + "route53:ChangeTagsForResource", + "route53:AssociateVPCWithHostedZone", + "route53:DisassociateVPCFromHostedZone", + "route53:CreateQueryLoggingConfig", + "route53:DeleteQueryLoggingConfig", + "ec2:DescribeVpcs" + ] + }, + "list": { + "permissions": [ + "route53:GetHostedZone", + "route53:ListHostedZones", + "route53:ListQueryLoggingConfigs", + "route53:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "route53:DeleteHostedZone", + "route53:DeleteQueryLoggingConfig", + "route53:ListQueryLoggingConfigs", + "route53:GetChange" + ] + } + }, "typeName": "AWS::Route53::HostedZone", + "readOnlyProperties": [ + "/properties/Id", + "/properties/NameServers" + ], "description": "Creates a new public or private hosted zone. You create records in a public hosted zone to define how you want to route traffic on the internet for a domain, such as example.com, and its subdomains (apex.example.com, acme.example.com). You create records in a private hosted zone to define how you want to route traffic for a domain and its subdomains within one or more Amazon Virtual Private Clouds (Amazon VPCs). \n You can't convert a public hosted zone to a private hosted zone or vice versa. Instead, you must create a new hosted zone with the same name and create new resource record sets.\n For more information about charges for hosted zones, see [Amazon Route 53 Pricing](https://docs.aws.amazon.com/route53/pricing/).\n Note the following:\n + You can't create a hosted zone for a top-level domain (TLD) such as .com.\n + If your domain is registered with a registrar other than Route 53, you must update the name servers with your registrar to make Route 53 the DNS service for the domain. For more information, see [Migrating DNS Service for an Existing Domain to Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingDNS.html) in the *Amazon Route 53 Developer Guide*. \n \n When you submit a ``CreateHostedZone`` request, the initial status of the hosted zone is ``PENDING``. For public hosted zones, this means that the NS and SOA records are not yet available on all Route 53 DNS servers. When the NS and SOA records are available, the status of the zone changes to ``INSYNC``.\n The ``CreateHostedZone`` request requires the caller to have an ``ec2:DescribeVpcs`` permission.\n When creating private hosted zones, the Amazon VPC must belong to the same partition where the hosted zone is created. A partition is a group of AWS-Regions. Each AWS-account is scoped to one partition.\n The following are the supported partitions:\n + ``aws`` - AWS-Regions\n + ``aws-cn`` - China Regions\n + ``aws-us-gov`` - govcloud-us-region\n \n For more information, see [Access Management](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) in the *General Reference*.", - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53.git", + "createOnlyProperties": [ + "/properties/Name" + ], + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/Id" + ], "definitions": { - "HostedZoneConfig": { - "description": "A complex type that contains an optional comment about your hosted zone. If you don't want to specify a comment, omit both the ``HostedZoneConfig`` and ``Comment`` elements.", - "type": "object", - "additionalProperties": false, - "properties": { - "Comment": { - "description": "Any comments that you want to include about the hosted zone.", - "type": "string", - "maxLength": 256, - "markdownDescription": "Any comments that you want to include about the hosted zone.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "A complex type that contains an optional comment about your hosted zone. If you don't want to specify a comment, omit both the ``HostedZoneConfig`` and ``Comment`` elements.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, "HostedZoneTag": { "description": "A complex type that contains information about a tag that you want to add or edit for the specified health check or hosted zone.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { - "Key": { - "type": "string", - "description": "The value of ``Key`` depends on the operation that you want to perform:\n + *Add a tag to a health check or hosted zone*: ``Key`` is the name that you want to give the new tag.\n + *Edit a tag*: ``Key`` is the name of the tag that you want to change the ``Value`` for.\n + *Delete a key*: ``Key`` is the name of the tag you want to remove.\n + *Give a name to a health check*: Edit the default ``Name`` tag. In the Amazon Route 53 console, the list of your health checks includes a *Name* column that lets you see the name that you've given to each health check.", - "maxLength": 128, - "markdownDescription": "The value of ``Key`` depends on the operation that you want to perform:\n + *Add a tag to a health check or hosted zone*: ``Key`` is the name that you want to give the new tag.\n + *Edit a tag*: ``Key`` is the name of the tag that you want to change the ``Value`` for.\n + *Delete a key*: ``Key`` is the name of the tag you want to remove.\n + *Give a name to a health check*: Edit the default ``Name`` tag. In the Amazon Route 53 console, the list of your health checks includes a *Name* column that lets you see the name that you've given to each health check.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" - }, "Value": { - "type": "string", "description": "The value of ``Value`` depends on the operation that you want to perform:\n + *Add a tag to a health check or hosted zone*: ``Value`` is the value that you want to give the new tag.\n + *Edit a tag*: ``Value`` is the new value that you want to assign the tag.", + "type": "string", "maxLength": 256, "markdownDescription": "The value of ``Value`` depends on the operation that you want to perform:\n + *Add a tag to a health check or hosted zone*: ``Value`` is the value that you want to give the new tag.\n + *Edit a tag*: ``Value`` is the new value that you want to assign the tag.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "Key": { + "description": "The value of ``Key`` depends on the operation that you want to perform:\n + *Add a tag to a health check or hosted zone*: ``Key`` is the name that you want to give the new tag.\n + *Edit a tag*: ``Key`` is the name of the tag that you want to change the ``Value`` for.\n + *Delete a key*: ``Key`` is the name of the tag you want to remove.\n + *Give a name to a health check*: Edit the default ``Name`` tag. In the Amazon Route 53 console, the list of your health checks includes a *Name* column that lets you see the name that you've given to each health check.", + "type": "string", + "maxLength": 128, + "markdownDescription": "The value of ``Key`` depends on the operation that you want to perform:\n + *Add a tag to a health check or hosted zone*: ``Key`` is the name that you want to give the new tag.\n + *Edit a tag*: ``Key`` is the name of the tag that you want to change the ``Value`` for.\n + *Delete a key*: ``Key`` is the name of the tag you want to remove.\n + *Give a name to a health check*: Edit the default ``Name`` tag. In the Amazon Route 53 console, the list of your health checks includes a *Name* column that lets you see the name that you've given to each health check.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" } }, "required": [ @@ -41,195 +102,126 @@ ], "markdownDescription": "A complex type that contains information about a tag that you want to add or edit for the specified health check or hosted zone.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "QueryLoggingConfig": { - "description": "A complex type that contains information about a configuration for DNS query logging.", - "type": "object", + "VPC": { + "description": "*Private hosted zones only:* A complex type that contains information about an Amazon VPC. Route 53 Resolver uses the records in the private hosted zone to route traffic in that VPC. \n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", "additionalProperties": false, + "type": "object", "properties": { - "CloudWatchLogsLogGroupArn": { - "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon Route 53 is publishing logs to.", + "VPCRegion": { + "description": "*Private hosted zones only:* The region that an Amazon VPC was created in.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", "type": "string", - "relationshipRef": { - "typeName": "AWS::Logs::LogGroup", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon Route 53 is publishing logs to.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "*Private hosted zones only:* The region that an Amazon VPC was created in.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "VPCId": { + "description": "*Private hosted zones only:* The ID of an Amazon VPC.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", + "type": "string", + "markdownDescription": "*Private hosted zones only:* The ID of an Amazon VPC.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, "required": [ - "CloudWatchLogsLogGroupArn" + "VPCId", + "VPCRegion" ], - "markdownDescription": "A complex type that contains information about a configuration for DNS query logging.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "*Private hosted zones only:* A complex type that contains information about an Amazon VPC. Route 53 Resolver uses the records in the private hosted zone to route traffic in that VPC. \n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "VPC": { - "description": "*Private hosted zones only:* A complex type that contains information about an Amazon VPC. Route 53 Resolver uses the records in the private hosted zone to route traffic in that VPC. \n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", - "type": "object", + "HostedZoneConfig": { + "description": "A complex type that contains an optional comment about your hosted zone. If you don't want to specify a comment, omit both the ``HostedZoneConfig`` and ``Comment`` elements.", "additionalProperties": false, + "type": "object", "properties": { - "VPCId": { - "description": "*Private hosted zones only:* The ID of an Amazon VPC.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", + "Comment": { + "description": "Any comments that you want to include about the hosted zone.", "type": "string", - "relationshipRef": { - "typeName": "AWS::EC2::VPC", - "propertyPath": "/properties/VpcId" - }, - "markdownDescription": "*Private hosted zones only:* The ID of an Amazon VPC.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, - "VPCRegion": { - "description": "*Private hosted zones only:* The region that an Amazon VPC was created in.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", + "maxLength": 256, + "markdownDescription": "Any comments that you want to include about the hosted zone.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "A complex type that contains an optional comment about your hosted zone. If you don't want to specify a comment, omit both the ``HostedZoneConfig`` and ``Comment`` elements.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "QueryLoggingConfig": { + "description": "A complex type that contains information about a configuration for DNS query logging.", + "additionalProperties": false, + "type": "object", + "properties": { + "CloudWatchLogsLogGroupArn": { + "description": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon Route 53 is publishing logs to.", "type": "string", - "markdownDescription": "*Private hosted zones only:* The region that an Amazon VPC was created in.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The Amazon Resource Name (ARN) of the CloudWatch Logs log group that Amazon Route 53 is publishing logs to.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, "required": [ - "VPCId", - "VPCRegion" + "CloudWatchLogsLogGroupArn" ], - "markdownDescription": "*Private hosted zones only:* A complex type that contains information about an Amazon VPC. Route 53 Resolver uses the records in the private hosted zone to route traffic in that VPC. \n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "A complex type that contains information about a configuration for DNS query logging.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { - "Id": { - "type": "string", - "description": "", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "HostedZoneConfig": { - "$ref": "#/definitions/HostedZoneConfig", - "description": "A complex type that contains an optional comment.\n If you don't want to specify a comment, omit the ``HostedZoneConfig`` and ``Comment`` elements.", - "markdownDescription": "A complex type that contains an optional comment.\n If you don't want to specify a comment, omit the ``HostedZoneConfig`` and ``Comment`` elements.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, "HostedZoneTags": { - "description": "Adds, edits, or deletes tags for a health check or a hosted zone.\n For information about using tags for cost allocation, see [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the *User Guide*.", - "type": "array", "uniqueItems": true, + "description": "Adds, edits, or deletes tags for a health check or a hosted zone.\n For information about using tags for cost allocation, see [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the *User Guide*.", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/HostedZoneTag" }, "markdownDescription": "Adds, edits, or deletes tags for a health check or a hosted zone.\n For information about using tags for cost allocation, see [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) in the *User Guide*.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "Name": { - "description": "The name of the domain. Specify a fully qualified domain name, for example, *www.example.com*. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats *www.example.com* (without a trailing dot) and *www.example.com.* (with a trailing dot) as identical.\n If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of ``NameServers`` that are returned by the ``Fn::GetAtt`` intrinsic function.", - "type": "string", - "maxLength": 1024, - "markdownDescription": "The name of the domain. Specify a fully qualified domain name, for example, *www.example.com*. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats *www.example.com* (without a trailing dot) and *www.example.com.* (with a trailing dot) as identical.\n If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of ``NameServers`` that are returned by the ``Fn::GetAtt`` intrinsic function.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: Replacement\n" - }, - "QueryLoggingConfig": { - "$ref": "#/definitions/QueryLoggingConfig", - "description": "Creates a configuration for DNS query logging. After you create a query logging configuration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch Logs log group.\n DNS query logs contain information about the queries that Route 53 receives for a specified public hosted zone, such as the following:\n + Route 53 edge location that responded to the DNS query\n + Domain or subdomain that was requested\n + DNS record type, such as A or AAAA\n + DNS response code, such as ``NoError`` or ``ServFail``\n \n + Log Group and Resource Policy Before you create a query logging configuration, perform the following operations. If you create a query logging configuration using the Route 53 console, Route 53 performs these operations automatically. Create a CloudWatch Logs log group, and make note of the ARN, which you specify when you create a query logging configuration. Note the following: You must create the log group in the us-east-1 region. You must use the same to create the log group and the hosted zone that you want to configure query logging for. When you create log groups for query logging, we recommend that you use a consistent prefix, for example: /aws/route53/hosted zone name In the next step, you'll create a resource policy, which controls access to one or more log groups and the associated resources, such as Route 53 hosted zones. There's a limit on the number of resource policies that you can create, so we recommend that you use a consistent prefix so you can use the same resource policy for all the log groups that you create for query logging. Create a CloudWatch Logs resource policy, and give it the permissions that Route 53 needs to create log streams and to send query logs to log streams. You must create the CloudWatch Logs resource policy in the us-east-1 region. For the value of Resource, specify the ARN for the log group that you created in the previous step. To use the same resource policy for all the CloudWatch Logs log groups that you created for query logging configurations, replace the hosted zone name with *, for example: arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/* To avoid the confused deputy problem, a security issue where an entity without a permission for an action can coerce a more-privileged entity to perform it, you can optionally limit the permissions that a service has to a resource in a resource-based policy by supplying the following values: For aws:SourceArn, supply the hosted zone ARN used in creating the query logging configuration. For example, aws:SourceArn: arn:aws:route53:::hostedzone/hosted zone ID. For aws:SourceAccount, supply the account ID for the account that creates the query logging configuration. For example, aws:SourceAccount:111111111111. For more information, see The confused deputy problem in the IAM User Guide. You can't use the CloudWatch console to create or edit a resource policy. You must use the CloudWatch API, one of the SDKs, or the . + Log Streams and Edge Locations When Route 53 finishes creating the configuration for DNS query logging, it does the following: Creates a log stream for an edge location the first time that the edge location responds to DNS queries for the specified hosted zone. That log stream is used to log all queries that Route 53 responds to for that edge location. Begins to send query logs to the applicable log stream. The name of each log stream is in the following format: hosted zone ID/edge location code The edge location code is a three-letter code and an arbitrarily assigned number, for example, DFW3. The three-letter code typically corresponds with the International Air Transport Association airport code for an airport near the edge location. (These abbreviations might change in the future.) For a list of edge locations, see \"The Route 53 Global Network\" on the Route 53 Product Details page. + Queries That Are Logged Query logs contain only the queries that DNS resolvers forward to Route 53. If a DNS resolver has already cached the response to a query (such as the IP address for a load balancer for example.com), the resolver will continue to return the cached response. It doesn't forward another query to Route 53 until the TTL for the corresponding resource record set expires. Depending on how many DNS queries are submitted for a resource record set, and depending on the TTL for that resource record set, query logs might contain information about only one query out of every several thousand queries that are submitted to DNS. For more information about how DNS works, see Routing Internet Traffic to Your Website or Web Application in the Amazon Route 53 Developer Guide. + Log File Format For a list of the values in each query log and the format of each value, see Logging DNS Queries in the Amazon Route 53 Developer Guide. + Pricing For information about charges for query logs, see Amazon CloudWatch Pricing. + How to Stop Logging If you want Route 53 to stop sending query logs to CloudWatch Logs, delete the query logging configuration. For more information, see DeleteQueryLoggingConfig.", - "markdownDescription": "Creates a configuration for DNS query logging. After you create a query logging configuration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch Logs log group.\n DNS query logs contain information about the queries that Route 53 receives for a specified public hosted zone, such as the following:\n + Route 53 edge location that responded to the DNS query\n + Domain or subdomain that was requested\n + DNS record type, such as A or AAAA\n + DNS response code, such as ``NoError`` or ``ServFail``\n \n + Log Group and Resource Policy Before you create a query logging configuration, perform the following operations. If you create a query logging configuration using the Route 53 console, Route 53 performs these operations automatically. Create a CloudWatch Logs log group, and make note of the ARN, which you specify when you create a query logging configuration. Note the following: You must create the log group in the us-east-1 region. You must use the same to create the log group and the hosted zone that you want to configure query logging for. When you create log groups for query logging, we recommend that you use a consistent prefix, for example: /aws/route53/hosted zone name In the next step, you'll create a resource policy, which controls access to one or more log groups and the associated resources, such as Route 53 hosted zones. There's a limit on the number of resource policies that you can create, so we recommend that you use a consistent prefix so you can use the same resource policy for all the log groups that you create for query logging. Create a CloudWatch Logs resource policy, and give it the permissions that Route 53 needs to create log streams and to send query logs to log streams. You must create the CloudWatch Logs resource policy in the us-east-1 region. For the value of Resource, specify the ARN for the log group that you created in the previous step. To use the same resource policy for all the CloudWatch Logs log groups that you created for query logging configurations, replace the hosted zone name with *, for example: arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/* To avoid the confused deputy problem, a security issue where an entity without a permission for an action can coerce a more-privileged entity to perform it, you can optionally limit the permissions that a service has to a resource in a resource-based policy by supplying the following values: For aws:SourceArn, supply the hosted zone ARN used in creating the query logging configuration. For example, aws:SourceArn: arn:aws:route53:::hostedzone/hosted zone ID. For aws:SourceAccount, supply the account ID for the account that creates the query logging configuration. For example, aws:SourceAccount:111111111111. For more information, see The confused deputy problem in the IAM User Guide. You can't use the CloudWatch console to create or edit a resource policy. You must use the CloudWatch API, one of the SDKs, or the . + Log Streams and Edge Locations When Route 53 finishes creating the configuration for DNS query logging, it does the following: Creates a log stream for an edge location the first time that the edge location responds to DNS queries for the specified hosted zone. That log stream is used to log all queries that Route 53 responds to for that edge location. Begins to send query logs to the applicable log stream. The name of each log stream is in the following format: hosted zone ID/edge location code The edge location code is a three-letter code and an arbitrarily assigned number, for example, DFW3. The three-letter code typically corresponds with the International Air Transport Association airport code for an airport near the edge location. (These abbreviations might change in the future.) For a list of edge locations, see \"The Route 53 Global Network\" on the Route 53 Product Details page. + Queries That Are Logged Query logs contain only the queries that DNS resolvers forward to Route 53. If a DNS resolver has already cached the response to a query (such as the IP address for a load balancer for example.com), the resolver will continue to return the cached response. It doesn't forward another query to Route 53 until the TTL for the corresponding resource record set expires. Depending on how many DNS queries are submitted for a resource record set, and depending on the TTL for that resource record set, query logs might contain information about only one query out of every several thousand queries that are submitted to DNS. For more information about how DNS works, see Routing Internet Traffic to Your Website or Web Application in the Amazon Route 53 Developer Guide. + Log File Format For a list of the values in each query log and the format of each value, see Logging DNS Queries in the Amazon Route 53 Developer Guide. + Pricing For information about charges for query logs, see Amazon CloudWatch Pricing. + How to Stop Logging If you want Route 53 to stop sending query logs to CloudWatch Logs, delete the query logging configuration. For more information, see DeleteQueryLoggingConfig.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" - }, "VPCs": { - "description": "*Private hosted zones:* A complex type that contains information about the VPCs that are associated with the specified hosted zone.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", - "type": "array", "uniqueItems": true, + "description": "*Private hosted zones:* A complex type that contains information about the VPCs that are associated with the specified hosted zone.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.", "insertionOrder": false, + "type": "array", "items": { "$ref": "#/definitions/VPC" }, "markdownDescription": "*Private hosted zones:* A complex type that contains information about the VPCs that are associated with the specified hosted zone.\n For public hosted zones, omit ``VPCs``, ``VPCId``, and ``VPCRegion``.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, + "HostedZoneConfig": { + "description": "A complex type that contains an optional comment.\n If you don't want to specify a comment, omit the ``HostedZoneConfig`` and ``Comment`` elements.", + "$ref": "#/definitions/HostedZoneConfig", + "markdownDescription": "A complex type that contains an optional comment.\n If you don't want to specify a comment, omit the ``HostedZoneConfig`` and ``Comment`` elements.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Id": { + "description": "", + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, "NameServers": { - "type": "array", "uniqueItems": false, + "description": "", + "type": "array", "items": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "description": "", "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" - } - }, - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "readOnlyProperties": [ - "/properties/Id", - "/properties/NameServers" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "propertyTransform": { - "/properties/Name": "Name $OR $join([Name, \".\"])" - }, - "tagging": { - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "cloudFormationSystemTags": false, - "tagProperty": "/properties/HostedZoneTags", - "permissions": [ - "route53:ChangeTagsForResource", - "route53:ListTagsForResource" - ] - }, - "handlers": { - "create": { - "permissions": [ - "route53:CreateHostedZone", - "route53:CreateQueryLoggingConfig", - "route53:ChangeTagsForResource", - "route53:GetChange", - "route53:AssociateVPCWithHostedZone", - "ec2:DescribeVpcs" - ] - }, - "read": { - "permissions": [ - "route53:GetHostedZone", - "route53:ListTagsForResource", - "route53:ListQueryLoggingConfigs" - ] - }, - "update": { - "permissions": [ - "route53:GetChange", - "route53:GetHostedZone", - "route53:ListTagsForResource", - "route53:ListQueryLoggingConfigs", - "route53:UpdateHostedZoneComment", - "route53:ChangeTagsForResource", - "route53:AssociateVPCWithHostedZone", - "route53:DisassociateVPCFromHostedZone", - "route53:CreateQueryLoggingConfig", - "route53:DeleteQueryLoggingConfig", - "ec2:DescribeVpcs" - ] }, - "delete": { - "permissions": [ - "route53:DeleteHostedZone", - "route53:DeleteQueryLoggingConfig", - "route53:ListQueryLoggingConfigs", - "route53:GetChange" - ] + "QueryLoggingConfig": { + "description": "Creates a configuration for DNS query logging. After you create a query logging configuration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch Logs log group.\n DNS query logs contain information about the queries that Route 53 receives for a specified public hosted zone, such as the following:\n + Route 53 edge location that responded to the DNS query\n + Domain or subdomain that was requested\n + DNS record type, such as A or AAAA\n + DNS response code, such as ``NoError`` or ``ServFail``\n \n + Log Group and Resource Policy Before you create a query logging configuration, perform the following operations. If you create a query logging configuration using the Route 53 console, Route 53 performs these operations automatically. Create a CloudWatch Logs log group, and make note of the ARN, which you specify when you create a query logging configuration. Note the following: You must create the log group in the us-east-1 region. You must use the same to create the log group and the hosted zone that you want to configure query logging for. When you create log groups for query logging, we recommend that you use a consistent prefix, for example: /aws/route53/hosted zone name In the next step, you'll create a resource policy, which controls access to one or more log groups and the associated resources, such as Route 53 hosted zones. There's a limit on the number of resource policies that you can create, so we recommend that you use a consistent prefix so you can use the same resource policy for all the log groups that you create for query logging. Create a CloudWatch Logs resource policy, and give it the permissions that Route 53 needs to create log streams and to send query logs to log streams. You must create the CloudWatch Logs resource policy in the us-east-1 region. For the value of Resource, specify the ARN for the log group that you created in the previous step. To use the same resource policy for all the CloudWatch Logs log groups that you created for query logging configurations, replace the hosted zone name with *, for example: arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/* To avoid the confused deputy problem, a security issue where an entity without a permission for an action can coerce a more-privileged entity to perform it, you can optionally limit the permissions that a service has to a resource in a resource-based policy by supplying the following values: For aws:SourceArn, supply the hosted zone ARN used in creating the query logging configuration. For example, aws:SourceArn: arn:aws:route53:::hostedzone/hosted zone ID. For aws:SourceAccount, supply the account ID for the account that creates the query logging configuration. For example, aws:SourceAccount:111111111111. For more information, see The confused deputy problem in the IAM User Guide. You can't use the CloudWatch console to create or edit a resource policy. You must use the CloudWatch API, one of the SDKs, or the . + Log Streams and Edge Locations When Route 53 finishes creating the configuration for DNS query logging, it does the following: Creates a log stream for an edge location the first time that the edge location responds to DNS queries for the specified hosted zone. That log stream is used to log all queries that Route 53 responds to for that edge location. Begins to send query logs to the applicable log stream. The name of each log stream is in the following format: hosted zone ID/edge location code The edge location code is a three-letter code and an arbitrarily assigned number, for example, DFW3. The three-letter code typically corresponds with the International Air Transport Association airport code for an airport near the edge location. (These abbreviations might change in the future.) For a list of edge locations, see \"The Route 53 Global Network\" on the Route 53 Product Details page. + Queries That Are Logged Query logs contain only the queries that DNS resolvers forward to Route 53. If a DNS resolver has already cached the response to a query (such as the IP address for a load balancer for example.com), the resolver will continue to return the cached response. It doesn't forward another query to Route 53 until the TTL for the corresponding resource record set expires. Depending on how many DNS queries are submitted for a resource record set, and depending on the TTL for that resource record set, query logs might contain information about only one query out of every several thousand queries that are submitted to DNS. For more information about how DNS works, see Routing Internet Traffic to Your Website or Web Application in the Amazon Route 53 Developer Guide. + Log File Format For a list of the values in each query log and the format of each value, see Logging DNS Queries in the Amazon Route 53 Developer Guide. + Pricing For information about charges for query logs, see Amazon CloudWatch Pricing. + How to Stop Logging If you want Route 53 to stop sending query logs to CloudWatch Logs, delete the query logging configuration. For more information, see DeleteQueryLoggingConfig.", + "$ref": "#/definitions/QueryLoggingConfig", + "markdownDescription": "Creates a configuration for DNS query logging. After you create a query logging configuration, Amazon Route 53 begins to publish log data to an Amazon CloudWatch Logs log group.\n DNS query logs contain information about the queries that Route 53 receives for a specified public hosted zone, such as the following:\n + Route 53 edge location that responded to the DNS query\n + Domain or subdomain that was requested\n + DNS record type, such as A or AAAA\n + DNS response code, such as ``NoError`` or ``ServFail``\n \n + Log Group and Resource Policy Before you create a query logging configuration, perform the following operations. If you create a query logging configuration using the Route 53 console, Route 53 performs these operations automatically. Create a CloudWatch Logs log group, and make note of the ARN, which you specify when you create a query logging configuration. Note the following: You must create the log group in the us-east-1 region. You must use the same to create the log group and the hosted zone that you want to configure query logging for. When you create log groups for query logging, we recommend that you use a consistent prefix, for example: /aws/route53/hosted zone name In the next step, you'll create a resource policy, which controls access to one or more log groups and the associated resources, such as Route 53 hosted zones. There's a limit on the number of resource policies that you can create, so we recommend that you use a consistent prefix so you can use the same resource policy for all the log groups that you create for query logging. Create a CloudWatch Logs resource policy, and give it the permissions that Route 53 needs to create log streams and to send query logs to log streams. You must create the CloudWatch Logs resource policy in the us-east-1 region. For the value of Resource, specify the ARN for the log group that you created in the previous step. To use the same resource policy for all the CloudWatch Logs log groups that you created for query logging configurations, replace the hosted zone name with *, for example: arn:aws:logs:us-east-1:123412341234:log-group:/aws/route53/* To avoid the confused deputy problem, a security issue where an entity without a permission for an action can coerce a more-privileged entity to perform it, you can optionally limit the permissions that a service has to a resource in a resource-based policy by supplying the following values: For aws:SourceArn, supply the hosted zone ARN used in creating the query logging configuration. For example, aws:SourceArn: arn:aws:route53:::hostedzone/hosted zone ID. For aws:SourceAccount, supply the account ID for the account that creates the query logging configuration. For example, aws:SourceAccount:111111111111. For more information, see The confused deputy problem in the IAM User Guide. You can't use the CloudWatch console to create or edit a resource policy. You must use the CloudWatch API, one of the SDKs, or the . + Log Streams and Edge Locations When Route 53 finishes creating the configuration for DNS query logging, it does the following: Creates a log stream for an edge location the first time that the edge location responds to DNS queries for the specified hosted zone. That log stream is used to log all queries that Route 53 responds to for that edge location. Begins to send query logs to the applicable log stream. The name of each log stream is in the following format: hosted zone ID/edge location code The edge location code is a three-letter code and an arbitrarily assigned number, for example, DFW3. The three-letter code typically corresponds with the International Air Transport Association airport code for an airport near the edge location. (These abbreviations might change in the future.) For a list of edge locations, see \"The Route 53 Global Network\" on the Route 53 Product Details page. + Queries That Are Logged Query logs contain only the queries that DNS resolvers forward to Route 53. If a DNS resolver has already cached the response to a query (such as the IP address for a load balancer for example.com), the resolver will continue to return the cached response. It doesn't forward another query to Route 53 until the TTL for the corresponding resource record set expires. Depending on how many DNS queries are submitted for a resource record set, and depending on the TTL for that resource record set, query logs might contain information about only one query out of every several thousand queries that are submitted to DNS. For more information about how DNS works, see Routing Internet Traffic to Your Website or Web Application in the Amazon Route 53 Developer Guide. + Log File Format For a list of the values in each query log and the format of each value, see Logging DNS Queries in the Amazon Route 53 Developer Guide. + Pricing For information about charges for query logs, see Amazon CloudWatch Pricing. + How to Stop Logging If you want Route 53 to stop sending query logs to CloudWatch Logs, delete the query logging configuration. For more information, see DeleteQueryLoggingConfig.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, - "list": { - "permissions": [ - "route53:GetHostedZone", - "route53:ListHostedZones", - "route53:ListQueryLoggingConfigs", - "route53:ListTagsForResource" - ] + "Name": { + "description": "The name of the domain. Specify a fully qualified domain name, for example, *www.example.com*. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats *www.example.com* (without a trailing dot) and *www.example.com.* (with a trailing dot) as identical.\n If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of ``NameServers`` that are returned by the ``Fn::GetAtt`` intrinsic function.", + "type": "string", + "maxLength": 1024, + "markdownDescription": "The name of the domain. Specify a fully qualified domain name, for example, *www.example.com*. The trailing dot is optional; Amazon Route 53 assumes that the domain name is fully qualified. This means that Route 53 treats *www.example.com* (without a trailing dot) and *www.example.com.* (with a trailing dot) as identical.\n If you're creating a public hosted zone, this is the name you have registered with your DNS registrar. If your domain name is registered with a registrar other than Route 53, change the name servers for your domain to the set of ``NameServers`` that are returned by the ``Fn::GetAtt`` intrinsic function.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: Replacement\n" } }, "attributes": { "Id": { - "type": "string", "description": "", + "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, "NameServers": { - "type": "array", "uniqueItems": false, + "description": "", + "type": "array", "items": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "description": "", "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" } } diff --git a/server/schema/resources/aws-route53resolver-resolverconfig.json b/server/schema/resources/aws-route53resolver-resolverconfig.json index 32fa4ad9..4abbcfa7 100644 --- a/server/schema/resources/aws-route53resolver-resolverconfig.json +++ b/server/schema/resources/aws-route53resolver-resolverconfig.json @@ -59,7 +59,9 @@ "primaryIdentifier": [ "/properties/ResourceId" ], - "taggable": false, + "tagging": { + "taggable": false + }, "additionalProperties": false, "propertyTransform": { "/properties/AutodefinedReverseFlag": "$join([AutodefinedReverseFlag, \"D\"])" diff --git a/server/schema/resources/aws-route53resolver-resolverendpoint.json b/server/schema/resources/aws-route53resolver-resolverendpoint.json index f7271eef..8a290372 100644 --- a/server/schema/resources/aws-route53resolver-resolverendpoint.json +++ b/server/schema/resources/aws-route53resolver-resolverendpoint.json @@ -58,8 +58,8 @@ }, "Direction": { "type": "string", - "description": "Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:\n- INBOUND: allows DNS queries to your VPC from your network \n- OUTBOUND: allows DNS queries from your VPC to your network", - "markdownDescription": "Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:\n- INBOUND: allows DNS queries to your VPC from your network \n- OUTBOUND: allows DNS queries from your VPC to your network\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" + "description": "Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:\n- INBOUND: allows DNS queries to your VPC from your network \n- OUTBOUND: allows DNS queries from your VPC to your network \n- INBOUND_DELEGATION: allows DNS queries to your VPC from your network with authoritative answers from private hosted zones", + "markdownDescription": "Indicates whether the Resolver endpoint allows inbound or outbound DNS queries:\n- INBOUND: allows DNS queries to your VPC from your network \n- OUTBOUND: allows DNS queries from your VPC to your network \n- INBOUND_DELEGATION: allows DNS queries to your VPC from your network with authoritative answers from private hosted zones\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: Replacement\n" }, "HostVPCId": { "type": "string", diff --git a/server/schema/resources/aws-route53resolver-resolverrule.json b/server/schema/resources/aws-route53resolver-resolverrule.json index 69e648c6..7d568f0b 100644 --- a/server/schema/resources/aws-route53resolver-resolverrule.json +++ b/server/schema/resources/aws-route53resolver-resolverrule.json @@ -1,99 +1,104 @@ { - "tagging": { - "permissions": [ - "route53resolver:TagResource", - "route53resolver:UntagResource" - ], - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "tagProperty": "/properties/Tags", - "cloudFormationSystemTags": false - }, "typeName": "AWS::Route53Resolver::ResolverRule", - "readOnlyProperties": [ - "/properties/Arn", - "/properties/ResolverRuleId" - ], "description": "Resource Type definition for AWS::Route53Resolver::ResolverRule", - "createOnlyProperties": [ - "/properties/RuleType" - ], - "primaryIdentifier": [ - "/properties/ResolverRuleId" - ], - "required": [ - "RuleType" - ], - "conditionalCreateOnlyProperties": [ - "/properties/DomainName" - ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", - "propertyTransform": { - "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" - }, - "handlers": { - "read": { - "permissions": [ - "route53resolver:GetResolverRule", - "route53resolver:ListTagsForResource" - ] + "additionalProperties": false, + "properties": { + "ResolverEndpointId": { + "type": "string", + "description": "The ID of the endpoint that the rule is associated with.", + "minLength": 1, + "maxLength": 64, + "markdownDescription": "The ID of the endpoint that the rule is associated with.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" }, - "create": { - "permissions": [ - "route53resolver:CreateResolverRule", - "route53resolver:GetResolverRule", - "route53resolver:ListTagsForResource", - "route53resolver:TagResource" - ] + "DomainName": { + "type": "string", + "description": "DNS queries for this domain name are forwarded to the IP addresses that are specified in TargetIps", + "minLength": 1, + "maxLength": 256, + "markdownDescription": "DNS queries for this domain name are forwarded to the IP addresses that are specified in TargetIps\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: Some interruptions\n" }, - "update": { - "permissions": [ - "route53resolver:UpdateResolverRule", - "route53resolver:GetResolverRule", - "route53resolver:ListTagsForResource", - "route53resolver:TagResource", - "route53resolver:UntagResource" - ] + "Name": { + "type": "string", + "description": "The name for the Resolver rule", + "minLength": 0, + "maxLength": 64, + "markdownDescription": "The name for the Resolver rule\n\n---\n\nRequired: No \nType: String \nMaximum Length: 64 \nUpdate requires: No interruption\n" }, - "list": { - "permissions": [ - "route53resolver:ListResolverRules" - ] + "RuleType": { + "type": "string", + "description": "When you want to forward DNS queries for specified domain name to resolvers on your network, specify FORWARD. When you have a forwarding rule to forward DNS queries for a domain to your network and you want Resolver to process queries for a subdomain of that domain, specify SYSTEM.", + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "markdownDescription": "When you want to forward DNS queries for specified domain name to resolvers on your network, specify FORWARD. When you have a forwarding rule to forward DNS queries for a domain to your network and you want Resolver to process queries for a subdomain of that domain, specify SYSTEM.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: FORWARD | SYSTEM | RECURSIVE | DELEGATE \nUpdate requires: Replacement\n" }, - "delete": { - "permissions": [ - "route53resolver:DeleteResolverRule", - "route53resolver:GetResolverRule" - ] + "DelegationRecord": { + "type": "string", + "description": "The name server domain for queries to be delegated to if a query matches the delegation record.", + "minLength": 1, + "maxLength": 256, + "markdownDescription": "The name server domain for queries to be delegated to if a query matches the delegation record.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "array", + "description": "An array of key-value pairs to apply to this resource.", + "uniqueItems": false, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "TargetIps": { + "type": "array", + "description": "An array that contains the IP addresses and ports that an outbound endpoint forwards DNS queries to. Typically, these are the IP addresses of DNS resolvers on your network. Specify IPv4 addresses. IPv6 is not supported.", + "uniqueItems": false, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "markdownDescription": "An array that contains the IP addresses and ports that an outbound endpoint forwards DNS queries to. Typically, these are the IP addresses of DNS resolvers on your network. Specify IPv4 addresses. IPv6 is not supported.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the resolver rule.", + "markdownDescription": "The Amazon Resource Name (ARN) of the resolver rule.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ResolverRuleId": { + "type": "string", + "description": "The ID of the endpoint that the rule is associated with.", + "markdownDescription": "The ID of the endpoint that the rule is associated with.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } }, - "additionalProperties": false, "definitions": { "TargetAddress": { - "additionalProperties": false, "type": "object", + "additionalProperties": false, "properties": { - "Ipv6": { - "description": "One IPv6 address that you want to forward DNS queries to. You can specify only IPv6 addresses. ", - "type": "string", - "markdownDescription": "One IPv6 address that you want to forward DNS queries to. You can specify only IPv6 addresses. \n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, "Ip": { - "description": "One IP address that you want to forward DNS queries to. You can specify only IPv4 addresses. ", "type": "string", + "description": "One IP address that you want to forward DNS queries to. You can specify only IPv4 addresses. ", "markdownDescription": "One IP address that you want to forward DNS queries to. You can specify only IPv4 addresses. \n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "Ipv6": { + "type": "string", + "description": "One IPv6 address that you want to forward DNS queries to. You can specify only IPv6 addresses. ", + "markdownDescription": "One IPv6 address that you want to forward DNS queries to. You can specify only IPv6 addresses. \n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "Port": { - "minLength": 0, - "description": "The port at Ip that you want to forward DNS queries to. ", "type": "string", + "description": "The port at Ip that you want to forward DNS queries to. ", + "minLength": 0, "maxLength": 65535, "markdownDescription": "The port at Ip that you want to forward DNS queries to. \n\n---\n\nRequired: No \nType: String \nMaximum Length: 65535 \nUpdate requires: No interruption\n" }, "Protocol": { - "description": "The protocol that you want to use to forward DNS queries. ", "type": "string", + "description": "The protocol that you want to use to forward DNS queries. ", "enum": [ "Do53", "DoH" @@ -101,9 +106,9 @@ "markdownDescription": "The protocol that you want to use to forward DNS queries. \n\n---\n\nRequired: No \nType: String \nAllowed Values: Do53 | DoH \nUpdate requires: No interruption\n" }, "ServerNameIndication": { - "minLength": 0, - "description": "The SNI of the target name servers for DoH/DoH-FIPS outbound endpoints", "type": "string", + "description": "The SNI of the target name servers for DoH/DoH-FIPS outbound endpoints", + "minLength": 0, "maxLength": 255, "markdownDescription": "The SNI of the target name servers for DoH/DoH-FIPS outbound endpoints\n\n---\n\nRequired: No \nType: String \nMaximum Length: 255 \nUpdate requires: No interruption\n" } @@ -111,22 +116,22 @@ "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Tag": { - "additionalProperties": false, "type": "object", + "additionalProperties": false, "properties": { - "Value": { - "minLength": 0, - "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", - "type": "string", - "maxLength": 256, - "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" - }, "Key": { - "minLength": 1, - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 1, "maxLength": 128, "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, "required": [ @@ -136,80 +141,82 @@ "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, - "properties": { - "ResolverEndpointId": { - "minLength": 1, - "description": "The ID of the endpoint that the rule is associated with.", - "type": "string", - "maxLength": 64, - "markdownDescription": "The ID of the endpoint that the rule is associated with.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "route53resolver:TagResource", + "route53resolver:UntagResource" + ] + }, + "required": [ + "RuleType" + ], + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "handlers": { + "create": { + "permissions": [ + "route53resolver:CreateResolverRule", + "route53resolver:GetResolverRule", + "route53resolver:ListTagsForResource", + "route53resolver:TagResource" + ] }, - "DomainName": { - "minLength": 1, - "description": "DNS queries for this domain name are forwarded to the IP addresses that are specified in TargetIps", - "type": "string", - "maxLength": 256, - "markdownDescription": "DNS queries for this domain name are forwarded to the IP addresses that are specified in TargetIps\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: Some interruptions\n" + "read": { + "permissions": [ + "route53resolver:GetResolverRule", + "route53resolver:ListTagsForResource" + ] }, - "RuleType": { - "description": "When you want to forward DNS queries for specified domain name to resolvers on your network, specify FORWARD. When you have a forwarding rule to forward DNS queries for a domain to your network and you want Resolver to process queries for a subdomain of that domain, specify SYSTEM.", - "type": "string", - "enum": [ - "FORWARD", - "SYSTEM", - "RECURSIVE", - "DELEGATE" - ], - "markdownDescription": "When you want to forward DNS queries for specified domain name to resolvers on your network, specify FORWARD. When you have a forwarding rule to forward DNS queries for a domain to your network and you want Resolver to process queries for a subdomain of that domain, specify SYSTEM.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: FORWARD | SYSTEM | RECURSIVE | DELEGATE \nUpdate requires: Replacement\n" + "update": { + "permissions": [ + "route53resolver:UpdateResolverRule", + "route53resolver:GetResolverRule", + "route53resolver:ListTagsForResource", + "route53resolver:TagResource", + "route53resolver:UntagResource" + ] }, - "ResolverRuleId": { - "description": "The ID of the endpoint that the rule is associated with.", - "type": "string", - "markdownDescription": "The ID of the endpoint that the rule is associated with.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + "delete": { + "permissions": [ + "route53resolver:DeleteResolverRule", + "route53resolver:GetResolverRule" + ] }, + "list": { + "permissions": [ + "route53resolver:ListResolverRules" + ] + } + }, + "attributes": { "Arn": { - "description": "The Amazon Resource Name (ARN) of the resolver rule.", "type": "string", + "description": "The Amazon Resource Name (ARN) of the resolver rule.", "markdownDescription": "The Amazon Resource Name (ARN) of the resolver rule.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, - "Tags": { - "uniqueItems": false, - "description": "An array of key-value pairs to apply to this resource.", - "insertionOrder": false, - "type": "array", - "items": { - "$ref": "#/definitions/Tag" - }, - "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "TargetIps": { - "uniqueItems": false, - "description": "An array that contains the IP addresses and ports that an outbound endpoint forwards DNS queries to. Typically, these are the IP addresses of DNS resolvers on your network. Specify IPv4 addresses. IPv6 is not supported.", - "insertionOrder": false, - "type": "array", - "items": { - "$ref": "#/definitions/TargetAddress" - }, - "markdownDescription": "An array that contains the IP addresses and ports that an outbound endpoint forwards DNS queries to. Typically, these are the IP addresses of DNS resolvers on your network. Specify IPv4 addresses. IPv6 is not supported.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Name": { - "minLength": 0, - "description": "The name for the Resolver rule", - "type": "string", - "maxLength": 64, - "markdownDescription": "The name for the Resolver rule\n\n---\n\nRequired: No \nType: String \nMaximum Length: 64 \nUpdate requires: No interruption\n" - } - }, - "attributes": { "ResolverRuleId": { - "description": "The ID of the endpoint that the rule is associated with.", "type": "string", + "description": "The ID of the endpoint that the rule is associated with.", "markdownDescription": "The ID of the endpoint that the rule is associated with.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" - }, - "Arn": { - "description": "The Amazon Resource Name (ARN) of the resolver rule.", - "type": "string", - "markdownDescription": "The Amazon Resource Name (ARN) of the resolver rule.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-route53resolver-resolverruleassociation.json b/server/schema/resources/aws-route53resolver-resolverruleassociation.json index 84876883..3b868681 100644 --- a/server/schema/resources/aws-route53resolver-resolverruleassociation.json +++ b/server/schema/resources/aws-route53resolver-resolverruleassociation.json @@ -39,7 +39,9 @@ "primaryIdentifier": [ "/properties/ResolverRuleAssociationId" ], - "taggable": false, + "tagging": { + "taggable": false + }, "handlers": { "create": { "permissions": [ diff --git a/server/schema/resources/aws-rum-appmonitor.json b/server/schema/resources/aws-rum-appmonitor.json index 955a262e..a0b8d085 100644 --- a/server/schema/resources/aws-rum-appmonitor.json +++ b/server/schema/resources/aws-rum-appmonitor.json @@ -324,7 +324,7 @@ "S3Uri": { "description": "The S3Uri of the bucket or folder that stores the source map files. It is required if status is ENABLED.", "type": "string", - "markdownDescription": "The S3Uri of the bucket or folder that stores the source map files. It is required if status is ENABLED.\n\n---\n\nRequired: No \nType: String \nPattern: ^s3://[a-z0-9][-.a-z0-9]{1,61}(?:/[-!_*'().a-z0-9A-Z]+(?:/[-!_*'().a-z0-9A-Z]+)*)?/?$ \nUpdate requires: No interruption\n" + "markdownDescription": "The S3Uri of the bucket or folder that stores the source map files. It is required if status is ENABLED.\n\n---\n\nRequired: No \nType: String \nPattern: ^s3://[a-z0-9][-.a-z0-9]{1,62}(?:/[-!_*'().a-z0-9A-Z]+(?:/[-!_*'().a-z0-9A-Z]+)*)?/?$ \nUpdate requires: No interruption\n" } }, "required": [ diff --git a/server/schema/resources/aws-s3-accesspoint.json b/server/schema/resources/aws-s3-accesspoint.json index e8769af0..e78a7de7 100644 --- a/server/schema/resources/aws-s3-accesspoint.json +++ b/server/schema/resources/aws-s3-accesspoint.json @@ -47,6 +47,28 @@ "description": "the Amazon Resource Name (ARN) of the specified accesspoint.", "type": "string", "markdownDescription": "the Amazon Resource Name (ARN) of the specified accesspoint.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Key" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { @@ -108,6 +130,15 @@ "arn:aws:s3:us-west-2:123456789012:accesspoint/test" ], "markdownDescription": "The Amazon Resource Name (ARN) of the specified accesspoint.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "description": "An arbitrary set of tags (key-value pairs) for this S3 Access Point.", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "markdownDescription": "An arbitrary set of tags (key-value pairs) for this S3 Access Point.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ @@ -133,13 +164,15 @@ "s3:CreateAccessPoint", "s3:PutAccessPointPolicy", "s3:GetAccessPoint", - "s3:PutAccessPointPublicAccessBlock" + "s3:PutAccessPointPublicAccessBlock", + "s3:TagResource" ] }, "read": { "permissions": [ "s3:GetAccessPoint", - "s3:GetAccessPointPolicy" + "s3:GetAccessPointPolicy", + "s3:ListTagsForResource" ] }, "update": { @@ -148,7 +181,9 @@ "s3:PutAccessPointPublicAccessBlock", "s3:DeleteAccessPointPolicy", "s3:GetAccessPoint", - "s3:GetAccessPointPolicy" + "s3:GetAccessPointPolicy", + "s3:TagResource", + "s3:UntagResource" ] }, "delete": { @@ -164,7 +199,16 @@ } }, "tagging": { - "taggable": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "s3:TagResource", + "s3:UntagResource", + "s3:ListTagsForResource" + ] }, "additionalProperties": false, "attributes": { diff --git a/server/schema/resources/aws-s3-bucket.json b/server/schema/resources/aws-s3-bucket.json index 994cfe3f..af76ead0 100644 --- a/server/schema/resources/aws-s3-bucket.json +++ b/server/schema/resources/aws-s3-bucket.json @@ -59,14 +59,14 @@ "markdownDescription": "Defines how Amazon S3 handles Intelligent-Tiering storage.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "InventoryConfigurations": { - "description": "Specifies the inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.", + "description": "Specifies the S3 Inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.", "items": { "$ref": "#/definitions/InventoryConfiguration" }, "type": "array", "uniqueItems": true, "insertionOrder": true, - "markdownDescription": "Specifies the inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies the S3 Inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "LifecycleConfiguration": { "$ref": "#/definitions/LifecycleConfiguration", @@ -90,8 +90,13 @@ }, "MetadataTableConfiguration": { "$ref": "#/definitions/MetadataTableConfiguration", - "description": "The metadata table configuration of an S3 general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) and [Setting up permissions for configuring metadata tables](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html).", - "markdownDescription": "The metadata table configuration of an S3 general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) and [Setting up permissions for configuring metadata tables](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html).\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + "description": "The metadata table configuration of an S3 general purpose bucket.", + "markdownDescription": "The metadata table configuration of an S3 general purpose bucket.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MetadataConfiguration": { + "$ref": "#/definitions/MetadataConfiguration", + "description": "The S3 Metadata configuration for a general purpose bucket.", + "markdownDescription": "The S3 Metadata configuration for a general purpose bucket.\n\n---\n\nRequired: No \nType: \nUpdate requires: Replacement\nRead only property: Yes" }, "NotificationConfiguration": { "$ref": "#/definitions/NotificationConfiguration", @@ -224,14 +229,14 @@ "markdownDescription": "The account ID that owns the destination S3 bucket. If no account ID is provided, the owner is not validated before exporting data.\n Although this value is optional, we strongly recommend that you set it to help prevent problems if the destination bucket ownership changes.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "Format": { - "description": "Specifies the file format used when exporting data to Amazon S3.\n *Allowed values*: ``CSV`` | ``ORC`` | ``Parquet``", + "description": "Specifies the file format used when exporting data to Amazon S3.\n *Allowed values*: ``CSV`` | ``ORC`` | ``Parquet``", "type": "string", "enum": [ "CSV", "ORC", "Parquet" ], - "markdownDescription": "Specifies the file format used when exporting data to Amazon S3.\n *Allowed values*: ``CSV`` | ``ORC`` | ``Parquet``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: CSV | ORC | Parquet \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies the file format used when exporting data to Amazon S3.\n *Allowed values*: ``CSV`` | ``ORC`` | ``Parquet``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: CSV | ORC | Parquet \nUpdate requires: No interruption\n" }, "Prefix": { "description": "The prefix to use when exporting data. The prefix is prepended to all results.", @@ -360,7 +365,7 @@ "markdownDescription": "Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed keys (SSE-S3), AWS KMS-managed keys (SSE-KMS), or dual-layer server-side encryption with KMS-managed keys (DSSE-KMS). For information about the Amazon S3 default encryption feature, see [Amazon S3 Default Encryption for S3 Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the *Amazon S3 User Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "ServerSideEncryptionRule": { - "description": "Specifies the default server-side encryption configuration.\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.\n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.", + "description": "Specifies the default server-side encryption configuration.\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.\n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.", "type": "object", "additionalProperties": false, "properties": { @@ -375,16 +380,16 @@ "markdownDescription": "Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Specifies the default server-side encryption configuration.\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.\n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies the default server-side encryption configuration.\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner.\n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "ServerSideEncryptionByDefault": { - "description": "Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html).\n + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. \n + *Directory buckets* - Your SSE-KMS configuration can only support 1 [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per directory bucket's lifetime. The [managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (``aws/s3``) isn't supported. \n + *Directory buckets* - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.", + "description": "Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html).\n + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. \n + *Directory buckets* - Your SSE-KMS configuration can only support 1 [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per directory bucket's lifetime. The [managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (``aws/s3``) isn't supported. \n + *Directory buckets* - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.", "type": "object", "properties": { "KMSMasterKeyID": { - "description": "AWS Key Management Service (KMS) customer managed key ID to use for the default encryption. \n + *General purpose buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse``.\n + *Directory buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms``.\n \n You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.\n + Key ID: ``1234abcd-12ab-34cd-56ef-1234567890ab`` \n + Key ARN: ``arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`` \n + Key Alias: ``alias/alias-name`` \n \n If you are using encryption with cross-account or AWS service operations, you must use a fully qualified KMS key ARN. For more information, see [Using encryption for cross-account operations](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy).\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log. \n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.\n \n Amazon S3 only supports symmetric encryption KMS keys. For more information, see [Asymmetric keys in KMS](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *Key Management Service Developer Guide*.", + "description": "AWS Key Management Service (KMS) customer managed key ID to use for the default encryption. \n + *General purpose buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse``.\n + *Directory buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms``.\n \n You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.\n + Key ID: ``1234abcd-12ab-34cd-56ef-1234567890ab``\n + Key ARN: ``arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab``\n + Key Alias: ``alias/alias-name``\n \n If you are using encryption with cross-account or AWS service operations, you must use a fully qualified KMS key ARN. For more information, see [Using encryption for cross-account operations](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy).\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log. \n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.\n \n Amazon S3 only supports symmetric encryption KMS keys. For more information, see [Asymmetric keys in KMS](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *Key Management Service Developer Guide*.", "type": "string", - "markdownDescription": "AWS Key Management Service (KMS) customer managed key ID to use for the default encryption. \n + *General purpose buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse``.\n + *Directory buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms``.\n \n You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.\n + Key ID: ``1234abcd-12ab-34cd-56ef-1234567890ab`` \n + Key ARN: ``arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`` \n + Key Alias: ``alias/alias-name`` \n \n If you are using encryption with cross-account or AWS service operations, you must use a fully qualified KMS key ARN. For more information, see [Using encryption for cross-account operations](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy).\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log. \n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.\n \n Amazon S3 only supports symmetric encryption KMS keys. For more information, see [Asymmetric keys in KMS](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *Key Management Service Developer Guide*.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "AWS Key Management Service (KMS) customer managed key ID to use for the default encryption. \n + *General purpose buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms`` or ``aws:kms:dsse``.\n + *Directory buckets* - This parameter is allowed if and only if ``SSEAlgorithm`` is set to ``aws:kms``.\n \n You can specify the key ID, key alias, or the Amazon Resource Name (ARN) of the KMS key.\n + Key ID: ``1234abcd-12ab-34cd-56ef-1234567890ab``\n + Key ARN: ``arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab``\n + Key Alias: ``alias/alias-name``\n \n If you are using encryption with cross-account or AWS service operations, you must use a fully qualified KMS key ARN. For more information, see [Using encryption for cross-account operations](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy).\n + *General purpose buckets* - If you're specifying a customer managed KMS key, we recommend using a fully qualified KMS key ARN. If you use a KMS key alias instead, then KMS resolves the key within the requester\u2019s account. This behavior can result in data that's encrypted with a KMS key that belongs to the requester, and not the bucket owner. Also, if you use a key ID, you can run into a LogDestination undeliverable error when creating a VPC flow log. \n + *Directory buckets* - When you specify an [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) for encryption in your directory bucket, only use the key ID or key ARN. The key alias format of the KMS key isn't supported.\n \n Amazon S3 only supports symmetric encryption KMS keys. For more information, see [Asymmetric keys in KMS](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *Key Management Service Developer Guide*.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "SSEAlgorithm": { "type": "string", @@ -401,7 +406,7 @@ "required": [ "SSEAlgorithm" ], - "markdownDescription": "Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html).\n + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. \n + *Directory buckets* - Your SSE-KMS configuration can only support 1 [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per directory bucket's lifetime. The [managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (``aws/s3``) isn't supported. \n + *Directory buckets* - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Describes the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. For more information, see [PutBucketEncryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html).\n + *General purpose buckets* - If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key (``aws/s3``) in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. \n + *Directory buckets* - Your SSE-KMS configuration can only support 1 [customer managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) per directory bucket's lifetime. The [managed key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (``aws/s3``) isn't supported. \n + *Directory buckets* - For directory buckets, there are only two supported options for server-side encryption: SSE-S3 and SSE-KMS.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "CorsConfiguration": { "type": "object", @@ -442,7 +447,7 @@ "markdownDescription": "Headers that are specified in the ``Access-Control-Request-Headers`` header. These headers are allowed in a preflight OPTIONS request. In response to any preflight OPTIONS request, Amazon S3 returns any requested headers that are allowed.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "AllowedMethods": { - "description": "An HTTP method that you allow the origin to run.\n *Allowed values*: ``GET`` | ``PUT`` | ``HEAD`` | ``POST`` | ``DELETE``", + "description": "An HTTP method that you allow the origin to run.\n *Allowed values*: ``GET`` | ``PUT`` | ``HEAD`` | ``POST`` | ``DELETE``", "type": "array", "uniqueItems": true, "insertionOrder": true, @@ -457,7 +462,7 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: GET | PUT | HEAD | POST | DELETE \nUpdate requires: No interruption\n" }, - "markdownDescription": "An HTTP method that you allow the origin to run.\n *Allowed values*: ``GET`` | ``PUT`` | ``HEAD`` | ``POST`` | ``DELETE``\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "An HTTP method that you allow the origin to run.\n *Allowed values*: ``GET`` | ``PUT`` | ``HEAD`` | ``POST`` | ``DELETE``\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, "AllowedOrigins": { "description": "One or more origins you want customers to be able to access the bucket from.", @@ -656,8 +661,8 @@ "IncludedObjectVersions", "ScheduleFrequency" ], - "description": "Specifies the inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.", - "markdownDescription": "Specifies the inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "description": "Specifies the S3 Inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.", + "markdownDescription": "Specifies the S3 Inventory configuration for an Amazon S3 bucket. For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "LifecycleConfiguration": { "type": "object", @@ -674,13 +679,13 @@ "markdownDescription": "A lifecycle rule for individual objects in an Amazon S3 bucket.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, "TransitionDefaultMinimumObjectSize": { - "description": "Indicates which default minimum object size behavior is applied to the lifecycle configuration.\n This parameter applies to general purpose buckets only. It isn't supported for directory bucket lifecycle configurations.\n + ``all_storage_classes_128K`` - Objects smaller than 128 KB will not transition to any storage class by default.\n + ``varies_by_storage_class`` - Objects smaller than 128 KB will transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes will prevent transitions smaller than 128 KB. \n \n To customize the minimum object size for any transition you can add a filter that specifies a custom ``ObjectSizeGreaterThan`` or ``ObjectSizeLessThan`` in the body of your transition rule. Custom filters always take precedence over the default transition behavior.", + "description": "Indicates which default minimum object size behavior is applied to the lifecycle configuration.\n This parameter applies to general purpose buckets only. It isn't supported for directory bucket lifecycle configurations.\n + ``all_storage_classes_128K`` - Objects smaller than 128 KB will not transition to any storage class by default.\n + ``varies_by_storage_class`` - Objects smaller than 128 KB will transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes will prevent transitions smaller than 128 KB. \n \n To customize the minimum object size for any transition you can add a filter that specifies a custom ``ObjectSizeGreaterThan`` or ``ObjectSizeLessThan`` in the body of your transition rule. Custom filters always take precedence over the default transition behavior.", "type": "string", "enum": [ "varies_by_storage_class", "all_storage_classes_128K" ], - "markdownDescription": "Indicates which default minimum object size behavior is applied to the lifecycle configuration.\n This parameter applies to general purpose buckets only. It isn't supported for directory bucket lifecycle configurations.\n + ``all_storage_classes_128K`` - Objects smaller than 128 KB will not transition to any storage class by default.\n + ``varies_by_storage_class`` - Objects smaller than 128 KB will transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes will prevent transitions smaller than 128 KB. \n \n To customize the minimum object size for any transition you can add a filter that specifies a custom ``ObjectSizeGreaterThan`` or ``ObjectSizeLessThan`` in the body of your transition rule. Custom filters always take precedence over the default transition behavior.\n\n---\n\nRequired: No \nType: String \nAllowed Values: varies_by_storage_class | all_storage_classes_128K \nUpdate requires: No interruption\n" + "markdownDescription": "Indicates which default minimum object size behavior is applied to the lifecycle configuration.\n This parameter applies to general purpose buckets only. It isn't supported for directory bucket lifecycle configurations.\n + ``all_storage_classes_128K`` - Objects smaller than 128 KB will not transition to any storage class by default.\n + ``varies_by_storage_class`` - Objects smaller than 128 KB will transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes will prevent transitions smaller than 128 KB. \n \n To customize the minimum object size for any transition you can add a filter that specifies a custom ``ObjectSizeGreaterThan`` or ``ObjectSizeLessThan`` in the body of your transition rule. Custom filters always take precedence over the default transition behavior.\n\n---\n\nRequired: No \nType: String \nAllowed Values: varies_by_storage_class | all_storage_classes_128K \nUpdate requires: No interruption\n" } }, "required": [ @@ -1386,8 +1391,8 @@ "properties": { "DeleteMarkerReplication": { "$ref": "#/definitions/DeleteMarkerReplication", - "description": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication`` ``Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).", - "markdownDescription": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication`` ``Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "description": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication````Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).", + "markdownDescription": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication````Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "Destination": { "$ref": "#/definitions/ReplicationDestination", @@ -1451,8 +1456,8 @@ "markdownDescription": "Indicates whether to replicate delete markers. Disabled by default.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Disabled | Enabled \nUpdate requires: No interruption\n" } }, - "description": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication`` ``Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).", - "markdownDescription": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication`` ``Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "description": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication````Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).", + "markdownDescription": "Specifies whether Amazon S3 replicates delete markers. If you specify a ``Filter`` in your replication configuration, you must also include a ``DeleteMarkerReplication`` element. If your ``Filter`` includes a ``Tag`` element, the ``DeleteMarkerReplication````Status`` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config). \n For more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html). \n If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "ReplicationDestination": { "type": "object", @@ -1490,7 +1495,7 @@ "markdownDescription": "A container specifying S3 Replication Time Control (S3 RTC), including whether S3 RTC is enabled and the time when all objects and operations on objects must be replicated. Must be specified together with a ``Metrics`` block.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "StorageClass": { - "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. By default, Amazon S3 uses the storage class of the source object to create the object replica. \n For valid values, see the ``StorageClass`` element of the [PUT Bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) action in the *Amazon S3 API Reference*.", + "description": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. By default, Amazon S3 uses the storage class of the source object to create the object replica. \n For valid values, see the ``StorageClass`` element of the [PUT Bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) action in the *Amazon S3 API Reference*.\n ``FSX_OPENZFS`` is not an accepted value when replicating objects.", "type": "string", "enum": [ "DEEP_ARCHIVE", @@ -1502,7 +1507,7 @@ "STANDARD", "STANDARD_IA" ], - "markdownDescription": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. By default, Amazon S3 uses the storage class of the source object to create the object replica. \n For valid values, see the ``StorageClass`` element of the [PUT Bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) action in the *Amazon S3 API Reference*.\n\n---\n\nRequired: No \nType: String \nAllowed Values: DEEP_ARCHIVE | GLACIER | GLACIER_IR | INTELLIGENT_TIERING | ONEZONE_IA | REDUCED_REDUNDANCY | STANDARD | STANDARD_IA \nUpdate requires: No interruption\n" + "markdownDescription": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy. By default, Amazon S3 uses the storage class of the source object to create the object replica. \n For valid values, see the ``StorageClass`` element of the [PUT Bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) action in the *Amazon S3 API Reference*.\n ``FSX_OPENZFS`` is not an accepted value when replicating objects.\n\n---\n\nRequired: No \nType: String \nAllowed Values: DEEP_ARCHIVE | GLACIER | GLACIER_IR | INTELLIGENT_TIERING | ONEZONE_IA | REDUCED_REDUNDANCY | STANDARD | STANDARD_IA \nUpdate requires: No interruption\n" } }, "required": [ @@ -1679,13 +1684,13 @@ "additionalProperties": false, "properties": { "Status": { - "description": "Specifies whether Amazon S3 replicates modifications on replicas.\n *Allowed values*: ``Enabled`` | ``Disabled``", + "description": "Specifies whether Amazon S3 replicates modifications on replicas.\n *Allowed values*: ``Enabled`` | ``Disabled``", "type": "string", "enum": [ "Enabled", "Disabled" ], - "markdownDescription": "Specifies whether Amazon S3 replicates modifications on replicas.\n *Allowed values*: ``Enabled`` | ``Disabled``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: Enabled | Disabled \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies whether Amazon S3 replicates modifications on replicas.\n *Allowed values*: ``Enabled`` | ``Disabled``\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: Enabled | Disabled \nUpdate requires: No interruption\n" } }, "required": [ @@ -1856,9 +1861,9 @@ "additionalProperties": false, "properties": { "KeyPrefixEquals": { - "description": "The object key name prefix when the redirect is applied. For example, to redirect requests for ``ExamplePage.html``, the key prefix will be ``ExamplePage.html``. To redirect request for all pages with the prefix ``docs/``, the key prefix will be ``/docs``, which identifies all objects in the docs/ folder.\n Required when the parent element ``Condition`` is specified and sibling ``HttpErrorCodeReturnedEquals`` is not specified. If both conditions are specified, both must be true for the redirect to be applied.", + "description": "The object key name prefix when the redirect is applied. For example, to redirect requests for ``ExamplePage.html``, the key prefix will be ``ExamplePage.html``. To redirect request for all pages with the prefix ``docs/``, the key prefix will be ``docs/``, which identifies all objects in the docs/ folder.\n Required when the parent element ``Condition`` is specified and sibling ``HttpErrorCodeReturnedEquals`` is not specified. If both conditions are specified, both must be true for the redirect to be applied.", "type": "string", - "markdownDescription": "The object key name prefix when the redirect is applied. For example, to redirect requests for ``ExamplePage.html``, the key prefix will be ``ExamplePage.html``. To redirect request for all pages with the prefix ``docs/``, the key prefix will be ``/docs``, which identifies all objects in the docs/ folder.\n Required when the parent element ``Condition`` is specified and sibling ``HttpErrorCodeReturnedEquals`` is not specified. If both conditions are specified, both must be true for the redirect to be applied.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The object key name prefix when the redirect is applied. For example, to redirect requests for ``ExamplePage.html``, the key prefix will be ``ExamplePage.html``. To redirect request for all pages with the prefix ``docs/``, the key prefix will be ``docs/``, which identifies all objects in the docs/ folder.\n Required when the parent element ``Condition`` is specified and sibling ``HttpErrorCodeReturnedEquals`` is not specified. If both conditions are specified, both must be true for the redirect to be applied.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "HttpErrorCodeReturnedEquals": { "description": "The HTTP error code when the redirect is applied. In the event of an error, if the error code equals this value, then the specified redirect is applied.\n Required when parent element ``Condition`` is specified and sibling ``KeyPrefixEquals`` is not specified. If both are specified, then both must be true for the redirect to be applied.", @@ -1911,8 +1916,8 @@ "required": [ "S3TablesDestination" ], - "description": "The metadata table configuration of an S3 general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) and [Setting up permissions for configuring metadata tables](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html).", - "markdownDescription": "The metadata table configuration of an S3 general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) and [Setting up permissions for configuring metadata tables](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-permissions.html).\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + "description": "We recommend that you create your S3 Metadata configurations by using the V2 [MetadataConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-s3-bucket-metadataconfiguration.html) resource type. We no longer recommend using the V1 ``MetadataTableConfiguration`` resource type. \n If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete and re-create your configuration by using the [MetadataConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-s3-bucket-metadataconfiguration.html) resource type so that you can expire journal table records and create a live inventory table.\n Creates a V1 S3 Metadata configuration for a general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) in the *Amazon S3 User Guide*.", + "markdownDescription": "We recommend that you create your S3 Metadata configurations by using the V2 [MetadataConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-s3-bucket-metadataconfiguration.html) resource type. We no longer recommend using the V1 ``MetadataTableConfiguration`` resource type. \n If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete and re-create your configuration by using the [MetadataConfiguration](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-s3-bucket-metadataconfiguration.html) resource type so that you can expire journal table records and create a live inventory table.\n Creates a V1 S3 Metadata configuration for a general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) in the *Amazon S3 User Guide*.\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" }, "S3TablesDestination": { "type": "object", @@ -1943,8 +1948,180 @@ "TableBucketArn", "TableName" ], - "description": "The destination information for the metadata table configuration. The destination table bucket must be in the same Region and AWS-account as the general purpose bucket. The specified metadata table name must be unique within the ``aws_s3_metadata`` namespace in the destination table bucket.", - "markdownDescription": "The destination information for the metadata table configuration. The destination table bucket must be in the same Region and AWS-account as the general purpose bucket. The specified metadata table name must be unique within the ``aws_s3_metadata`` namespace in the destination table bucket.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "description": "The destination information for a V1 S3 Metadata configuration. The destination table bucket must be in the same Region and AWS-account as the general purpose bucket. The specified metadata table name must be unique within the ``aws_s3_metadata`` namespace in the destination table bucket.", + "markdownDescription": "The destination information for a V1 S3 Metadata configuration. The destination table bucket must be in the same Region and AWS-account as the general purpose bucket. The specified metadata table name must be unique within the ``aws_s3_metadata`` namespace in the destination table bucket.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RecordExpiration": { + "type": "object", + "additionalProperties": false, + "properties": { + "Expiration": { + "type": "string", + "enum": [ + "ENABLED", + "DISABLED" + ], + "description": "Specifies whether journal table record expiration is enabled or disabled.", + "markdownDescription": "Specifies whether journal table record expiration is enabled or disabled.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, + "Days": { + "type": "integer", + "description": "If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from ``7`` to ``2147483647``. For example, to retain your journal table records for one year, set this value to ``365``.", + "markdownDescription": "If you enable journal table record expiration, you can set the number of days to retain your journal table records. Journal table records must be retained for a minimum of 7 days. To set this value, specify any whole number from ``7`` to ``2147483647``. For example, to retain your journal table records for one year, set this value to ``365``.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Expiration" + ], + "description": "The journal table record expiration settings for a journal table in an S3 Metadata configuration.", + "markdownDescription": "The journal table record expiration settings for a journal table in an S3 Metadata configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "MetadataTableEncryptionConfiguration": { + "type": "object", + "additionalProperties": false, + "properties": { + "SseAlgorithm": { + "type": "string", + "enum": [ + "aws:kms", + "AES256" + ], + "description": "The encryption type specified for a metadata table. To specify server-side encryption with KMSlong (KMS) keys (SSE-KMS), use the ``aws:kms`` value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the ``AES256`` value.", + "markdownDescription": "The encryption type specified for a metadata table. To specify server-side encryption with KMSlong (KMS) keys (SSE-KMS), use the ``aws:kms`` value. To specify server-side encryption with Amazon S3 managed keys (SSE-S3), use the ``AES256`` value.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: aws:kms | AES256 \nUpdate requires: No interruption\n" + }, + "KmsKeyArn": { + "type": "string", + "description": "If server-side encryption with KMSlong (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.", + "markdownDescription": "If server-side encryption with KMSlong (KMS) keys (SSE-KMS) is specified, you must also specify the KMS key Amazon Resource Name (ARN). You must specify a customer-managed KMS key that's located in the same Region as the general purpose bucket that corresponds to the metadata table configuration.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "SseAlgorithm" + ], + "description": "The encryption settings for an S3 Metadata journal table or inventory table configuration.", + "markdownDescription": "The encryption settings for an S3 Metadata journal table or inventory table configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "MetadataDestination": { + "type": "object", + "additionalProperties": false, + "properties": { + "TableBucketType": { + "type": "string", + "enum": [ + "aws", + "customer" + ], + "description": "The type of the table bucket where the metadata configuration is stored. The ``aws`` value indicates an AWS managed table bucket, and the ``customer`` value indicates a customer-managed table bucket. V2 metadata configurations are stored in AWS managed table buckets, and V1 metadata configurations are stored in customer-managed table buckets.", + "markdownDescription": "The type of the table bucket where the metadata configuration is stored. The ``aws`` value indicates an AWS managed table bucket, and the ``customer`` value indicates a customer-managed table bucket. V2 metadata configurations are stored in AWS managed table buckets, and V1 metadata configurations are stored in customer-managed table buckets.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: aws | customer \nUpdate requires: No interruption\n" + }, + "TableBucketArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the table bucket where the metadata configuration is stored.", + "markdownDescription": "The Amazon Resource Name (ARN) of the table bucket where the metadata configuration is stored.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableNamespace": { + "type": "string", + "description": "The namespace in the table bucket where the metadata tables for a metadata configuration are stored.", + "markdownDescription": "The namespace in the table bucket where the metadata tables for a metadata configuration are stored.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TableBucketType" + ], + "description": "The destination information for the S3 Metadata configuration.", + "markdownDescription": "The destination information for the S3 Metadata configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "JournalTableConfiguration": { + "type": "object", + "additionalProperties": false, + "properties": { + "TableName": { + "type": "string", + "description": "The name of the journal table.", + "markdownDescription": "The name of the journal table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the journal table.", + "markdownDescription": "The Amazon Resource Name (ARN) for the journal table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "RecordExpiration": { + "$ref": "#/definitions/RecordExpiration", + "description": "The journal table record expiration settings for the journal table.", + "markdownDescription": "The journal table record expiration settings for the journal table.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/MetadataTableEncryptionConfiguration", + "description": "The encryption configuration for the journal table.", + "markdownDescription": "The encryption configuration for the journal table.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "RecordExpiration" + ], + "description": "The journal table configuration for an S3 Metadata configuration.", + "markdownDescription": "The journal table configuration for an S3 Metadata configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InventoryTableConfiguration": { + "type": "object", + "additionalProperties": false, + "properties": { + "TableName": { + "type": "string", + "description": "The name of the inventory table.", + "markdownDescription": "The name of the inventory table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) for the inventory table.", + "markdownDescription": "The Amazon Resource Name (ARN) for the inventory table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "ConfigurationState": { + "type": "string", + "enum": [ + "ENABLED", + "DISABLED" + ], + "description": "The configuration state of the inventory table, indicating whether the inventory table is enabled or disabled.", + "markdownDescription": "The configuration state of the inventory table, indicating whether the inventory table is enabled or disabled.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, + "EncryptionConfiguration": { + "$ref": "#/definitions/MetadataTableEncryptionConfiguration", + "description": "The encryption configuration for the inventory table.", + "markdownDescription": "The encryption configuration for the inventory table.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ConfigurationState" + ], + "description": "The inventory table configuration for an S3 Metadata configuration.", + "markdownDescription": "The inventory table configuration for an S3 Metadata configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "MetadataConfiguration": { + "type": "object", + "additionalProperties": false, + "description": "Creates a V2 S3 Metadata configuration of a general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) in the *Amazon S3 User Guide*.", + "properties": { + "Destination": { + "$ref": "#/definitions/MetadataDestination", + "description": "The destination information for the S3 Metadata configuration.", + "markdownDescription": "The destination information for the S3 Metadata configuration.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "JournalTableConfiguration": { + "$ref": "#/definitions/JournalTableConfiguration", + "description": "The journal table configuration for a metadata configuration.", + "markdownDescription": "The journal table configuration for a metadata configuration.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + }, + "InventoryTableConfiguration": { + "$ref": "#/definitions/InventoryTableConfiguration", + "description": "The inventory table configuration for a metadata configuration.", + "markdownDescription": "The inventory table configuration for a metadata configuration.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + } + }, + "required": [ + "JournalTableConfiguration" + ], + "markdownDescription": "Creates a V2 S3 Metadata configuration of a general purpose bucket. For more information, see [Accelerating data discovery with S3 Metadata](https://docs.aws.amazon.com/AmazonS3/latest/userguide/metadata-tables-overview.html) in the *Amazon S3 User Guide*.\n\n---\n\nRequired: No \nUpdate requires: Replacement\nRead only property: Yes" } }, "tagging": { @@ -1960,7 +2137,8 @@ ] }, "createOnlyProperties": [ - "/properties/BucketName" + "/properties/BucketName", + "/properties/MetadataConfiguration/JournalTableConfiguration/EncryptionConfiguration" ], "primaryIdentifier": [ "/properties/BucketName" @@ -1972,10 +2150,17 @@ "/properties/RegionalDomainName", "/properties/MetadataTableConfiguration/S3TablesDestination/TableNamespace", "/properties/MetadataTableConfiguration/S3TablesDestination/TableArn", + "/properties/MetadataConfiguration/Destination", + "/properties/MetadataConfiguration/JournalTableConfiguration/TableName", + "/properties/MetadataConfiguration/JournalTableConfiguration/TableArn", + "/properties/MetadataConfiguration/InventoryTableConfiguration/TableName", + "/properties/MetadataConfiguration/InventoryTableConfiguration/TableArn", "/properties/WebsiteURL" ], "writeOnlyProperties": [ "/properties/AccessControl", + "/properties/MetadataConfiguration/JournalTableConfiguration/EncryptionConfiguration", + "/properties/MetadataConfiguration/InventoryTableConfiguration/EncryptionConfiguration", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionExpirationInDays", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionTransition", "/properties/LifecycleConfiguration/Rules/*/Transition", @@ -2019,7 +2204,9 @@ "s3:CreateBucketMetadataTableConfiguration", "s3tables:CreateNamespace", "s3tables:CreateTable", + "s3tables:CreateTableBucket", "s3tables:GetTable", + "s3tables:PutTableEncryption", "s3tables:PutTablePolicy", "s3tables:GetTableMetadataLocation", "s3tables:UpdateTableMetadataLocation" @@ -2066,9 +2253,13 @@ "s3:GetBucketMetadataTableConfiguration", "s3:DeleteBucketMetadataTableConfiguration", "s3:CreateBucketMetadataTableConfiguration", + "s3:UpdateBucketMetadataJournalTableConfiguration", + "s3:UpdateBucketMetadataInventoryTableConfiguration", "s3tables:CreateNamespace", "s3tables:CreateTable", + "s3tables:CreateTableBucket", "s3tables:GetTable", + "s3tables:PutTableEncryption", "s3tables:PutTablePolicy", "s3tables:GetTableMetadataLocation", "s3tables:UpdateTableMetadataLocation", diff --git a/server/schema/resources/aws-s3-multiregionaccesspoint.json b/server/schema/resources/aws-s3-multiregionaccesspoint.json index 9ea81854..1881892b 100644 --- a/server/schema/resources/aws-s3-multiregionaccesspoint.json +++ b/server/schema/resources/aws-s3-multiregionaccesspoint.json @@ -1,50 +1,89 @@ { + "tagging": { + "taggable": false + }, + "handlers": { + "read": { + "permissions": [ + "s3:GetMultiRegionAccessPoint" + ] + }, + "create": { + "permissions": [ + "s3:CreateMultiRegionAccessPoint", + "s3:DescribeMultiRegionAccessPointOperation", + "s3:GetMultiRegionAccessPoint" + ] + }, + "list": { + "permissions": [ + "s3:ListMultiRegionAccessPoints" + ] + }, + "delete": { + "permissions": [ + "s3:DeleteMultiRegionAccessPoint", + "s3:DescribeMultiRegionAccessPointOperation", + "s3:GetMultiRegionAccessPoint" + ] + } + }, "typeName": "AWS::S3::MultiRegionAccessPoint", + "readOnlyProperties": [ + "/properties/Alias", + "/properties/CreatedAt" + ], "description": "AWS::S3::MultiRegionAccessPoint is an Amazon S3 resource type that dynamically routes S3 requests to easily satisfy geographic compliance requirements based on customer-defined routing policies.", + "createOnlyProperties": [ + "/properties/Name", + "/properties/PublicAccessBlockConfiguration", + "/properties/Regions" + ], + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/Name" + ], "definitions": { "PublicAccessBlockConfiguration": { + "additionalProperties": false, "type": "object", "properties": { - "BlockPublicAcls": { - "type": "boolean", - "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in this account. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\n. - PUT Bucket calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs.", - "markdownDescription": "Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in this account. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\n. - PUT Bucket calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "IgnorePublicAcls": { + "RestrictPublicBuckets": { + "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.", "type": "boolean", - "description": "Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on buckets in this account and any objects that they contain. Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.", - "markdownDescription": "Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on buckets in this account and any objects that they contain. Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, "BlockPublicPolicy": { - "type": "boolean", "description": "Specifies whether Amazon S3 should block public bucket policies for buckets in this account. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. Enabling this setting doesn't affect existing bucket policies.", + "type": "boolean", "markdownDescription": "Specifies whether Amazon S3 should block public bucket policies for buckets in this account. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. Enabling this setting doesn't affect existing bucket policies.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "RestrictPublicBuckets": { + "BlockPublicAcls": { + "description": "Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in this account. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\n. - PUT Bucket calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs.", "type": "boolean", - "description": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.", - "markdownDescription": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in this account. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\n. - PUT Bucket calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "IgnorePublicAcls": { + "description": "Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on buckets in this account and any objects that they contain. Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.", + "type": "boolean", + "markdownDescription": "Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on buckets in this account and any objects that they contain. Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, - "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Region": { + "additionalProperties": false, "type": "object", "properties": { "Bucket": { - "type": "string", "minLength": 3, + "type": "string", "maxLength": 63, - "relationshipRef": { - "typeName": "AWS::S3::Bucket", - "propertyPath": "/properties/BucketName" - }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 3 \nMaximum Length: 63 \nPattern: ^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$ \nUpdate requires: No interruption\n" }, "BucketAccountId": { - "type": "string", "minLength": 12, + "type": "string", "maxLength": 12, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 12 \nPattern: ^[0-9]{12}$ \nUpdate requires: No interruption\n" } @@ -52,17 +91,14 @@ "required": [ "Bucket" ], - "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { - "Name": { - "description": "The name you want to assign to this Multi Region Access Point.", - "type": "string", - "minLength": 3, - "maxLength": 50, - "markdownDescription": "The name you want to assign to this Multi Region Access Point.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 3 \nMaximum Length: 50 \nPattern: ^[a-z0-9][-a-z0-9]{1,48}[a-z0-9]$ \nUpdate requires: Replacement\n" + "PublicAccessBlockConfiguration": { + "description": "The PublicAccessBlock configuration that you want to apply to this Multi Region Access Point. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status 'The Meaning of Public' in the Amazon Simple Storage Service Developer Guide.", + "$ref": "#/definitions/PublicAccessBlockConfiguration", + "markdownDescription": "The PublicAccessBlock configuration that you want to apply to this Multi Region Access Point. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status 'The Meaning of Public' in the Amazon Simple Storage Service Developer Guide.\n\n---\n\nRequired: No \nType: \nUpdate requires: Replacement\n" }, "Alias": { "description": "The alias is a unique identifier to, and is part of the public DNS name for this Multi Region Access Point", @@ -74,69 +110,29 @@ "type": "string", "markdownDescription": "The timestamp of the when the Multi Region Access Point is created\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" }, - "PublicAccessBlockConfiguration": { - "description": "The PublicAccessBlock configuration that you want to apply to this Multi Region Access Point. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status 'The Meaning of Public' in the Amazon Simple Storage Service Developer Guide.", - "$ref": "#/definitions/PublicAccessBlockConfiguration", - "markdownDescription": "The PublicAccessBlock configuration that you want to apply to this Multi Region Access Point. You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status 'The Meaning of Public' in the Amazon Simple Storage Service Developer Guide.\n\n---\n\nRequired: No \nType: \nUpdate requires: Replacement\n" - }, "Regions": { + "minItems": 1, + "uniqueItems": true, "description": "The list of buckets that you want to associate this Multi Region Access Point with.", "type": "array", - "uniqueItems": true, - "minItems": 1, "items": { "description": "The name of the bucket that represents of the region belonging to this Multi Region Access Point.", "$ref": "#/definitions/Region", "markdownDescription": "The name of the bucket that represents of the region belonging to this Multi Region Access Point.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, "markdownDescription": "The list of buckets that you want to associate this Multi Region Access Point with.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: Replacement\n" + }, + "Name": { + "minLength": 3, + "description": "The name you want to assign to this Multi Region Access Point.", + "type": "string", + "maxLength": 50, + "markdownDescription": "The name you want to assign to this Multi Region Access Point.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 3 \nMaximum Length: 50 \nPattern: ^[a-z0-9][-a-z0-9]{1,48}[a-z0-9]$ \nUpdate requires: Replacement\n" } }, - "tagging": { - "taggable": false - }, - "additionalProperties": false, "required": [ "Regions" ], - "readOnlyProperties": [ - "/properties/Alias", - "/properties/CreatedAt" - ], - "createOnlyProperties": [ - "/properties/Name", - "/properties/PublicAccessBlockConfiguration", - "/properties/Regions" - ], - "primaryIdentifier": [ - "/properties/Name" - ], - "handlers": { - "create": { - "permissions": [ - "s3:CreateMultiRegionAccessPoint", - "s3:DescribeMultiRegionAccessPointOperation", - "s3:GetMultiRegionAccessPoint" - ] - }, - "read": { - "permissions": [ - "s3:GetMultiRegionAccessPoint" - ] - }, - "delete": { - "permissions": [ - "s3:DeleteMultiRegionAccessPoint", - "s3:DescribeMultiRegionAccessPointOperation", - "s3:GetMultiRegionAccessPoint" - ] - }, - "list": { - "permissions": [ - "s3:ListMultiRegionAccessPoints" - ] - } - }, "attributes": { "Alias": { "description": "The alias is a unique identifier to, and is part of the public DNS name for this Multi Region Access Point", diff --git a/server/schema/resources/aws-s3-storagelens.json b/server/schema/resources/aws-s3-storagelens.json index b9beca7c..daafe2d9 100644 --- a/server/schema/resources/aws-s3-storagelens.json +++ b/server/schema/resources/aws-s3-storagelens.json @@ -1,140 +1,133 @@ { - "typeName": "AWS::S3::StorageLens", - "description": "The AWS::S3::StorageLens resource is an Amazon S3 resource type that you can use to create Storage Lens configurations.", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-s3-storagelens", - "definitions": { - "Id": { - "description": "The ID that identifies the Amazon S3 Storage Lens configuration.", - "type": "string", - "minLength": 1, - "maxLength": 64, - "markdownDescription": "The ID that identifies the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[a-zA-Z0-9\\-_.]+$ \nUpdate requires: No interruption\n" + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "tagProperty": "/properties/Tags", + "cloudFormationSystemTags": false + }, + "handlers": { + "read": { + "permissions": [ + "s3:GetStorageLensConfiguration", + "s3:GetStorageLensConfigurationTagging" + ] }, - "Arn": { - "description": "The Amazon Resource Name (ARN) of the specified resource.", - "type": "string", - "markdownDescription": "The Amazon Resource Name (ARN) of the specified resource.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "create": { + "permissions": [ + "s3:PutStorageLensConfiguration", + "s3:PutStorageLensConfigurationTagging", + "s3:GetStorageLensConfiguration", + "s3:GetStorageLensConfigurationTagging", + "organizations:DescribeOrganization", + "organizations:ListAccounts", + "organizations:ListAWSServiceAccessForOrganization", + "organizations:ListDelegatedAdministrators", + "iam:CreateServiceLinkedRole" + ] }, - "BucketsAndRegions": { - "description": "S3 buckets and Regions to include/exclude in the Amazon S3 Storage Lens configuration.", - "type": "object", - "additionalProperties": false, - "properties": { - "Buckets": { - "type": "array", - "insertionOrder": false, - "uniqueItems": true, - "items": { - "$ref": "#/definitions/Arn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Regions": { - "type": "array", - "insertionOrder": false, - "uniqueItems": true, - "items": { - "type": "string", - "description": "An AWS Region.", - "markdownDescription": "An AWS Region.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "S3 buckets and Regions to include/exclude in the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "update": { + "permissions": [ + "s3:PutStorageLensConfiguration", + "s3:PutStorageLensConfigurationTagging", + "s3:GetStorageLensConfiguration", + "s3:GetStorageLensConfigurationTagging", + "organizations:DescribeOrganization", + "organizations:ListAccounts", + "organizations:ListAWSServiceAccessForOrganization", + "organizations:ListDelegatedAdministrators", + "iam:CreateServiceLinkedRole" + ] }, - "AwsOrg": { - "description": "The AWS Organizations ARN to use in the Amazon S3 Storage Lens configuration.", - "type": "object", - "additionalProperties": false, - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - } - }, - "required": [ - "Arn" - ], - "markdownDescription": "The AWS Organizations ARN to use in the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "list": { + "permissions": [ + "s3:ListStorageLensConfigurations" + ] }, - "ActivityMetrics": { - "description": "Enables activity metrics.", - "type": "object", + "delete": { + "permissions": [ + "s3:DeleteStorageLensConfiguration", + "s3:DeleteStorageLensConfigurationTagging" + ] + } + }, + "typeName": "AWS::S3::StorageLens", + "readOnlyProperties": [ + "/properties/StorageLensConfiguration/StorageLensArn" + ], + "description": "The AWS::S3::StorageLens resource is an Amazon S3 resource type that you can use to create Storage Lens configurations.", + "createOnlyProperties": [ + "/properties/StorageLensConfiguration/Id" + ], + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/StorageLensConfiguration/Id" + ], + "definitions": { + "PrefixLevel": { + "description": "Prefix-level metrics configurations.", "additionalProperties": false, - "properties": { - "IsEnabled": { - "description": "Specifies whether activity metrics are enabled or disabled.", - "type": "boolean", - "markdownDescription": "Specifies whether activity metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "Enables activity metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AdvancedCostOptimizationMetrics": { - "description": "Enables advanced cost optimization metrics.", "type": "object", - "additionalProperties": false, "properties": { - "IsEnabled": { - "description": "Specifies whether advanced cost optimization metrics are enabled or disabled.", - "type": "boolean", - "markdownDescription": "Specifies whether advanced cost optimization metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "StorageMetrics": { + "$ref": "#/definitions/PrefixLevelStorageMetrics" } }, - "markdownDescription": "Enables advanced cost optimization metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "StorageMetrics" + ], + "markdownDescription": "Prefix-level metrics configurations.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AdvancedDataProtectionMetrics": { - "description": "Enables advanced data protection metrics.", - "type": "object", + "StorageLensConfiguration": { + "description": "Specifies the details of Amazon S3 Storage Lens configuration.", "additionalProperties": false, - "properties": { - "IsEnabled": { - "description": "Specifies whether advanced data protection metrics are enabled or disabled.", - "type": "boolean", - "markdownDescription": "Specifies whether advanced data protection metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "Enables advanced data protection metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "DetailedStatusCodesMetrics": { - "description": "Enables detailed status codes metrics.", "type": "object", - "additionalProperties": false, "properties": { + "AccountLevel": { + "$ref": "#/definitions/AccountLevel" + }, + "Exclude": { + "$ref": "#/definitions/BucketsAndRegions" + }, "IsEnabled": { - "description": "Specifies whether detailed status codes metrics are enabled or disabled.", + "description": "Specifies whether the Amazon S3 Storage Lens configuration is enabled or disabled.", "type": "boolean", - "markdownDescription": "Specifies whether detailed status codes metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "Enables detailed status codes metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SelectionCriteria": { - "description": "Selection criteria for prefix-level metrics.", - "type": "object", - "additionalProperties": false, - "properties": { - "MaxDepth": { - "description": "Max depth of prefixes of S3 key that Amazon S3 Storage Lens will analyze.", - "type": "integer", - "markdownDescription": "Max depth of prefixes of S3 key that Amazon S3 Storage Lens will analyze.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies whether the Amazon S3 Storage Lens configuration is enabled or disabled.\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" }, - "Delimiter": { - "description": "Delimiter to divide S3 key into hierarchy of prefixes.", + "Include": { + "$ref": "#/definitions/BucketsAndRegions" + }, + "AwsOrg": { + "$ref": "#/definitions/AwsOrg" + }, + "Id": { + "$ref": "#/definitions/Id" + }, + "StorageLensArn": { + "description": "The ARN for the Amazon S3 Storage Lens configuration.", "type": "string", - "markdownDescription": "Delimiter to divide S3 key into hierarchy of prefixes.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "The ARN for the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, - "MinStorageBytesPercentage": { - "description": "The minimum storage bytes threshold for the prefixes to be included in the analysis.", - "type": "number", - "markdownDescription": "The minimum storage bytes threshold for the prefixes to be included in the analysis.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + "DataExport": { + "$ref": "#/definitions/DataExport" } }, - "markdownDescription": "Selection criteria for prefix-level metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "Id", + "AccountLevel", + "IsEnabled" + ], + "markdownDescription": "Specifies the details of Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nUpdate requires: Replacement\nRead only property: Yes" + }, + "StorageLensGroupArn": { + "description": "The ARN for the Amazon S3 Storage Lens Group configuration.", + "type": "string", + "markdownDescription": "The ARN for the Amazon S3 Storage Lens Group configuration.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "PrefixLevelStorageMetrics": { - "type": "object", "additionalProperties": false, + "type": "object", "properties": { "IsEnabled": { "description": "Specifies whether prefix-level storage metrics are enabled or disabled.", @@ -147,107 +140,99 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "PrefixLevel": { - "description": "Prefix-level metrics configurations.", - "type": "object", + "AwsOrg": { + "description": "The AWS Organizations ARN to use in the Amazon S3 Storage Lens configuration.", "additionalProperties": false, + "type": "object", "properties": { - "StorageMetrics": { - "$ref": "#/definitions/PrefixLevelStorageMetrics" + "Arn": { + "$ref": "#/definitions/Arn" } }, "required": [ - "StorageMetrics" + "Arn" ], - "markdownDescription": "Prefix-level metrics configurations.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "The AWS Organizations ARN to use in the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "BucketLevel": { - "description": "Bucket-level metrics configurations.", - "type": "object", - "additionalProperties": false, - "properties": { - "ActivityMetrics": { - "$ref": "#/definitions/ActivityMetrics" - }, - "AdvancedCostOptimizationMetrics": { - "$ref": "#/definitions/AdvancedCostOptimizationMetrics" - }, - "AdvancedDataProtectionMetrics": { - "$ref": "#/definitions/AdvancedDataProtectionMetrics" - }, - "DetailedStatusCodesMetrics": { - "$ref": "#/definitions/DetailedStatusCodesMetrics" + "Encryption": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "SSES3": { + "description": "S3 default server-side encryption.", + "additionalProperties": false, + "type": "object" + } + }, + "required": [ + "SSES3" + ] }, - "PrefixLevel": { - "$ref": "#/definitions/PrefixLevel" + { + "additionalProperties": false, + "properties": { + "SSEKMS": { + "$ref": "#/definitions/SSEKMS" + } + }, + "required": [ + "SSEKMS" + ] } - }, - "markdownDescription": "Bucket-level metrics configurations.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "StorageLensGroupArn": { - "description": "The ARN for the Amazon S3 Storage Lens Group configuration.", - "type": "string", - "markdownDescription": "The ARN for the Amazon S3 Storage Lens Group configuration.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - }, - "StorageLensGroupSelectionCriteria": { - "description": "Selection criteria for Storage Lens Group level metrics", + ], + "description": "Configures the server-side encryption for Amazon S3 Storage Lens report files with either S3-managed keys (SSE-S3) or KMS-managed keys (SSE-KMS).", "type": "object", + "markdownDescription": "Configures the server-side encryption for Amazon S3 Storage Lens report files with either S3-managed keys (SSE-S3) or KMS-managed keys (SSE-KMS).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DetailedStatusCodesMetrics": { + "description": "Enables detailed status codes metrics.", "additionalProperties": false, + "type": "object", "properties": { - "Include": { - "type": "array", - "insertionOrder": false, - "uniqueItems": true, - "items": { - "$ref": "#/definitions/StorageLensGroupArn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Exclude": { - "type": "array", - "insertionOrder": false, - "uniqueItems": true, - "items": { - "$ref": "#/definitions/StorageLensGroupArn" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "IsEnabled": { + "description": "Specifies whether detailed status codes metrics are enabled or disabled.", + "type": "boolean", + "markdownDescription": "Specifies whether detailed status codes metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Selection criteria for Storage Lens Group level metrics\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Enables detailed status codes metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "StorageLensGroupLevel": { - "description": "Specifies the details of Amazon S3 Storage Lens Group configuration.", - "type": "object", + "AdvancedDataProtectionMetrics": { + "description": "Enables advanced data protection metrics.", "additionalProperties": false, + "type": "object", "properties": { - "StorageLensGroupSelectionCriteria": { - "$ref": "#/definitions/StorageLensGroupSelectionCriteria" + "IsEnabled": { + "description": "Specifies whether advanced data protection metrics are enabled or disabled.", + "type": "boolean", + "markdownDescription": "Specifies whether advanced data protection metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Specifies the details of Amazon S3 Storage Lens Group configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Enables advanced data protection metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "AccountLevel": { "description": "Account-level metrics configurations.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { + "AdvancedDataProtectionMetrics": { + "$ref": "#/definitions/AdvancedDataProtectionMetrics" + }, + "StorageLensGroupLevel": { + "$ref": "#/definitions/StorageLensGroupLevel" + }, "ActivityMetrics": { "$ref": "#/definitions/ActivityMetrics" }, + "BucketLevel": { + "$ref": "#/definitions/BucketLevel" + }, "AdvancedCostOptimizationMetrics": { "$ref": "#/definitions/AdvancedCostOptimizationMetrics" }, - "AdvancedDataProtectionMetrics": { - "$ref": "#/definitions/AdvancedDataProtectionMetrics" - }, "DetailedStatusCodesMetrics": { "$ref": "#/definitions/DetailedStatusCodesMetrics" - }, - "BucketLevel": { - "$ref": "#/definitions/BucketLevel" - }, - "StorageLensGroupLevel": { - "$ref": "#/definitions/StorageLensGroupLevel" } }, "required": [ @@ -255,57 +240,47 @@ ], "markdownDescription": "Account-level metrics configurations.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SSEKMS": { - "description": "AWS KMS server-side encryption.", - "type": "object", + "StorageLensGroupLevel": { + "description": "Specifies the details of Amazon S3 Storage Lens Group configuration.", "additionalProperties": false, + "type": "object", "properties": { - "KeyId": { - "description": "The ARN of the KMS key to use for encryption.", - "type": "string", - "markdownDescription": "The ARN of the KMS key to use for encryption.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + "StorageLensGroupSelectionCriteria": { + "$ref": "#/definitions/StorageLensGroupSelectionCriteria" } }, - "required": [ - "KeyId" - ], - "markdownDescription": "AWS KMS server-side encryption.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies the details of Amazon S3 Storage Lens Group configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Encryption": { - "description": "Configures the server-side encryption for Amazon S3 Storage Lens report files with either S3-managed keys (SSE-S3) or KMS-managed keys (SSE-KMS).", + "StorageLensGroupSelectionCriteria": { + "description": "Selection criteria for Storage Lens Group level metrics", + "additionalProperties": false, "type": "object", - "oneOf": [ - { - "additionalProperties": false, - "properties": { - "SSES3": { - "description": "S3 default server-side encryption.", - "type": "object", - "additionalProperties": false - } + "properties": { + "Exclude": { + "uniqueItems": true, + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/StorageLensGroupArn" }, - "required": [ - "SSES3" - ] + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - { - "additionalProperties": false, - "properties": { - "SSEKMS": { - "$ref": "#/definitions/SSEKMS" - } + "Include": { + "uniqueItems": true, + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/StorageLensGroupArn" }, - "required": [ - "SSEKMS" - ] + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } - ], - "markdownDescription": "Configures the server-side encryption for Amazon S3 Storage Lens report files with either S3-managed keys (SSE-S3) or KMS-managed keys (SSE-KMS).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "markdownDescription": "Selection criteria for Storage Lens Group level metrics\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "S3BucketDestination": { "description": "S3 bucket destination settings for the Amazon S3 Storage Lens metrics export.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { "OutputSchemaVersion": { "description": "The version of the output schema to use when exporting Amazon S3 Storage Lens metrics.", @@ -329,15 +304,6 @@ "type": "string", "markdownDescription": "The AWS account ID that owns the destination S3 bucket.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, - "Arn": { - "description": "The ARN of the bucket to which Amazon S3 Storage Lens exports will be placed.", - "type": "string", - "relationshipRef": { - "typeName": "AWS::S3::Bucket", - "propertyPath": "/properties/Arn" - }, - "markdownDescription": "The ARN of the bucket to which Amazon S3 Storage Lens exports will be placed.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, "Prefix": { "description": "The prefix to use for Amazon S3 Storage Lens export.", "type": "string", @@ -345,6 +311,11 @@ }, "Encryption": { "$ref": "#/definitions/Encryption" + }, + "Arn": { + "description": "The ARN of the bucket to which Amazon S3 Storage Lens exports will be placed.", + "type": "string", + "markdownDescription": "The ARN of the bucket to which Amazon S3 Storage Lens exports will be placed.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" } }, "required": [ @@ -355,10 +326,46 @@ ], "markdownDescription": "S3 bucket destination settings for the Amazon S3 Storage Lens metrics export.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ActivityMetrics": { + "description": "Enables activity metrics.", + "additionalProperties": false, + "type": "object", + "properties": { + "IsEnabled": { + "description": "Specifies whether activity metrics are enabled or disabled.", + "type": "boolean", + "markdownDescription": "Specifies whether activity metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Enables activity metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SelectionCriteria": { + "description": "Selection criteria for prefix-level metrics.", + "additionalProperties": false, + "type": "object", + "properties": { + "Delimiter": { + "description": "Delimiter to divide S3 key into hierarchy of prefixes.", + "type": "string", + "markdownDescription": "Delimiter to divide S3 key into hierarchy of prefixes.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "MaxDepth": { + "description": "Max depth of prefixes of S3 key that Amazon S3 Storage Lens will analyze.", + "type": "integer", + "markdownDescription": "Max depth of prefixes of S3 key that Amazon S3 Storage Lens will analyze.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "MinStorageBytesPercentage": { + "description": "The minimum storage bytes threshold for the prefixes to be included in the analysis.", + "type": "number", + "markdownDescription": "The minimum storage bytes threshold for the prefixes to be included in the analysis.\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Selection criteria for prefix-level metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "CloudWatchMetrics": { "description": "CloudWatch metrics settings for the Amazon S3 Storage Lens metrics export.", - "type": "object", "additionalProperties": false, + "type": "object", "properties": { "IsEnabled": { "description": "Specifies whether CloudWatch metrics are enabled or disabled.", @@ -371,35 +378,95 @@ ], "markdownDescription": "CloudWatch metrics settings for the Amazon S3 Storage Lens metrics export.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DataExport": { - "description": "Specifies how Amazon S3 Storage Lens metrics should be exported.", + "SSEKMS": { + "description": "AWS KMS server-side encryption.", + "additionalProperties": false, "type": "object", + "properties": { + "KeyId": { + "description": "The ARN of the KMS key to use for encryption.", + "type": "string", + "markdownDescription": "The ARN of the KMS key to use for encryption.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "KeyId" + ], + "markdownDescription": "AWS KMS server-side encryption.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "BucketsAndRegions": { + "description": "S3 buckets and Regions to include/exclude in the Amazon S3 Storage Lens configuration.", "additionalProperties": false, + "type": "object", "properties": { - "S3BucketDestination": { - "$ref": "#/definitions/S3BucketDestination" + "Regions": { + "uniqueItems": true, + "insertionOrder": false, + "type": "array", + "items": { + "description": "An AWS Region.", + "type": "string", + "markdownDescription": "An AWS Region.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "CloudWatchMetrics": { - "$ref": "#/definitions/CloudWatchMetrics" + "Buckets": { + "uniqueItems": true, + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/Arn" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Specifies how Amazon S3 Storage Lens metrics should be exported.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "S3 buckets and Regions to include/exclude in the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Tag": { - "type": "object", + "Id": { + "minLength": 1, + "description": "The ID that identifies the Amazon S3 Storage Lens configuration.", + "type": "string", + "maxLength": 64, + "markdownDescription": "The ID that identifies the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[a-zA-Z0-9\\-_.]+$ \nUpdate requires: No interruption\n" + }, + "BucketLevel": { + "description": "Bucket-level metrics configurations.", "additionalProperties": false, + "type": "object", "properties": { - "Key": { - "type": "string", - "minLength": 1, - "maxLength": 127, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nPattern: ^(?!aws:.*)[a-zA-Z0-9\\s\\_\\.\\/\\=\\+\\-\\@\\:]+$ \nUpdate requires: No interruption\n" + "AdvancedDataProtectionMetrics": { + "$ref": "#/definitions/AdvancedDataProtectionMetrics" + }, + "PrefixLevel": { + "$ref": "#/definitions/PrefixLevel" + }, + "ActivityMetrics": { + "$ref": "#/definitions/ActivityMetrics" }, + "AdvancedCostOptimizationMetrics": { + "$ref": "#/definitions/AdvancedCostOptimizationMetrics" + }, + "DetailedStatusCodesMetrics": { + "$ref": "#/definitions/DetailedStatusCodesMetrics" + } + }, + "markdownDescription": "Bucket-level metrics configurations.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "additionalProperties": false, + "type": "object", + "properties": { "Value": { - "type": "string", "minLength": 1, + "type": "string", "maxLength": 255, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nPattern: ^(?!aws:.*)[a-zA-Z0-9\\s\\_\\.\\/\\=\\+\\-\\@\\:]+$ \nUpdate requires: No interruption\n" + }, + "Key": { + "minLength": 1, + "type": "string", + "maxLength": 127, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 127 \nPattern: ^(?!aws:.*)[a-zA-Z0-9\\s\\_\\.\\/\\=\\+\\-\\@\\:]+$ \nUpdate requires: No interruption\n" } }, "required": [ @@ -408,46 +475,37 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "StorageLensConfiguration": { - "description": "Specifies the details of Amazon S3 Storage Lens configuration.", - "type": "object", + "Arn": { + "description": "The Amazon Resource Name (ARN) of the specified resource.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the specified resource.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "DataExport": { + "description": "Specifies how Amazon S3 Storage Lens metrics should be exported.", "additionalProperties": false, + "type": "object", "properties": { - "Id": { - "$ref": "#/definitions/Id" - }, - "Include": { - "$ref": "#/definitions/BucketsAndRegions" - }, - "Exclude": { - "$ref": "#/definitions/BucketsAndRegions" - }, - "AwsOrg": { - "$ref": "#/definitions/AwsOrg" - }, - "AccountLevel": { - "$ref": "#/definitions/AccountLevel" - }, - "DataExport": { - "$ref": "#/definitions/DataExport" + "S3BucketDestination": { + "$ref": "#/definitions/S3BucketDestination" }, + "CloudWatchMetrics": { + "$ref": "#/definitions/CloudWatchMetrics" + } + }, + "markdownDescription": "Specifies how Amazon S3 Storage Lens metrics should be exported.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AdvancedCostOptimizationMetrics": { + "description": "Enables advanced cost optimization metrics.", + "additionalProperties": false, + "type": "object", + "properties": { "IsEnabled": { - "description": "Specifies whether the Amazon S3 Storage Lens configuration is enabled or disabled.", + "description": "Specifies whether advanced cost optimization metrics are enabled or disabled.", "type": "boolean", - "markdownDescription": "Specifies whether the Amazon S3 Storage Lens configuration is enabled or disabled.\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" - }, - "StorageLensArn": { - "description": "The ARN for the Amazon S3 Storage Lens configuration.", - "type": "string", - "markdownDescription": "The ARN for the Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies whether advanced cost optimization metrics are enabled or disabled.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, - "required": [ - "Id", - "AccountLevel", - "IsEnabled" - ], - "markdownDescription": "Specifies the details of Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nUpdate requires: Replacement\nRead only property: Yes" + "markdownDescription": "Enables advanced cost optimization metrics.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { @@ -455,81 +513,19 @@ "$ref": "#/definitions/StorageLensConfiguration" }, "Tags": { + "maxItems": 50, + "uniqueItems": true, "description": "A set of tags (key-value pairs) for this Amazon S3 Storage Lens configuration.", - "type": "array", "insertionOrder": false, - "uniqueItems": true, + "type": "array", "items": { "$ref": "#/definitions/Tag" }, - "maxItems": 50, "markdownDescription": "A set of tags (key-value pairs) for this Amazon S3 Storage Lens configuration.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "additionalProperties": false, - "tagging": { - "taggable": true, - "tagOnCreate": true, - "tagUpdatable": true, - "cloudFormationSystemTags": false, - "tagProperty": "/properties/Tags" - }, "required": [ "StorageLensConfiguration" ], - "readOnlyProperties": [ - "/properties/StorageLensConfiguration/StorageLensArn" - ], - "createOnlyProperties": [ - "/properties/StorageLensConfiguration/Id" - ], - "primaryIdentifier": [ - "/properties/StorageLensConfiguration/Id" - ], - "handlers": { - "create": { - "permissions": [ - "s3:PutStorageLensConfiguration", - "s3:PutStorageLensConfigurationTagging", - "s3:GetStorageLensConfiguration", - "s3:GetStorageLensConfigurationTagging", - "organizations:DescribeOrganization", - "organizations:ListAccounts", - "organizations:ListAWSServiceAccessForOrganization", - "organizations:ListDelegatedAdministrators", - "iam:CreateServiceLinkedRole" - ] - }, - "read": { - "permissions": [ - "s3:GetStorageLensConfiguration", - "s3:GetStorageLensConfigurationTagging" - ] - }, - "update": { - "permissions": [ - "s3:PutStorageLensConfiguration", - "s3:PutStorageLensConfigurationTagging", - "s3:GetStorageLensConfiguration", - "s3:GetStorageLensConfigurationTagging", - "organizations:DescribeOrganization", - "organizations:ListAccounts", - "organizations:ListAWSServiceAccessForOrganization", - "organizations:ListDelegatedAdministrators", - "iam:CreateServiceLinkedRole" - ] - }, - "delete": { - "permissions": [ - "s3:DeleteStorageLensConfiguration", - "s3:DeleteStorageLensConfigurationTagging" - ] - }, - "list": { - "permissions": [ - "s3:ListStorageLensConfigurations" - ] - } - }, "attributes": {} } \ No newline at end of file diff --git a/server/schema/resources/aws-s3express-accesspoint.json b/server/schema/resources/aws-s3express-accesspoint.json index 22ef0a6c..0af46ad6 100644 --- a/server/schema/resources/aws-s3express-accesspoint.json +++ b/server/schema/resources/aws-s3express-accesspoint.json @@ -84,6 +84,29 @@ } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:.*)([\\p{L}\\p{Z}\\p{N}_.:=+\\/\\-@%]*)$ \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nPattern: ^([\\p{L}\\p{Z}\\p{N}_.:=+\\/\\-@%]*)$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { @@ -143,6 +166,15 @@ "arn:aws:s3express:us-west-2:123456789012:accesspoint/my-accesspoint--usw2-az1--xa-s3" ], "markdownDescription": "The Amazon Resource Name (ARN) of the specified accesspoint.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ @@ -168,14 +200,16 @@ "s3express:PutAccessPointPolicy", "s3express:GetAccessPoint", "s3express:PutAccessPointScope", - "s3express:GetAccessPointScope" + "s3express:GetAccessPointScope", + "s3express:TagResource" ] }, "read": { "permissions": [ "s3express:GetAccessPoint", "s3express:GetAccessPointPolicy", - "s3express:GetAccessPointScope" + "s3express:GetAccessPointScope", + "s3express:ListTagsForResource" ] }, "update": { @@ -183,7 +217,13 @@ "s3express:PutAccessPointPolicy", "s3express:DeleteAccessPointPolicy", "s3express:PutAccessPointScope", - "s3express:DeleteAccessPointScope" + "s3express:DeleteAccessPointScope", + "s3express:TagResource", + "s3express:UntagResource", + "s3express:GetAccessPoint", + "s3express:GetAccessPointPolicy", + "s3express:GetAccessPointScope", + "s3express:ListTagsForResource" ] }, "delete": { @@ -200,7 +240,15 @@ } }, "tagging": { - "taggable": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "s3express:TagResource", + "s3express:UntagResource" + ] }, "additionalProperties": false, "attributes": { diff --git a/server/schema/resources/aws-s3express-directorybucket.json b/server/schema/resources/aws-s3express-directorybucket.json index 258336e5..3f8cd06e 100644 --- a/server/schema/resources/aws-s3express-directorybucket.json +++ b/server/schema/resources/aws-s3express-directorybucket.json @@ -46,6 +46,15 @@ "$ref": "#/definitions/LifecycleConfiguration", "description": "Lifecycle rules that define how Amazon S3 Express manages objects during their lifetime.", "markdownDescription": "Lifecycle rules that define how Amazon S3 Express manages objects during their lifetime.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "definitions": { @@ -210,6 +219,29 @@ "DaysAfterInitiation" ], "markdownDescription": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:.*)([\\p{L}\\p{Z}\\p{N}_.:=+\\/\\-@%]*)$ \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nPattern: ^([\\p{L}\\p{Z}\\p{N}_.:=+\\/\\-@%]*)$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "createOnlyProperties": [ @@ -225,10 +257,15 @@ "/properties/AvailabilityZoneName" ], "tagging": { - "taggable": false, - "tagOnCreate": false, - "tagUpdatable": false, - "cloudFormationSystemTags": false + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "s3express:TagResource", + "s3express:UntagResource" + ] }, "required": [ "LocationName", @@ -242,7 +279,8 @@ "s3express:CreateBucket", "s3express:ListAllMyDirectoryBuckets", "s3express:PutEncryptionConfiguration", - "s3express:PutLifecycleConfiguration" + "s3express:PutLifecycleConfiguration", + "s3express:TagResource" ] }, "read": { @@ -250,7 +288,8 @@ "s3express:ListAllMyDirectoryBuckets", "ec2:DescribeAvailabilityZones", "s3express:GetEncryptionConfiguration", - "s3express:GetLifecycleConfiguration" + "s3express:GetLifecycleConfiguration", + "s3express:ListTagsForResource" ] }, "update": { @@ -258,7 +297,9 @@ "kms:GenerateDataKey", "kms:Decrypt", "s3express:PutEncryptionConfiguration", - "s3express:PutLifecycleConfiguration" + "s3express:PutLifecycleConfiguration", + "s3express:TagResource", + "s3express:UntagResource" ] }, "delete": { diff --git a/server/schema/resources/aws-s3tables-namespace.json b/server/schema/resources/aws-s3tables-namespace.json new file mode 100644 index 00000000..21635d9e --- /dev/null +++ b/server/schema/resources/aws-s3tables-namespace.json @@ -0,0 +1,87 @@ +{ + "typeName": "AWS::S3Tables::Namespace", + "description": "Resource Type definition for AWS::S3Tables::Namespace", + "properties": { + "TableBucketARN": { + "$ref": "#/definitions/TableBucketARN" + }, + "Namespace": { + "$ref": "#/definitions/Namespace" + } + }, + "definitions": { + "TableBucketARN": { + "description": "The Amazon Resource Name (ARN) of the specified table bucket.", + "type": "string", + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket" + ], + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table bucket.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Namespace": { + "description": "A name for the namespace.", + "type": "string", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "A name for the namespace.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "Namespace", + "TableBucketARN" + ], + "createOnlyProperties": [ + "/properties/TableBucketARN", + "/properties/Namespace" + ], + "primaryIdentifier": [ + "/properties/TableBucketARN", + "/properties/Namespace" + ], + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "handlers": { + "create": { + "permissions": [ + "s3tables:CreateNamespace" + ] + }, + "read": { + "permissions": [ + "s3tables:GetNamespace" + ] + }, + "delete": { + "permissions": [ + "s3tables:DeleteNamespace" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "TableBucketARN": { + "description": "The Amazon Resource Name (ARN) of the specified table bucket.", + "type": "string", + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket" + ], + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table bucket.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TableBucketARN" + ] + }, + "permissions": [ + "s3tables:ListNamespaces", + "s3tables:ListTableBuckets" + ] + } + }, + "attributes": {} +} \ No newline at end of file diff --git a/server/schema/resources/aws-s3tables-table.json b/server/schema/resources/aws-s3tables-table.json new file mode 100644 index 00000000..5f81806c --- /dev/null +++ b/server/schema/resources/aws-s3tables-table.json @@ -0,0 +1,307 @@ +{ + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "handlers": { + "read": { + "permissions": [ + "s3tables:GetTable", + "s3tables:GetTableMaintenanceConfiguration" + ] + }, + "create": { + "permissions": [ + "s3tables:CreateTable", + "s3tables:PutTableData", + "s3tables:GetTable", + "s3tables:PutTableMaintenanceConfiguration" + ] + }, + "update": { + "permissions": [ + "s3tables:GetTable", + "s3tables:RenameTable", + "s3tables:PutTableMaintenanceConfiguration" + ] + }, + "list": { + "permissions": [ + "s3tables:ListTables", + "s3tables:ListTableBuckets", + "s3tables:ListNamespaces" + ], + "handlerSchema": { + "properties": { + "TableBucketARN": { + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket" + ], + "description": "The Amazon Resource Name (ARN) of the specified table bucket.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table bucket.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Namespace": { + "description": "The namespace that the table belongs to.", + "type": "string", + "markdownDescription": "The namespace that the table belongs to.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TableBucketARN" + ] + } + }, + "delete": { + "permissions": [ + "s3tables:GetTable", + "s3tables:DeleteTable" + ] + } + }, + "typeName": "AWS::S3Tables::Table", + "readOnlyProperties": [ + "/properties/TableARN", + "/properties/WarehouseLocation", + "/properties/VersionToken" + ], + "description": "Resource Type definition for AWS::S3Tables::Table", + "writeOnlyProperties": [ + "/properties/IcebergMetadata", + "/properties/WithoutMetadata" + ], + "createOnlyProperties": [ + "/properties/TableBucketARN", + "/properties/OpenTableFormat", + "/properties/IcebergMetadata", + "/properties/WithoutMetadata" + ], + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/TableARN" + ], + "definitions": { + "WithoutMetadata": { + "description": "Indicates that you don't want to specify a schema for the table. This property is mutually exclusive to 'IcebergMetadata', and its only possible value is 'Yes'.", + "type": "string", + "enum": [ + "Yes" + ], + "markdownDescription": "Indicates that you don't want to specify a schema for the table. This property is mutually exclusive to 'IcebergMetadata', and its only possible value is 'Yes'.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Yes \nUpdate requires: No interruption\n" + }, + "Compaction": { + "description": "Settings governing the Compaction maintenance action. Contains details about the compaction settings for an Iceberg table.", + "additionalProperties": false, + "type": "object", + "properties": { + "Status": { + "description": "Indicates whether the Compaction maintenance action is enabled.", + "type": "string", + "enum": [ + "enabled", + "disabled" + ], + "markdownDescription": "Indicates whether the Compaction maintenance action is enabled.\n\n---\n\nRequired: No \nType: String \nAllowed Values: enabled | disabled \nUpdate requires: No interruption\n" + }, + "TargetFileSizeMB": { + "description": "The target file size for the table in MB.", + "type": "integer", + "minimum": 64, + "markdownDescription": "The target file size for the table in MB.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Settings governing the Compaction maintenance action. Contains details about the compaction settings for an Iceberg table.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Namespace": { + "description": "The namespace that the table belongs to.", + "type": "string", + "markdownDescription": "The namespace that the table belongs to.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "SchemaField": { + "description": "Contains details about the schema for an Iceberg table", + "additionalProperties": false, + "type": "object", + "properties": { + "Type": { + "description": "The field type", + "type": "string", + "markdownDescription": "The field type\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Required": { + "description": "A Boolean value that specifies whether values are required for each row in this field", + "type": "boolean", + "markdownDescription": "A Boolean value that specifies whether values are required for each row in this field\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "Name": { + "description": "The name of the field", + "type": "string", + "markdownDescription": "The name of the field\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Name", + "Type" + ], + "markdownDescription": "Contains details about the schema for an Iceberg table\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TableName": { + "description": "The name for the table.", + "type": "string", + "markdownDescription": "The name for the table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableBucketARN": { + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket" + ], + "description": "The Amazon Resource Name (ARN) of the specified table bucket.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table bucket.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "IcebergSchema": { + "description": "Contains details about the schema for an Iceberg table", + "additionalProperties": false, + "type": "object", + "properties": { + "SchemaFieldList": { + "$ref": "#/definitions/SchemaFieldList" + } + }, + "required": [ + "SchemaFieldList" + ], + "markdownDescription": "Contains details about the schema for an Iceberg table\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SchemaFieldList": { + "description": "Contains details about the schema for an Iceberg table", + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/SchemaField" + }, + "markdownDescription": "Contains details about the schema for an Iceberg table\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "VersionToken": { + "description": "The version token of the table", + "type": "string", + "markdownDescription": "The version token of the table\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableARN": { + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket/table/813aadd1-a378-4d0f-8467-e3247306f309" + ], + "description": "The Amazon Resource Name (ARN) of the specified table.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "OpenTableFormat": { + "description": "Format of the table.", + "type": "string", + "enum": [ + "ICEBERG" + ], + "markdownDescription": "Format of the table.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ICEBERG \nUpdate requires: No interruption\n" + }, + "IcebergMetadata": { + "description": "Contains details about the metadata for an Iceberg table.", + "additionalProperties": false, + "type": "object", + "properties": { + "IcebergSchema": { + "$ref": "#/definitions/IcebergSchema" + } + }, + "required": [ + "IcebergSchema" + ], + "markdownDescription": "Contains details about the metadata for an Iceberg table.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "WarehouseLocation": { + "description": "The warehouse location of the table.", + "type": "string", + "markdownDescription": "The warehouse location of the table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "SnapshotManagement": { + "description": "Contains details about the snapshot management settings for an Iceberg table. A snapshot is expired when it exceeds MinSnapshotsToKeep and MaxSnapshotAgeHours.", + "additionalProperties": false, + "type": "object", + "properties": { + "Status": { + "description": "Indicates whether the SnapshotManagement maintenance action is enabled.", + "type": "string", + "enum": [ + "enabled", + "disabled" + ], + "markdownDescription": "Indicates whether the SnapshotManagement maintenance action is enabled.\n\n---\n\nRequired: No \nType: String \nAllowed Values: enabled | disabled \nUpdate requires: No interruption\n" + }, + "MinSnapshotsToKeep": { + "description": "The minimum number of snapshots to keep.", + "type": "integer", + "minimum": 1, + "markdownDescription": "The minimum number of snapshots to keep.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "MaxSnapshotAgeHours": { + "description": "The maximum age of a snapshot before it can be expired.", + "type": "integer", + "minimum": 1, + "markdownDescription": "The maximum age of a snapshot before it can be expired.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Contains details about the snapshot management settings for an Iceberg table. A snapshot is expired when it exceeds MinSnapshotsToKeep and MaxSnapshotAgeHours.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TableBucketARN", + "Namespace", + "TableName", + "OpenTableFormat" + ], + "properties": { + "WithoutMetadata": { + "$ref": "#/definitions/WithoutMetadata" + }, + "Compaction": { + "$ref": "#/definitions/Compaction" + }, + "Namespace": { + "$ref": "#/definitions/Namespace" + }, + "TableName": { + "$ref": "#/definitions/TableName" + }, + "TableBucketARN": { + "$ref": "#/definitions/TableBucketARN" + }, + "VersionToken": { + "$ref": "#/definitions/VersionToken" + }, + "TableARN": { + "$ref": "#/definitions/TableARN" + }, + "OpenTableFormat": { + "$ref": "#/definitions/OpenTableFormat" + }, + "IcebergMetadata": { + "$ref": "#/definitions/IcebergMetadata" + }, + "WarehouseLocation": { + "$ref": "#/definitions/WarehouseLocation" + }, + "SnapshotManagement": { + "$ref": "#/definitions/SnapshotManagement" + } + }, + "attributes": { + "VersionToken": { + "$ref": "#/definitions/VersionToken" + }, + "TableARN": { + "$ref": "#/definitions/TableARN" + }, + "WarehouseLocation": { + "$ref": "#/definitions/WarehouseLocation" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-s3tables-tablepolicy.json b/server/schema/resources/aws-s3tables-tablepolicy.json new file mode 100644 index 00000000..dfe2d4f0 --- /dev/null +++ b/server/schema/resources/aws-s3tables-tablepolicy.json @@ -0,0 +1,145 @@ +{ + "typeName": "AWS::S3Tables::TablePolicy", + "description": "Resource Type definition for AWS::S3Tables::TablePolicy", + "properties": { + "ResourcePolicy": { + "$ref": "#/definitions/ResourcePolicy" + }, + "TableName": { + "$ref": "#/definitions/TableName" + }, + "TableBucketARN": { + "$ref": "#/definitions/TableBucketARN" + }, + "TableARN": { + "$ref": "#/definitions/TableARN" + }, + "Namespace": { + "$ref": "#/definitions/Namespace" + } + }, + "definitions": { + "ResourcePolicy": { + "description": "A policy document containing permissions to add to the specified table. In IAM, you must provide policy documents in JSON format. However, in CloudFormation you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to IAM.", + "type": [ + "object", + "string" + ], + "markdownDescription": "A policy document containing permissions to add to the specified table. In IAM, you must provide policy documents in JSON format. However, in CloudFormation you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to IAM.\n\n---\n\nRequired: No \nType: ['object', 'string'] \nUpdate requires: No interruption\n" + }, + "TableName": { + "description": "The name for the table.", + "type": "string", + "markdownDescription": "The name for the table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableBucketARN": { + "description": "The Amazon Resource Name (ARN) of the specified table bucket.", + "type": "string", + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket" + ], + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table bucket.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableARN": { + "description": "The Amazon Resource Name (ARN) of the specified table.", + "type": "string", + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket/table/813aadd1-a378-4d0f-8467-e3247306f309" + ], + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Namespace": { + "description": "The namespace that the table belongs to.", + "type": "string", + "markdownDescription": "The namespace that the table belongs to.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "TableARN", + "ResourcePolicy" + ], + "createOnlyProperties": [ + "/properties/TableARN" + ], + "primaryIdentifier": [ + "/properties/TableARN" + ], + "readOnlyProperties": [ + "/properties/TableBucketARN", + "/properties/Namespace", + "/properties/TableName" + ], + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "handlers": { + "create": { + "permissions": [ + "s3tables:GetTablePolicy", + "s3tables:PutTablePolicy", + "s3tables:GetTable" + ] + }, + "read": { + "permissions": [ + "s3tables:GetTable", + "s3tables:GetTablePolicy" + ] + }, + "update": { + "permissions": [ + "s3tables:GetTablePolicy", + "s3tables:PutTablePolicy", + "s3tables:GetTable" + ] + }, + "delete": { + "permissions": [ + "s3tables:GetTablePolicy", + "s3tables:DeleteTablePolicy", + "s3tables:GetTable" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "Namespace": { + "description": "The namespace that the table belongs to.", + "type": "string", + "markdownDescription": "The namespace that the table belongs to.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "TableBucketARN": { + "description": "The Amazon Resource Name (ARN) of the specified table bucket.", + "type": "string", + "examples": [ + "arn:aws:s3tables:us-west-2:123456789012:bucket/mytablebucket" + ], + "markdownDescription": "The Amazon Resource Name (ARN) of the specified table bucket.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TableBucketARN" + ] + }, + "permissions": [ + "s3tables:ListTables", + "s3tables:GetTablePolicy" + ] + } + }, + "attributes": { + "TableName": { + "$ref": "#/definitions/TableName" + }, + "TableBucketARN": { + "$ref": "#/definitions/TableBucketARN" + }, + "Namespace": { + "$ref": "#/definitions/Namespace" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-sagemaker-app.json b/server/schema/resources/aws-sagemaker-app.json index 912e65fd..a9e48e25 100644 --- a/server/schema/resources/aws-sagemaker-app.json +++ b/server/schema/resources/aws-sagemaker-app.json @@ -50,7 +50,7 @@ "items": { "$ref": "#/definitions/Tag" }, - "markdownDescription": "A list of tags to apply to the app.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + "markdownDescription": "A list of tags to apply to the app.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "UserProfileName": { "type": "string", @@ -204,7 +204,6 @@ "/properties/AppType", "/properties/DomainId", "/properties/UserProfileName", - "/properties/Tags", "/properties/ResourceSpec" ], "primaryIdentifier": [ @@ -233,6 +232,14 @@ "sagemaker:ListTags" ] }, + "update": { + "permissions": [ + "sagemaker:DescribeApp", + "sagemaker:AddTags", + "sagemaker:DeleteTags", + "sagemaker:ListTags" + ] + }, "delete": { "permissions": [ "sagemaker:DeleteApp", @@ -251,7 +258,7 @@ "tagging": { "taggable": true, "tagOnCreate": true, - "tagUpdatable": false, + "tagUpdatable": true, "cloudFormationSystemTags": false, "tagProperty": "/properties/Tags", "permissions": [ diff --git a/server/schema/resources/aws-sagemaker-appimageconfig.json b/server/schema/resources/aws-sagemaker-appimageconfig.json index 6738769c..d340a5c0 100644 --- a/server/schema/resources/aws-sagemaker-appimageconfig.json +++ b/server/schema/resources/aws-sagemaker-appimageconfig.json @@ -41,7 +41,7 @@ }, "minItems": 0, "maxItems": 50, - "markdownDescription": "A list of tags to apply to the AppImageConfig.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + "markdownDescription": "A list of tags to apply to the AppImageConfig.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "definitions": { @@ -256,11 +256,7 @@ "AppImageConfigName" ], "createOnlyProperties": [ - "/properties/AppImageConfigName", - "/properties/Tags" - ], - "writeOnlyProperties": [ - "/properties/Tags" + "/properties/AppImageConfigName" ], "readOnlyProperties": [ "/properties/AppImageConfigArn" @@ -272,32 +268,55 @@ "create": { "permissions": [ "sagemaker:CreateAppImageConfig", - "sagemaker:DescribeAppImageConfig" + "sagemaker:DescribeAppImageConfig", + "sagemaker:AddTags", + "sagemaker:ListTags" ] }, "read": { "permissions": [ - "sagemaker:DescribeAppImageConfig" + "sagemaker:DescribeAppImageConfig", + "sagemaker:ListTags" ] }, "update": { "permissions": [ "sagemaker:UpdateAppImageConfig", - "sagemaker:DescribeAppImageConfig" + "sagemaker:DescribeAppImageConfig", + "sagemaker:AddTags", + "sagemaker:DeleteTags", + "sagemaker:ListTags" ] }, "delete": { "permissions": [ "sagemaker:DeleteAppImageConfig", - "sagemaker:DescribeAppImageConfig" + "sagemaker:DescribeAppImageConfig", + "sagemaker:DeleteTags" ] }, "list": { "permissions": [ - "sagemaker:ListAppImageConfigs" + "sagemaker:ListAppImageConfigs", + "sagemaker:ListTags" ] } }, + "propertyTransform": { + "/properties/AppImageConfigName": "$lowercase(AppImageConfigName) $OR AppImageConfigName" + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "sagemaker:AddTags", + "sagemaker:ListTags", + "sagemaker:DeleteTags" + ] + }, "attributes": { "AppImageConfigArn": { "type": "string", diff --git a/server/schema/resources/aws-sagemaker-cluster.json b/server/schema/resources/aws-sagemaker-cluster.json index 8c0d79ed..c6d35bc6 100644 --- a/server/schema/resources/aws-sagemaker-cluster.json +++ b/server/schema/resources/aws-sagemaker-cluster.json @@ -24,6 +24,8 @@ "sagemaker:DescribeCluster", "sagemaker:AddTags", "sagemaker:ListTags", + "sagemaker:BatchAddClusterNodes", + "sagemaker:BatchDeleteClusterNodes", "eks:DescribeAccessEntry", "eks:DescribeCluster", "eks:CreateAccessEntry", @@ -37,15 +39,20 @@ "update": { "permissions": [ "sagemaker:UpdateCluster", + "sagemaker:UpdateClusterSoftware", "sagemaker:DescribeCluster", "sagemaker:ListTags", "sagemaker:AddTags", "sagemaker:DeleteTags", + "sagemaker:BatchAddClusterNodes", + "sagemaker:BatchDeleteClusterNodes", "eks:DescribeAccessEntry", "eks:DescribeCluster", "eks:CreateAccessEntry", "eks:DeleteAccessEntry", - "iam:PassRole" + "iam:PassRole", + "sagemaker:BatchAddClusterNodes", + "sagemaker:BatchDeleteClusterNodes" ], "timeoutInMinutes": 720 }, @@ -70,7 +77,8 @@ "/properties/CreationTime", "/properties/ClusterStatus", "/properties/FailureMessage", - "/properties/InstanceGroups/*/CurrentCount" + "/properties/InstanceGroups/*/CurrentCount", + "/properties/RestrictedInstanceGroups/*/CurrentCount" ], "description": "Resource Type definition for AWS::SageMaker::Cluster", "additionalIdentifiers": [ @@ -86,7 +94,12 @@ "/properties/InstanceGroups/*/ExecutionRole", "/properties/InstanceGroups/*/InstanceGroupName", "/properties/InstanceGroups/*/InstanceType", - "/properties/InstanceGroups/*/ThreadsPerCore" + "/properties/InstanceGroups/*/ThreadsPerCore", + "/properties/RestrictedInstanceGroups/*/OverrideVpcConfig", + "/properties/RestrictedInstanceGroups/*/ExecutionRole", + "/properties/RestrictedInstanceGroups/*/InstanceGroupName", + "/properties/RestrictedInstanceGroups/*/InstanceType", + "/properties/RestrictedInstanceGroups/*/ThreadsPerCore" ], "additionalProperties": false, "primaryIdentifier": [ @@ -172,6 +185,17 @@ ], "markdownDescription": "Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, hosted models, and compute resources have access to. You can control access to and from your resources by configuring a VPC.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "EnvironmentConfig": { + "description": "The configuration for the restricted instance groups (RIG) environment.", + "additionalProperties": false, + "type": "object", + "properties": { + "FSxLustreConfig": { + "$ref": "#/definitions/FSxLustreConfig" + } + }, + "markdownDescription": "The configuration for the restricted instance groups (RIG) environment.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "InstanceGroupName": { "minLength": 1, "description": "The name of the instance group of a SageMaker HyperPod cluster.", @@ -189,6 +213,16 @@ }, "markdownDescription": "The instance groups of the SageMaker HyperPod cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\nRead only property: Yes" }, + "ClusterRestrictedInstanceGroupsList": { + "minItems": 1, + "description": "The restricted instance groups of the SageMaker HyperPod cluster.", + "insertionOrder": false, + "type": "array", + "items": { + "$ref": "#/definitions/ClusterRestrictedInstanceGroup" + }, + "markdownDescription": "The restricted instance groups of the SageMaker HyperPod cluster.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\nRead only property: Yes" + }, "Orchestrator": { "description": "Specifies parameter(s) specific to the orchestrator, e.g. specify the EKS cluster.", "additionalProperties": false, @@ -218,6 +252,68 @@ }, "markdownDescription": "Defines the configuration for attaching additional Amazon Elastic Block Store (EBS) volumes to the instances in the SageMaker HyperPod cluster instance group. The additional EBS volume is attached to each instance within the SageMaker HyperPod cluster instance group and mounted to /opt/sagemaker.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "ClusterRestrictedInstanceGroup": { + "description": "Details of a restricted instance group in a SageMaker HyperPod cluster.", + "additionalProperties": false, + "type": "object", + "properties": { + "OverrideVpcConfig": { + "$ref": "#/definitions/VpcConfig" + }, + "InstanceCount": { + "description": "The number of instances you specified to add to the restricted instance group of a SageMaker HyperPod cluster.", + "type": "integer", + "minimum": 0, + "markdownDescription": "The number of instances you specified to add to the restricted instance group of a SageMaker HyperPod cluster.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + }, + "OnStartDeepHealthChecks": { + "$ref": "#/definitions/OnStartDeepHealthChecks" + }, + "EnvironmentConfig": { + "$ref": "#/definitions/EnvironmentConfig" + }, + "InstanceGroupName": { + "$ref": "#/definitions/InstanceGroupName" + }, + "InstanceStorageConfigs": { + "$ref": "#/definitions/ClusterInstanceStorageConfigs" + }, + "CurrentCount": { + "description": "The number of instances that are currently in the restricted instance group of a SageMaker HyperPod cluster.", + "type": "integer", + "minimum": 0, + "markdownDescription": "The number of instances that are currently in the restricted instance group of a SageMaker HyperPod cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "TrainingPlanArn": { + "minLength": 50, + "description": "The Amazon Resource Name (ARN) of the training plan to use for this cluster restricted instance group. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan.", + "type": "string", + "maxLength": 2048, + "markdownDescription": "The Amazon Resource Name (ARN) of the training plan to use for this cluster restricted instance group. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 50 \nMaximum Length: 2048 \nPattern: ^arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:training-plan/.*$ \nUpdate requires: No interruption\n" + }, + "InstanceType": { + "$ref": "#/definitions/InstanceType" + }, + "ThreadsPerCore": { + "description": "The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading.", + "maximum": 2, + "type": "integer", + "minimum": 1, + "markdownDescription": "The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "ExecutionRole": { + "$ref": "#/definitions/ExecutionRole" + } + }, + "required": [ + "ExecutionRole", + "InstanceCount", + "InstanceGroupName", + "InstanceType", + "EnvironmentConfig" + ], + "markdownDescription": "Details of a restricted instance group in a SageMaker HyperPod cluster.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "ClusterLifeCycleConfig": { "description": "The lifecycle configuration for a SageMaker HyperPod cluster.", "additionalProperties": false, @@ -252,11 +348,41 @@ }, "markdownDescription": "Nodes will undergo advanced stress test to detect and replace faulty instances, based on the type of deep health check(s) passed in.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, + "ImageId": { + "minLength": 12, + "description": "AMI Id to be used for launching EC2 instances - HyperPodPublicAmiId or CustomAmiId", + "type": "string", + "maxLength": 21, + "markdownDescription": "AMI Id to be used for launching EC2 instances - HyperPodPublicAmiId or CustomAmiId\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 21 \nPattern: ^ami-[0-9a-fA-F]{8,17}|default$ \nUpdate requires: No interruption\n" + }, "ClusterInstanceGroup": { "description": "Details of an instance group in a SageMaker HyperPod cluster.", "additionalProperties": false, "type": "object", "properties": { + "InstanceGroupName": { + "$ref": "#/definitions/InstanceGroupName" + }, + "InstanceStorageConfigs": { + "$ref": "#/definitions/ClusterInstanceStorageConfigs" + }, + "LifeCycleConfig": { + "$ref": "#/definitions/ClusterLifeCycleConfig" + }, + "TrainingPlanArn": { + "minLength": 50, + "description": "The Amazon Resource Name (ARN) of the training plan to use for this cluster instance group. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan.", + "type": "string", + "maxLength": 2048, + "markdownDescription": "The Amazon Resource Name (ARN) of the training plan to use for this cluster instance group. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 50 \nMaximum Length: 2048 \nPattern: ^arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:training-plan/.*$ \nUpdate requires: No interruption\n" + }, + "ThreadsPerCore": { + "description": "The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading.", + "maximum": 2, + "type": "integer", + "minimum": 1, + "markdownDescription": "The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, "OverrideVpcConfig": { "$ref": "#/definitions/VpcConfig" }, @@ -269,11 +395,8 @@ "OnStartDeepHealthChecks": { "$ref": "#/definitions/OnStartDeepHealthChecks" }, - "InstanceGroupName": { - "$ref": "#/definitions/InstanceGroupName" - }, - "InstanceStorageConfigs": { - "$ref": "#/definitions/ClusterInstanceStorageConfigs" + "ImageId": { + "$ref": "#/definitions/ImageId" }, "CurrentCount": { "description": "The number of instances that are currently in the instance group of a SageMaker HyperPod cluster.", @@ -281,19 +404,9 @@ "minimum": 0, "markdownDescription": "The number of instances that are currently in the instance group of a SageMaker HyperPod cluster.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "LifeCycleConfig": { - "$ref": "#/definitions/ClusterLifeCycleConfig" - }, "InstanceType": { "$ref": "#/definitions/InstanceType" }, - "ThreadsPerCore": { - "description": "The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading.", - "maximum": 2, - "type": "integer", - "minimum": 1, - "markdownDescription": "The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, "ExecutionRole": { "$ref": "#/definitions/ExecutionRole" } @@ -354,11 +467,35 @@ "type": "string", "maxLength": 2048, "markdownDescription": "The execution role for the instance group to assume.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$ \nUpdate requires: No interruption\n" + }, + "FSxLustreConfig": { + "description": "Configuration settings for an Amazon FSx for Lustre file system to be used with the cluster.", + "additionalProperties": false, + "type": "object", + "properties": { + "SizeInGiB": { + "description": "The storage capacity of the FSx for Lustre file system, specified in gibibytes (GiB).", + "maximum": 100800, + "type": "integer", + "minimum": 1200, + "markdownDescription": "The storage capacity of the FSx for Lustre file system, specified in gibibytes (GiB).\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + }, + "PerUnitStorageThroughput": { + "description": "The throughput capacity of the FSx for Lustre file system, measured in MB/s per TiB of storage.", + "maximum": 1000, + "type": "integer", + "minimum": 125, + "markdownDescription": "The throughput capacity of the FSx for Lustre file system, measured in MB/s per TiB of storage.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "SizeInGiB", + "PerUnitStorageThroughput" + ], + "markdownDescription": "Configuration settings for an Amazon FSx for Lustre file system to be used with the cluster.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, - "required": [ - "InstanceGroups" - ], + "required": [], "properties": { "ClusterArn": { "description": "The Amazon Resource Name (ARN) of the HyperPod Cluster.", @@ -378,6 +515,14 @@ ], "markdownDescription": "If node auto-recovery is set to true, faulty nodes will be replaced or rebooted when a failure is detected. If set to false, nodes will be labelled when a fault is detected.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Automatic | None \nUpdate requires: No interruption\n" }, + "NodeProvisioningMode": { + "description": "Determines the scaling strategy for the SageMaker HyperPod cluster. When set to 'Continuous', enables continuous scaling which dynamically manages node provisioning. If the parameter is omitted, uses the standard scaling approach in previous release.", + "type": "string", + "enum": [ + "Continuous" + ], + "markdownDescription": "Determines the scaling strategy for the SageMaker HyperPod cluster. When set to 'Continuous', enables continuous scaling which dynamically manages node provisioning. If the parameter is omitted, uses the standard scaling approach in previous release.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Continuous \nUpdate requires: No interruption\n" + }, "CreationTime": { "description": "The time at which the HyperPod cluster was created.", "type": "string", @@ -393,6 +538,9 @@ "maxLength": 63, "markdownDescription": "The name of the HyperPod Cluster.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 63 \nPattern: ^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}$ \nUpdate requires: Replacement\n" }, + "RestrictedInstanceGroups": { + "$ref": "#/definitions/ClusterRestrictedInstanceGroupsList" + }, "FailureMessage": { "description": "The failure message of the HyperPod Cluster.", "type": "string", diff --git a/server/schema/resources/aws-sagemaker-domain.json b/server/schema/resources/aws-sagemaker-domain.json index 16ecb23a..11f56f38 100644 --- a/server/schema/resources/aws-sagemaker-domain.json +++ b/server/schema/resources/aws-sagemaker-domain.json @@ -67,7 +67,7 @@ "maxLength": 32, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 32 \nPattern: [-0-9a-zA-Z]+ \nUpdate requires: No interruption\n" }, - "markdownDescription": "The VPC subnets that Studio uses for communication.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "The VPC subnets that Studio uses for communication.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, "Tags": { "type": "array", @@ -85,7 +85,7 @@ "type": "string", "description": "The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.", "maxLength": 32, - "markdownDescription": "The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 32 \nPattern: [-0-9a-zA-Z]+ \nUpdate requires: Replacement\n" + "markdownDescription": "The ID of the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 32 \nPattern: [-0-9a-zA-Z]+ \nUpdate requires: Replacement\n" }, "DomainId": { "type": "string", @@ -713,6 +713,9 @@ }, "FSxLustreFileSystemConfig": { "$ref": "#/definitions/FSxLustreFileSystemConfig" + }, + "S3FileSystemConfig": { + "$ref": "#/definitions/S3FileSystemConfig" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -761,6 +764,25 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "S3FileSystemConfig": { + "type": "object", + "additionalProperties": false, + "properties": { + "MountPath": { + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "S3Uri": { + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: (s3)://([^/]+)/?(.*) \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "CustomImage": { "type": "object", "description": "A custom SageMaker image.", @@ -876,6 +898,9 @@ "DISABLED" ], "markdownDescription": "The configuration for attaching a SageMaker user profile name to the execution role as a sts:SourceIdentity key.\n\n---\n\nRequired: No \nType: String \nAllowed Values: USER_PROFILE_NAME | DISABLED \nUpdate requires: No interruption\n" + }, + "UnifiedStudioSettings": { + "$ref": "#/definitions/UnifiedStudioSettings" } }, "markdownDescription": "A collection of Domain settings.\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" @@ -912,6 +937,61 @@ }, "markdownDescription": "A collection of settings that are required to start docker-proxy server.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "UnifiedStudioSettings": { + "type": "object", + "description": "A collection of settings that apply to an Amazon SageMaker AI domain when you use it in Amazon SageMaker Unified Studio.", + "additionalProperties": false, + "properties": { + "StudioWebPortalAccess": { + "type": "string", + "description": "Sets whether you can access the domain in Amazon SageMaker Studio:\n\nENABLED\nYou can access the domain in Amazon SageMaker Studio. If you migrate the domain to Amazon SageMaker Unified Studio, you can access it in both studio interfaces.\nDISABLED\nYou can't access the domain in Amazon SageMaker Studio. If you migrate the domain to Amazon SageMaker Unified Studio, you can access it only in that studio interface.\n", + "enum": [ + "ENABLED", + "DISABLED" + ], + "markdownDescription": "Sets whether you can access the domain in Amazon SageMaker Studio:\n\nENABLED\nYou can access the domain in Amazon SageMaker Studio. If you migrate the domain to Amazon SageMaker Unified Studio, you can access it in both studio interfaces.\nDISABLED\nYou can't access the domain in Amazon SageMaker Studio. If you migrate the domain to Amazon SageMaker Unified Studio, you can access it only in that studio interface.\n\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, + "DomainAccountId": { + "type": "string", + "description": "The ID of the AWS account that has the Amazon SageMaker Unified Studio domain. The default value, if you don't specify an ID, is the ID of the account that has the Amazon SageMaker AI domain.", + "minLength": 12, + "maxLength": 12, + "markdownDescription": "The ID of the AWS account that has the Amazon SageMaker Unified Studio domain. The default value, if you don't specify an ID, is the ID of the account that has the Amazon SageMaker AI domain.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 12 \nMaximum Length: 12 \nPattern: ^\\d+$ \nUpdate requires: No interruption\n" + }, + "DomainRegion": { + "type": "string", + "description": "The AWS Region where the domain is located in Amazon SageMaker Unified Studio. The default value, if you don't specify a Region, is the Region where the Amazon SageMaker AI domain is located.", + "markdownDescription": "The AWS Region where the domain is located in Amazon SageMaker Unified Studio. The default value, if you don't specify a Region, is the Region where the Amazon SageMaker AI domain is located.\n\n---\n\nRequired: No \nType: String \nPattern: [a-zA-Z]{2}-[a-zA-Z\\-]+-\\d+ \nUpdate requires: No interruption\n" + }, + "DomainId": { + "type": "string", + "description": "The ID of the Amazon SageMaker Unified Studio domain associated with this domain.", + "minLength": 1, + "maxLength": 36, + "markdownDescription": "The ID of the Amazon SageMaker Unified Studio domain associated with this domain.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 36 \nPattern: ^dzd[-_][a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\n" + }, + "ProjectId": { + "type": "string", + "description": "The ID of the Amazon SageMaker Unified Studio project that corresponds to the domain.", + "markdownDescription": "The ID of the Amazon SageMaker Unified Studio project that corresponds to the domain.\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\n" + }, + "EnvironmentId": { + "type": "string", + "description": "The ID of the environment that Amazon SageMaker Unified Studio associates with the domain.", + "minLength": 1, + "maxLength": 36, + "markdownDescription": "The ID of the environment that Amazon SageMaker Unified Studio associates with the domain.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 36 \nPattern: ^[a-zA-Z0-9_-]{1,36}$ \nUpdate requires: No interruption\n" + }, + "ProjectS3Path": { + "type": "string", + "description": "The location where Amazon S3 stores temporary execution data and other artifacts for the project that corresponds to the domain.", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "The location where Amazon S3 stores temporary execution data and other artifacts for the project that corresponds to the domain.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: [\\w\\.-]+$ \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "A collection of settings that apply to an Amazon SageMaker AI domain when you use it in Amazon SageMaker Unified Studio.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "RStudioServerProDomainSettings": { "type": "object", "description": "A collection of settings that update the current configuration for the RStudioServerPro Domain-level app.", @@ -1284,9 +1364,7 @@ "required": [ "AuthMode", "DefaultUserSettings", - "DomainName", - "SubnetIds", - "VpcId" + "DomainName" ], "createOnlyProperties": [ "/properties/AuthMode", diff --git a/server/schema/resources/aws-sagemaker-processingjob.json b/server/schema/resources/aws-sagemaker-processingjob.json new file mode 100644 index 00000000..7dfd547f --- /dev/null +++ b/server/schema/resources/aws-sagemaker-processingjob.json @@ -0,0 +1,1055 @@ +{ + "typeName": "AWS::SageMaker::ProcessingJob", + "description": "Resource Type definition for AWS::SageMaker::ProcessingJob", + "definitions": { + "AppSpecification": { + "description": "Configures the processing job to run a specified Docker container image.", + "type": "object", + "additionalProperties": false, + "properties": { + "ContainerArguments": { + "description": "The arguments for a container used to run a processing job.", + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "minItems": 1, + "maxItems": 100, + "items": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The arguments for a container used to run a processing job.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ContainerEntrypoint": { + "description": "The entrypoint for a container used to run a processing job.", + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "minItems": 1, + "maxItems": 100, + "items": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The entrypoint for a container used to run a processing job.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ImageUri": { + "description": "The container image to be run by the processing job.", + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The container image to be run by the processing job.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nPattern: .* \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ImageUri" + ], + "markdownDescription": "Configures the processing job to run a specified Docker container image.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Environment": { + "type": "object", + "description": "Sets the environment variables in the Docker container", + "patternProperties": { + "[a-zA-Z_][a-zA-Z0-9_]*": { + "type": "string", + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "[\\S\\s]*": { + "type": "string", + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "Sets the environment variables in the Docker container\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ExperimentConfig": { + "type": "object", + "description": "Associates a SageMaker job as a trial component with an experiment and trial.", + "additionalProperties": false, + "properties": { + "ExperimentName": { + "description": "The name of an existing experiment to associate with the trial component.", + "type": "string", + "maxLength": 120, + "markdownDescription": "The name of an existing experiment to associate with the trial component.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 120 \nPattern: [a-zA-Z0-9](-*[a-zA-Z0-9]){0,119} \nUpdate requires: No interruption\n" + }, + "TrialName": { + "description": "The name of an existing trial to associate the trial component with. If not specified, a new trial is created.", + "type": "string", + "maxLength": 120, + "markdownDescription": "The name of an existing trial to associate the trial component with. If not specified, a new trial is created.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 120 \nPattern: [a-zA-Z0-9](-*[a-zA-Z0-9]){0,119} \nUpdate requires: No interruption\n" + }, + "TrialComponentDisplayName": { + "description": "The display name for the trial component. If this key isn't specified, the display name is the trial component name.", + "type": "string", + "maxLength": 120, + "markdownDescription": "The display name for the trial component. If this key isn't specified, the display name is the trial component name.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 120 \nPattern: [a-zA-Z0-9](-*[a-zA-Z0-9]){0,119} \nUpdate requires: No interruption\n" + }, + "RunName": { + "description": "The name of the experiment run to associate with the trial component.", + "type": "string", + "maxLength": 120, + "markdownDescription": "The name of the experiment run to associate with the trial component.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 120 \nPattern: [a-zA-Z0-9](-*[a-zA-Z0-9]){0,119} \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Associates a SageMaker job as a trial component with an experiment and trial.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "VpcConfig": { + "description": "Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, hosted models, and compute resources have access to. You can control access to and from your resources by configuring a VPC. For more information, see https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html", + "type": "object", + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "description": "The VPC security group IDs, in the form 'sg-xxxxxxxx'. Specify the security groups for the VPC that is specified in the 'Subnets' field.", + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "minItems": 1, + "maxItems": 5, + "items": { + "type": "string", + "minLength": 0, + "maxLength": 32, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 32 \nPattern: [-0-9a-zA-Z]+ \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The VPC security group IDs, in the form 'sg-xxxxxxxx'. Specify the security groups for the VPC that is specified in the 'Subnets' field.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Subnets": { + "description": "The ID of the subnets in the VPC to which you want to connect your training job or model. For information about the availability of specific instance types, see https://docs.aws.amazon.com/sagemaker/latest/dg/regions-quotas.html", + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "minItems": 1, + "maxItems": 16, + "items": { + "type": "string", + "minLength": 0, + "maxLength": 32, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 32 \nPattern: [-0-9a-zA-Z]+ \nUpdate requires: No interruption\n" + }, + "markdownDescription": "The ID of the subnets in the VPC to which you want to connect your training job or model. For information about the availability of specific instance types, see https://docs.aws.amazon.com/sagemaker/latest/dg/regions-quotas.html\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "SecurityGroupIds", + "Subnets" + ], + "markdownDescription": "Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, hosted models, and compute resources have access to. You can control access to and from your resources by configuring a VPC. For more information, see https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "NetworkConfig": { + "description": "Networking options for a job, such as network traffic encryption between containers, whether to allow inbound and outbound network calls to and from containers, and the VPC subnets and security groups to use for VPC-enabled jobs.", + "type": "object", + "additionalProperties": false, + "properties": { + "EnableInterContainerTrafficEncryption": { + "description": "Whether to encrypt all communications between distributed processing jobs. Choose True to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.", + "type": "boolean", + "markdownDescription": "Whether to encrypt all communications between distributed processing jobs. Choose True to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "EnableNetworkIsolation": { + "description": "Whether to allow inbound and outbound network calls to and from the containers used for the processing job.", + "type": "boolean", + "markdownDescription": "Whether to allow inbound and outbound network calls to and from the containers used for the processing job.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "VpcConfig": { + "$ref": "#/definitions/VpcConfig" + } + }, + "markdownDescription": "Networking options for a job, such as network traffic encryption between containers, whether to allow inbound and outbound network calls to and from containers, and the VPC subnets and security groups to use for VPC-enabled jobs.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "S3Input": { + "description": "Configuration for downloading input data from Amazon S3 into the processing container.", + "type": "object", + "additionalProperties": false, + "properties": { + "LocalPath": { + "description": "The local path in your container where you want Amazon SageMaker to write input data to. `LocalPath` is an absolute path to the input data and must begin with `/opt/ml/processing/`. LocalPath is a required parameter when `AppManaged` is `False` (default).", + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The local path in your container where you want Amazon SageMaker to write input data to. `LocalPath` is an absolute path to the input data and must begin with `/opt/ml/processing/`. LocalPath is a required parameter when `AppManaged` is `False` (default).\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "S3CompressionType": { + "description": "Whether to GZIP-decompress the data in Amazon S3 as it is streamed into the processing container. `Gzip` can only be used when `Pipe` mode is specified as the `S3InputMode`. In `Pipe` mode, Amazon SageMaker streams input data from the source directly to your container without using the EBS volume.", + "type": "string", + "enum": [ + "None", + "Gzip" + ], + "markdownDescription": "Whether to GZIP-decompress the data in Amazon S3 as it is streamed into the processing container. `Gzip` can only be used when `Pipe` mode is specified as the `S3InputMode`. In `Pipe` mode, Amazon SageMaker streams input data from the source directly to your container without using the EBS volume.\n\n---\n\nRequired: No \nType: String \nAllowed Values: None | Gzip \nUpdate requires: No interruption\n" + }, + "S3DataDistributionType": { + "description": "Whether to distribute the data from Amazon S3 to all processing instances with `FullyReplicated`, or whether the data from Amazon S3 is shared by Amazon S3 key, downloading one shard of data to each processing instance.", + "type": "string", + "enum": [ + "FullyReplicated", + "ShardedByS3Key" + ], + "markdownDescription": "Whether to distribute the data from Amazon S3 to all processing instances with `FullyReplicated`, or whether the data from Amazon S3 is shared by Amazon S3 key, downloading one shard of data to each processing instance.\n\n---\n\nRequired: No \nType: String \nAllowed Values: FullyReplicated | ShardedByS3Key \nUpdate requires: No interruption\n" + }, + "S3DataType": { + "description": "Whether you use an S3Prefix or a ManifestFile for the data type. If you choose S3Prefix, S3Uri identifies a key name prefix. Amazon SageMaker uses all objects with the specified key name prefix for the processing job. If you choose ManifestFile, S3Uri identifies an object that is a manifest file containing a list of object keys that you want Amazon SageMaker to use for the processing job.", + "type": "string", + "enum": [ + "ManifestFile", + "S3Prefix" + ], + "markdownDescription": "Whether you use an S3Prefix or a ManifestFile for the data type. If you choose S3Prefix, S3Uri identifies a key name prefix. Amazon SageMaker uses all objects with the specified key name prefix for the processing job. If you choose ManifestFile, S3Uri identifies an object that is a manifest file containing a list of object keys that you want Amazon SageMaker to use for the processing job.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: ManifestFile | S3Prefix \nUpdate requires: No interruption\n" + }, + "S3InputMode": { + "description": "Whether to use File or Pipe input mode. In File mode, Amazon SageMaker copies the data from the input source onto the local ML storage volume before starting your processing container. This is the most commonly used input mode. In Pipe mode, Amazon SageMaker streams input data from the source directly to your processing container into named pipes without using the ML storage volume.", + "type": "string", + "enum": [ + "File", + "Pipe" + ], + "markdownDescription": "Whether to use File or Pipe input mode. In File mode, Amazon SageMaker copies the data from the input source onto the local ML storage volume before starting your processing container. This is the most commonly used input mode. In Pipe mode, Amazon SageMaker streams input data from the source directly to your processing container into named pipes without using the ML storage volume.\n\n---\n\nRequired: No \nType: String \nAllowed Values: File | Pipe \nUpdate requires: No interruption\n" + }, + "S3Uri": { + "description": "The URI of the Amazon S3 prefix Amazon SageMaker downloads data required to run a processing job.", + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "The URI of the Amazon S3 prefix Amazon SageMaker downloads data required to run a processing job.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nPattern: (https|s3)://([^/]+)/?(.*) \nUpdate requires: No interruption\n" + } + }, + "required": [ + "S3Uri", + "S3DataType" + ], + "markdownDescription": "Configuration for downloading input data from Amazon S3 into the processing container.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AthenaDatasetDefinition": { + "description": "Configuration for Athena Dataset Definition input.", + "type": "object", + "additionalProperties": false, + "properties": { + "Catalog": { + "description": "The name of the data catalog used in Athena query execution.", + "type": "string", + "maxLength": 256, + "markdownDescription": "The name of the data catalog used in Athena query execution.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + }, + "Database": { + "description": "The name of the database used in the Athena query execution.", + "type": "string", + "maxLength": 255, + "markdownDescription": "The name of the database used in the Athena query execution.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 255 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "OutputS3Uri": { + "description": "The location in Amazon S3 where Athena query results are stored.", + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "The location in Amazon S3 where Athena query results are stored.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nPattern: (https|s3)://([^/]+)/?(.*) \nUpdate requires: No interruption\n" + }, + "QueryString": { + "description": "The SQL query statements, to be executed.", + "type": "string", + "maxLength": 4096, + "markdownDescription": "The SQL query statements, to be executed.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 4096 \nPattern: [\\s\\S]+ \nUpdate requires: No interruption\n" + }, + "WorkGroup": { + "description": "The name of the workgroup in which the Athena query is being started.", + "type": "string", + "maxLength": 128, + "markdownDescription": "The name of the workgroup in which the Athena query is being started.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nPattern: [a-zA-Z0-9._-]+ \nUpdate requires: No interruption\n" + }, + "OutputFormat": { + "description": "The data storage format for Athena query results.", + "type": "string", + "enum": [ + "PARQUET", + "AVRO", + "ORC", + "JSON", + "TEXTFILE" + ], + "markdownDescription": "The data storage format for Athena query results.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: PARQUET | AVRO | ORC | JSON | TEXTFILE \nUpdate requires: No interruption\n" + }, + "KmsKeyId": { + "description": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data generated from an Athena query execution.", + "type": "string", + "minLength": 0, + "maxLength": 2048, + "markdownDescription": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data generated from an Athena query execution.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nPattern: [a-zA-Z0-9:/_-]* \nUpdate requires: No interruption\n" + }, + "OutputCompression": { + "description": "The compression used for Athena query results.", + "type": "string", + "enum": [ + "GZIP", + "SNAPPY", + "ZLIB" + ], + "markdownDescription": "The compression used for Athena query results.\n\n---\n\nRequired: No \nType: String \nAllowed Values: GZIP | SNAPPY | ZLIB \nUpdate requires: No interruption\n" + } + }, + "required": [ + "QueryString", + "OutputS3Uri", + "Catalog", + "Database", + "OutputFormat" + ], + "markdownDescription": "Configuration for Athena Dataset Definition input.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RedshiftDatasetDefinition": { + "description": "Configuration for Redshift Dataset Definition input.", + "type": "object", + "additionalProperties": false, + "properties": { + "Database": { + "description": "The name of the Redshift database used in Redshift query execution.", + "type": "string", + "maxLength": 64, + "markdownDescription": "The name of the Redshift database used in Redshift query execution.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 64 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "DbUser": { + "description": "The database user name used in Redshift query execution.", + "type": "string", + "maxLength": 128, + "markdownDescription": "The database user name used in Redshift query execution.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "QueryString": { + "description": "The SQL query statements to be executed.", + "type": "string", + "maxLength": 4096, + "markdownDescription": "The SQL query statements to be executed.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 4096 \nPattern: [\\s\\S]+ \nUpdate requires: No interruption\n" + }, + "ClusterId": { + "description": "The Redshift cluster Identifier.", + "type": "string", + "maxLength": 63, + "markdownDescription": "The Redshift cluster Identifier.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 63 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "ClusterRoleArn": { + "description": "The IAM role attached to your Redshift cluster that Amazon SageMaker uses to generate datasets.", + "type": "string", + "minLength": 20, + "maxLength": 2048, + "markdownDescription": "The IAM role attached to your Redshift cluster that Amazon SageMaker uses to generate datasets.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+ \nUpdate requires: No interruption\n" + }, + "OutputS3Uri": { + "description": "The location in Amazon S3 where the Redshift query results are stored.", + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "The location in Amazon S3 where the Redshift query results are stored.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nPattern: (https|s3)://([^/]+)/?(.*) \nUpdate requires: No interruption\n" + }, + "OutputFormat": { + "description": "The data storage format for Redshift query results.", + "type": "string", + "enum": [ + "PARQUET", + "CSV" + ], + "markdownDescription": "The data storage format for Redshift query results.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: PARQUET | CSV \nUpdate requires: No interruption\n" + }, + "KmsKeyId": { + "description": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data from a Redshift execution.", + "type": "string", + "minLength": 0, + "maxLength": 2048, + "markdownDescription": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data from a Redshift execution.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nPattern: [a-zA-Z0-9:/_-]* \nUpdate requires: No interruption\n" + }, + "OutputCompression": { + "description": "The compression used for Redshift query results.", + "type": "string", + "enum": [ + "None", + "GZIP", + "SNAPPY", + "ZSTD", + "BZIP2" + ], + "markdownDescription": "The compression used for Redshift query results.\n\n---\n\nRequired: No \nType: String \nAllowed Values: None | GZIP | SNAPPY | ZSTD | BZIP2 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ClusterId", + "ClusterRoleArn", + "QueryString", + "Database", + "DbUser", + "OutputS3Uri", + "OutputFormat" + ], + "markdownDescription": "Configuration for Redshift Dataset Definition input.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DatasetDefinition": { + "description": "Configuration for Dataset Definition inputs. The Dataset Definition input must specify exactly one of either `AthenaDatasetDefinition` or `RedshiftDatasetDefinition` types.", + "type": "object", + "additionalProperties": false, + "properties": { + "AthenaDatasetDefinition": { + "$ref": "#/definitions/AthenaDatasetDefinition" + }, + "RedshiftDatasetDefinition": { + "$ref": "#/definitions/RedshiftDatasetDefinition" + }, + "DataDistributionType": { + "description": "Whether the generated dataset is FullyReplicated or ShardedByS3Key (default).", + "type": "string", + "enum": [ + "FullyReplicated", + "ShardedByS3Key" + ], + "markdownDescription": "Whether the generated dataset is FullyReplicated or ShardedByS3Key (default).\n\n---\n\nRequired: No \nType: String \nAllowed Values: FullyReplicated | ShardedByS3Key \nUpdate requires: No interruption\n" + }, + "InputMode": { + "description": "Whether to use File or Pipe input mode. In File (default) mode, Amazon SageMaker copies the data from the input source onto the local Amazon Elastic Block Store (Amazon EBS) volumes before starting your training algorithm. This is the most commonly used input mode. In Pipe mode, Amazon SageMaker streams input data from the source directly to your algorithm without using the EBS volume.", + "type": "string", + "enum": [ + "File", + "Pipe" + ], + "markdownDescription": "Whether to use File or Pipe input mode. In File (default) mode, Amazon SageMaker copies the data from the input source onto the local Amazon Elastic Block Store (Amazon EBS) volumes before starting your training algorithm. This is the most commonly used input mode. In Pipe mode, Amazon SageMaker streams input data from the source directly to your algorithm without using the EBS volume.\n\n---\n\nRequired: No \nType: String \nAllowed Values: File | Pipe \nUpdate requires: No interruption\n" + }, + "LocalPath": { + "description": "The local path where you want Amazon SageMaker to download the Dataset Definition inputs to run a processing job. LocalPath is an absolute path to the input data. This is a required parameter when AppManaged is False (default).", + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The local path where you want Amazon SageMaker to download the Dataset Definition inputs to run a processing job. LocalPath is an absolute path to the input data. This is a required parameter when AppManaged is False (default).\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: .* \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "Configuration for Dataset Definition inputs. The Dataset Definition input must specify exactly one of either `AthenaDatasetDefinition` or `RedshiftDatasetDefinition` types.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ProcessingInputsObject": { + "description": "The inputs for a processing job. The processing input must specify exactly one of either S3Input or DatasetDefinition types.", + "type": "object", + "additionalProperties": false, + "properties": { + "S3Input": { + "$ref": "#/definitions/S3Input" + }, + "DatasetDefinition": { + "$ref": "#/definitions/DatasetDefinition" + }, + "InputName": { + "description": "The name for the processing job input.", + "type": "string", + "markdownDescription": "The name for the processing job input.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "AppManaged": { + "description": "When True, input operations such as data download are managed natively by the processing job application. When False (default), input operations are managed by Amazon SageMaker.", + "type": "boolean", + "markdownDescription": "When True, input operations such as data download are managed natively by the processing job application. When False (default), input operations are managed by Amazon SageMaker.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "required": [ + "InputName" + ], + "markdownDescription": "The inputs for a processing job. The processing input must specify exactly one of either S3Input or DatasetDefinition types.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "FeatureStoreOutput": { + "description": "Configuration for processing job outputs in Amazon SageMaker Feature Store.", + "type": "object", + "additionalProperties": false, + "properties": { + "FeatureGroupName": { + "description": "The name of the Amazon SageMaker FeatureGroup to use as the destination for processing job output. Note that your processing script is responsible for putting records into your Feature Store.", + "type": "string", + "maxLength": 64, + "markdownDescription": "The name of the Amazon SageMaker FeatureGroup to use as the destination for processing job output. Note that your processing script is responsible for putting records into your Feature Store.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 64 \nPattern: [a-zA-Z0-9]([_-]*[a-zA-Z0-9]){0,63} \nUpdate requires: No interruption\n" + } + }, + "required": [ + "FeatureGroupName" + ], + "markdownDescription": "Configuration for processing job outputs in Amazon SageMaker Feature Store.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "S3Output": { + "description": "Configuration for uploading output data to Amazon S3 from the processing container.", + "type": "object", + "additionalProperties": false, + "properties": { + "LocalPath": { + "description": "The local path of a directory where you want Amazon SageMaker to upload its contents to Amazon S3. LocalPath is an absolute path to a directory containing output files. This directory will be created by the platform and exist when your container's entrypoint is invoked.", + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The local path of a directory where you want Amazon SageMaker to upload its contents to Amazon S3. LocalPath is an absolute path to a directory containing output files. This directory will be created by the platform and exist when your container's entrypoint is invoked.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: .* \nUpdate requires: No interruption\n" + }, + "S3UploadMode": { + "description": "Whether to upload the results of the processing job continuously or after the job completes.", + "type": "string", + "enum": [ + "Continuous", + "EndOfJob" + ], + "markdownDescription": "Whether to upload the results of the processing job continuously or after the job completes.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: Continuous | EndOfJob \nUpdate requires: No interruption\n" + }, + "S3Uri": { + "description": "A URI that identifies the Amazon S3 bucket where you want Amazon SageMaker to save the results of a processing job.", + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "A URI that identifies the Amazon S3 bucket where you want Amazon SageMaker to save the results of a processing job.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 1024 \nPattern: (https|s3)://([^/]+)/?(.*) \nUpdate requires: No interruption\n" + } + }, + "required": [ + "S3Uri", + "S3UploadMode" + ], + "markdownDescription": "Configuration for uploading output data to Amazon S3 from the processing container.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ProcessingOutputsObject": { + "description": "Describes the results of a processing job. The processing output must specify exactly one of either S3Output or FeatureStoreOutput types.", + "type": "object", + "additionalProperties": false, + "properties": { + "OutputName": { + "description": "The name for the processing job output.", + "type": "string", + "markdownDescription": "The name for the processing job output.\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "AppManaged": { + "description": "When True, output operations such as data upload are managed natively by the processing job application. When False (default), output operations are managed by Amazon SageMaker.", + "type": "boolean", + "markdownDescription": "When True, output operations such as data upload are managed natively by the processing job application. When False (default), output operations are managed by Amazon SageMaker.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "S3Output": { + "$ref": "#/definitions/S3Output" + }, + "FeatureStoreOutput": { + "$ref": "#/definitions/FeatureStoreOutput" + } + }, + "required": [ + "OutputName" + ], + "markdownDescription": "Describes the results of a processing job. The processing output must specify exactly one of either S3Output or FeatureStoreOutput types.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ProcessingOutputConfig": { + "description": "Configuration for uploading output from the processing container.", + "type": "object", + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "description": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt the processing job output. KmsKeyId can be an ID of a KMS key, ARN of a KMS key, or alias of a KMS key. The KmsKeyId is applied to all outputs.", + "type": "string", + "maxLength": 2048, + "markdownDescription": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt the processing job output. KmsKeyId can be an ID of a KMS key, ARN of a KMS key, or alias of a KMS key. The KmsKeyId is applied to all outputs.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nPattern: [a-zA-Z0-9:/_-]* \nUpdate requires: No interruption\n" + }, + "Outputs": { + "description": "An array of outputs configuring the data to upload from the processing container.", + "type": "array", + "maxItems": 10, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/ProcessingOutputsObject" + }, + "markdownDescription": "An array of outputs configuring the data to upload from the processing container.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Outputs" + ], + "markdownDescription": "Configuration for uploading output from the processing container.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ClusterConfig": { + "description": "Configuration for the cluster used to run a processing job.", + "type": "object", + "additionalProperties": false, + "properties": { + "InstanceCount": { + "description": "The number of ML compute instances to use in the processing job. For distributed processing jobs, specify a value greater than 1. The default value is 1.", + "type": "integer", + "minimum": 1, + "maximum": 100, + "markdownDescription": "The number of ML compute instances to use in the processing job. For distributed processing jobs, specify a value greater than 1. The default value is 1.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + }, + "InstanceType": { + "description": "The ML compute instance type for the processing job.", + "type": "string", + "enum": [ + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge", + "ml.m4.xlarge", + "ml.m4.2xlarge", + "ml.m4.4xlarge", + "ml.m4.10xlarge", + "ml.m4.16xlarge", + "ml.c4.xlarge", + "ml.c4.2xlarge", + "ml.c4.4xlarge", + "ml.c4.8xlarge", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.18xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.12xlarge", + "ml.m5.24xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.g4dn.xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.16xlarge", + "ml.g5.12xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.r5d.large", + "ml.r5d.xlarge", + "ml.r5d.2xlarge", + "ml.r5d.4xlarge", + "ml.r5d.8xlarge", + "ml.r5d.12xlarge", + "ml.r5d.16xlarge", + "ml.r5d.24xlarge", + "ml.g6.xlarge", + "ml.g6.2xlarge", + "ml.g6.4xlarge", + "ml.g6.8xlarge", + "ml.g6.12xlarge", + "ml.g6.16xlarge", + "ml.g6.24xlarge", + "ml.g6.48xlarge", + "ml.g6e.xlarge", + "ml.g6e.2xlarge", + "ml.g6e.4xlarge", + "ml.g6e.8xlarge", + "ml.g6e.12xlarge", + "ml.g6e.16xlarge", + "ml.g6e.24xlarge", + "ml.g6e.48xlarge", + "ml.m6i.large", + "ml.m6i.xlarge", + "ml.m6i.2xlarge", + "ml.m6i.4xlarge", + "ml.m6i.8xlarge", + "ml.m6i.12xlarge", + "ml.m6i.16xlarge", + "ml.m6i.24xlarge", + "ml.m6i.32xlarge", + "ml.c6i.xlarge", + "ml.c6i.2xlarge", + "ml.c6i.4xlarge", + "ml.c6i.8xlarge", + "ml.c6i.12xlarge", + "ml.c6i.16xlarge", + "ml.c6i.24xlarge", + "ml.c6i.32xlarge", + "ml.m7i.large", + "ml.m7i.xlarge", + "ml.m7i.2xlarge", + "ml.m7i.4xlarge", + "ml.m7i.8xlarge", + "ml.m7i.12xlarge", + "ml.m7i.16xlarge", + "ml.m7i.24xlarge", + "ml.m7i.48xlarge", + "ml.c7i.large", + "ml.c7i.xlarge", + "ml.c7i.2xlarge", + "ml.c7i.4xlarge", + "ml.c7i.8xlarge", + "ml.c7i.12xlarge", + "ml.c7i.16xlarge", + "ml.c7i.24xlarge", + "ml.c7i.48xlarge", + "ml.r7i.large", + "ml.r7i.xlarge", + "ml.r7i.2xlarge", + "ml.r7i.4xlarge", + "ml.r7i.8xlarge", + "ml.r7i.12xlarge", + "ml.r7i.16xlarge", + "ml.r7i.24xlarge", + "ml.r7i.48xlarge" + ], + "markdownDescription": "The ML compute instance type for the processing job.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: ml.t3.medium | ml.t3.large | ml.t3.xlarge | ml.t3.2xlarge | ml.m4.xlarge | ml.m4.2xlarge | ml.m4.4xlarge | ml.m4.10xlarge | ml.m4.16xlarge | ml.c4.xlarge | ml.c4.2xlarge | ml.c4.4xlarge | ml.c4.8xlarge | ml.c5.xlarge | ml.c5.2xlarge | ml.c5.4xlarge | ml.c5.9xlarge | ml.c5.18xlarge | ml.m5.large | ml.m5.xlarge | ml.m5.2xlarge | ml.m5.4xlarge | ml.m5.12xlarge | ml.m5.24xlarge | ml.r5.large | ml.r5.xlarge | ml.r5.2xlarge | ml.r5.4xlarge | ml.r5.8xlarge | ml.r5.12xlarge | ml.r5.16xlarge | ml.r5.24xlarge | ml.g4dn.xlarge | ml.g4dn.2xlarge | ml.g4dn.4xlarge | ml.g4dn.8xlarge | ml.g4dn.12xlarge | ml.g4dn.16xlarge | ml.g5.xlarge | ml.g5.2xlarge | ml.g5.4xlarge | ml.g5.8xlarge | ml.g5.16xlarge | ml.g5.12xlarge | ml.g5.24xlarge | ml.g5.48xlarge | ml.r5d.large | ml.r5d.xlarge | ml.r5d.2xlarge | ml.r5d.4xlarge | ml.r5d.8xlarge | ml.r5d.12xlarge | ml.r5d.16xlarge | ml.r5d.24xlarge | ml.g6.xlarge | ml.g6.2xlarge | ml.g6.4xlarge | ml.g6.8xlarge | ml.g6.12xlarge | ml.g6.16xlarge | ml.g6.24xlarge | ml.g6.48xlarge | ml.g6e.xlarge | ml.g6e.2xlarge | ml.g6e.4xlarge | ml.g6e.8xlarge | ml.g6e.12xlarge | ml.g6e.16xlarge | ml.g6e.24xlarge | ml.g6e.48xlarge | ml.m6i.large | ml.m6i.xlarge | ml.m6i.2xlarge | ml.m6i.4xlarge | ml.m6i.8xlarge | ml.m6i.12xlarge | ml.m6i.16xlarge | ml.m6i.24xlarge | ml.m6i.32xlarge | ml.c6i.xlarge | ml.c6i.2xlarge | ml.c6i.4xlarge | ml.c6i.8xlarge | ml.c6i.12xlarge | ml.c6i.16xlarge | ml.c6i.24xlarge | ml.c6i.32xlarge | ml.m7i.large | ml.m7i.xlarge | ml.m7i.2xlarge | ml.m7i.4xlarge | ml.m7i.8xlarge | ml.m7i.12xlarge | ml.m7i.16xlarge | ml.m7i.24xlarge | ml.m7i.48xlarge | ml.c7i.large | ml.c7i.xlarge | ml.c7i.2xlarge | ml.c7i.4xlarge | ml.c7i.8xlarge | ml.c7i.12xlarge | ml.c7i.16xlarge | ml.c7i.24xlarge | ml.c7i.48xlarge | ml.r7i.large | ml.r7i.xlarge | ml.r7i.2xlarge | ml.r7i.4xlarge | ml.r7i.8xlarge | ml.r7i.12xlarge | ml.r7i.16xlarge | ml.r7i.24xlarge | ml.r7i.48xlarge \nUpdate requires: No interruption\n" + }, + "VolumeSizeInGB": { + "description": "The size of the ML storage volume in gigabytes that you want to provision. You must specify sufficient ML storage for your scenario.", + "type": "integer", + "minimum": 1, + "maximum": 16384, + "markdownDescription": "The size of the ML storage volume in gigabytes that you want to provision. You must specify sufficient ML storage for your scenario.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + }, + "VolumeKmsKeyId": { + "description": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the processing job.", + "type": "string", + "minLength": 0, + "maxLength": 2048, + "markdownDescription": "The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the processing job.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 2048 \nPattern: [a-zA-Z0-9:/_-]* \nUpdate requires: No interruption\n" + } + }, + "required": [ + "InstanceCount", + "InstanceType", + "VolumeSizeInGB" + ], + "markdownDescription": "Configuration for the cluster used to run a processing job.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ProcessingResources": { + "description": "Identifies the resources, ML compute instances, and ML storage volumes to deploy for a processing job. In distributed training, you specify more than one instance.", + "type": "object", + "additionalProperties": false, + "properties": { + "ClusterConfig": { + "$ref": "#/definitions/ClusterConfig" + } + }, + "required": [ + "ClusterConfig" + ], + "markdownDescription": "Identifies the resources, ML compute instances, and ML storage volumes to deploy for a processing job. In distributed training, you specify more than one instance.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "StoppingCondition": { + "description": "Configures conditions under which the processing job should be stopped, such as how long the processing job has been running. After the condition is met, the processing job is stopped.", + "type": "object", + "additionalProperties": false, + "properties": { + "MaxRuntimeInSeconds": { + "description": "Specifies the maximum runtime in seconds.", + "type": "integer", + "minimum": 1, + "maximum": 777600, + "markdownDescription": "Specifies the maximum runtime in seconds.\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "MaxRuntimeInSeconds" + ], + "markdownDescription": "Configures conditions under which the processing job should be stopped, such as how long the processing job has been running. After the condition is met, the processing job is stopped.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "description": "A tag object that consists of a key and an optional value, used to manage metadata for SageMaker AWS resources.\nYou can add tags to notebook instances, training jobs, hyperparameter tuning jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, and endpoints. For more information on adding tags to SageMaker resources, see AddTags(https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AddTags.html).\nFor more information on adding metadata to your AWS resources with tagging, see Tagging AWS resources(https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html). For advice on best practices for managing AWS resources with tagging, see Tagging Best Practices: Implement an Effective AWS Resource Tagging Strategy(https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf).", + "type": "object", + "additionalProperties": false, + "properties": { + "Value": { + "description": "The tag value.", + "type": "string", + "maxLength": 256, + "markdownDescription": "The tag value.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nPattern: ([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*) \nUpdate requires: No interruption\n" + }, + "Key": { + "description": "The tag key. Tag keys must be unique per resource.", + "type": "string", + "maxLength": 128, + "markdownDescription": "The tag key. Tag keys must be unique per resource.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 128 \nPattern: ([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*) \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Key" + ], + "markdownDescription": "A tag object that consists of a key and an optional value, used to manage metadata for SageMaker AWS resources.\nYou can add tags to notebook instances, training jobs, hyperparameter tuning jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, and endpoints. For more information on adding tags to SageMaker resources, see AddTags(https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AddTags.html).\nFor more information on adding metadata to your AWS resources with tagging, see Tagging AWS resources(https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html). For advice on best practices for managing AWS resources with tagging, see Tagging Best Practices: Implement an Effective AWS Resource Tagging Strategy(https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf).\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "AppSpecification": { + "$ref": "#/definitions/AppSpecification" + }, + "Environment": { + "$ref": "#/definitions/Environment" + }, + "ExperimentConfig": { + "$ref": "#/definitions/ExperimentConfig" + }, + "NetworkConfig": { + "$ref": "#/definitions/NetworkConfig" + }, + "ProcessingInputs": { + "description": "An array of inputs configuring the data to download into the processing container.", + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "minItems": 0, + "maxItems": 10, + "items": { + "$ref": "#/definitions/ProcessingInputsObject" + }, + "markdownDescription": "An array of inputs configuring the data to download into the processing container.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, + "ProcessingJobName": { + "description": "The name of the processing job. The name must be unique within an AWS Region in the AWS account.", + "type": "string", + "minLength": 1, + "maxLength": 63, + "markdownDescription": "The name of the processing job. The name must be unique within an AWS Region in the AWS account.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 63 \nPattern: [a-zA-Z0-9](-*[a-zA-Z0-9]){0,62} \nUpdate requires: Replacement\n" + }, + "ProcessingOutputConfig": { + "$ref": "#/definitions/ProcessingOutputConfig" + }, + "ProcessingResources": { + "$ref": "#/definitions/ProcessingResources" + }, + "RoleArn": { + "description": "The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.", + "type": "string", + "minLength": 20, + "maxLength": 2048, + "markdownDescription": "The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+ \nUpdate requires: Replacement\n" + }, + "StoppingCondition": { + "$ref": "#/definitions/StoppingCondition" + }, + "Tags": { + "description": "(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags(https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the AWS Billing and Cost Management User Guide.", + "type": "array", + "uniqueItems": false, + "insertionOrder": false, + "maxItems": 50, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "(Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags(https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the AWS Billing and Cost Management User Guide.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + }, + "ProcessingJobArn": { + "description": "The Amazon Resource Name (ARN) of the processing job.", + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The Amazon Resource Name (ARN) of the processing job.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:processing-job/.* \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AutoMLJobArn": { + "description": "The ARN of an AutoML job associated with this processing job.", + "type": "string", + "maxLength": 256, + "markdownDescription": "The ARN of an AutoML job associated with this processing job.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ExitMessage": { + "description": "An optional string, up to one KB in size, that contains metadata from the processing container when the processing job exits.", + "type": "string", + "maxLength": 1024, + "markdownDescription": "An optional string, up to one KB in size, that contains metadata from the processing container when the processing job exits.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: [\\S\\s]* \nUpdate requires: No interruption\nRead only property: Yes" + }, + "FailureReason": { + "description": "A string, up to one KB in size, that contains the reason a processing job failed, if it failed.", + "type": "string", + "maxLength": 1024, + "markdownDescription": "A string, up to one KB in size, that contains the reason a processing job failed, if it failed.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MonitoringScheduleArn": { + "description": "The ARN of a monitoring schedule for an endpoint associated with this processing job.", + "type": "string", + "maxLength": 256, + "markdownDescription": "The ARN of a monitoring schedule for an endpoint associated with this processing job.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "TrainingJobArn": { + "description": "The ARN of a training job associated with this processing job", + "type": "string", + "maxLength": 256, + "markdownDescription": "The ARN of a training job associated with this processing job\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProcessingJobStatus": { + "description": "Provides the status of a processing job.", + "type": "string", + "enum": [ + "Completed", + "InProgress", + "Stopping", + "Stopped", + "Failed" + ], + "markdownDescription": "Provides the status of a processing job.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Completed | InProgress | Stopping | Stopped | Failed \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "description": "The time at which the processing job was created.", + "type": "string", + "markdownDescription": "The time at which the processing job was created.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "LastModifiedTime": { + "description": "The time at which the processing job was last modified.", + "type": "string", + "markdownDescription": "The time at which the processing job was last modified.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProcessingStartTime": { + "description": "The time at which the processing job started.", + "type": "string", + "markdownDescription": "The time at which the processing job started.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProcessingEndTime": { + "description": "The time at which the processing job completed.", + "type": "string", + "markdownDescription": "The time at which the processing job completed.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "replacementStrategy": "delete_then_create", + "additionalProperties": false, + "required": [ + "AppSpecification", + "ProcessingResources", + "RoleArn" + ], + "createOnlyProperties": [ + "/properties/AppSpecification", + "/properties/Environment", + "/properties/ExperimentConfig", + "/properties/NetworkConfig", + "/properties/ProcessingInputs", + "/properties/ProcessingJobName", + "/properties/ProcessingOutputConfig", + "/properties/ProcessingResources", + "/properties/RoleArn", + "/properties/StoppingCondition", + "/properties/Tags" + ], + "primaryIdentifier": [ + "/properties/ProcessingJobArn" + ], + "additionalIdentifiers": [ + [ + "/properties/ProcessingJobName" + ] + ], + "readOnlyProperties": [ + "/properties/ProcessingJobArn", + "/properties/TrainingJobArn", + "/properties/AutoMLJobArn", + "/properties/ExitMessage", + "/properties/FailureReason", + "/properties/MonitoringScheduleArn", + "/properties/ProcessingJobStatus", + "/properties/CreationTime", + "/properties/LastModifiedTime", + "/properties/ProcessingStartTime", + "/properties/ProcessingEndTime" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": false, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "sagemaker:AddTags", + "sagemaker:ListTags", + "sagemaker:DeleteTags" + ] + }, + "handlers": { + "create": { + "permissions": [ + "sagemaker:CreateProcessingJob", + "sagemaker:DescribeProcessingJob", + "sagemaker:AddTags", + "sagemaker:ListTags", + "iam:PassRole" + ] + }, + "read": { + "permissions": [ + "sagemaker:DescribeProcessingJob", + "sagemaker:ListTags" + ] + }, + "delete": { + "permissions": [ + "sagemaker:StopProcessingJob", + "sagemaker:DescribeProcessingJob", + "sagemaker:ListTags", + "sagemaker:DeleteTags" + ] + }, + "list": { + "permissions": [ + "sagemaker:ListProcessingJobs", + "sagemaker:DescribeProcessingJob", + "sagemaker:ListTags" + ] + } + }, + "attributes": { + "ProcessingJobArn": { + "description": "The Amazon Resource Name (ARN) of the processing job.", + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The Amazon Resource Name (ARN) of the processing job.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nPattern: arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:processing-job/.* \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AutoMLJobArn": { + "description": "The ARN of an AutoML job associated with this processing job.", + "type": "string", + "maxLength": 256, + "markdownDescription": "The ARN of an AutoML job associated with this processing job.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ExitMessage": { + "description": "An optional string, up to one KB in size, that contains metadata from the processing container when the processing job exits.", + "type": "string", + "maxLength": 1024, + "markdownDescription": "An optional string, up to one KB in size, that contains metadata from the processing container when the processing job exits.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: [\\S\\s]* \nUpdate requires: No interruption\nRead only property: Yes" + }, + "FailureReason": { + "description": "A string, up to one KB in size, that contains the reason a processing job failed, if it failed.", + "type": "string", + "maxLength": 1024, + "markdownDescription": "A string, up to one KB in size, that contains the reason a processing job failed, if it failed.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "MonitoringScheduleArn": { + "description": "The ARN of a monitoring schedule for an endpoint associated with this processing job.", + "type": "string", + "maxLength": 256, + "markdownDescription": "The ARN of a monitoring schedule for an endpoint associated with this processing job.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "TrainingJobArn": { + "description": "The ARN of a training job associated with this processing job", + "type": "string", + "maxLength": 256, + "markdownDescription": "The ARN of a training job associated with this processing job\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProcessingJobStatus": { + "description": "Provides the status of a processing job.", + "type": "string", + "enum": [ + "Completed", + "InProgress", + "Stopping", + "Stopped", + "Failed" + ], + "markdownDescription": "Provides the status of a processing job.\n\n---\n\nRequired: No \nType: String \nAllowed Values: Completed | InProgress | Stopping | Stopped | Failed \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationTime": { + "description": "The time at which the processing job was created.", + "type": "string", + "markdownDescription": "The time at which the processing job was created.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "LastModifiedTime": { + "description": "The time at which the processing job was last modified.", + "type": "string", + "markdownDescription": "The time at which the processing job was last modified.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProcessingStartTime": { + "description": "The time at which the processing job started.", + "type": "string", + "markdownDescription": "The time at which the processing job started.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProcessingEndTime": { + "description": "The time at which the processing job completed.", + "type": "string", + "markdownDescription": "The time at which the processing job completed.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-sagemaker-project.json b/server/schema/resources/aws-sagemaker-project.json index 380312e5..d0c608dc 100644 --- a/server/schema/resources/aws-sagemaker-project.json +++ b/server/schema/resources/aws-sagemaker-project.json @@ -100,6 +100,94 @@ ], "additionalProperties": false, "markdownDescription": "Information about a parameter used to provision a product.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TemplateProviderDetail": { + "description": "Details about the template provider for the SageMaker project.", + "type": "object", + "additionalProperties": false, + "properties": { + "CfnTemplateProviderDetail": { + "$ref": "#/definitions/CfnTemplateProviderDetail" + } + }, + "oneOf": [ + { + "required": [ + "CfnTemplateProviderDetail" + ] + } + ], + "markdownDescription": "Details about the template provider for the SageMaker project.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CfnTemplateProviderDetail": { + "description": "CloudFormation template provider details for a SageMaker project.", + "type": "object", + "additionalProperties": false, + "properties": { + "Parameters": { + "$ref": "#/definitions/CfnStackParameters" + }, + "RoleARN": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the IAM role used by the template provider.", + "minLength": 20, + "maxLength": 2048, + "markdownDescription": "The Amazon Resource Name (ARN) of the IAM role used by the template provider.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+ \nUpdate requires: No interruption\n" + }, + "TemplateName": { + "type": "string", + "description": "The name of the template used for the project.", + "minLength": 1, + "maxLength": 32, + "markdownDescription": "The name of the template used for the project.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 32 \nPattern: (?=.{1,32}$)[a-zA-Z0-9](-*[a-zA-Z0-9])* \nUpdate requires: No interruption\n" + }, + "TemplateURL": { + "type": "string", + "description": "The URL of the CloudFormation template.", + "minLength": 1, + "maxLength": 1024, + "markdownDescription": "The URL of the CloudFormation template.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nPattern: (?=.{1,1024}$)(https)://([^/]+)/(.+) \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TemplateName", + "TemplateURL" + ], + "markdownDescription": "CloudFormation template provider details for a SageMaker project.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CfnStackParameters": { + "type": "array", + "description": "A list of parameters used in the CloudFormation template.", + "minItems": 0, + "maxItems": 180, + "items": { + "$ref": "#/definitions/CfnStackParameter" + }, + "markdownDescription": "A list of parameters used in the CloudFormation template.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "CfnStackParameter": { + "type": "object", + "additionalProperties": false, + "properties": { + "Key": { + "type": "string", + "description": "The key of the parameter.", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The key of the parameter.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value of the parameter.", + "maxLength": 4096, + "markdownDescription": "The value of the parameter.\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 4096 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, "properties": { @@ -155,7 +243,7 @@ "ProductId" ], "additionalProperties": false, - "markdownDescription": "Input ServiceCatalog Provisioning Details\n\n---\n\nRequired: Yes \nUpdate requires: Replacement\n" + "markdownDescription": "Input ServiceCatalog Provisioning Details\n\n---\n\nRequired: Conditional \nUpdate requires: Replacement\n" }, "ServiceCatalogProvisionedProductDetails": { "description": "Provisioned ServiceCatalog Details", @@ -171,6 +259,17 @@ "additionalProperties": false, "markdownDescription": "Provisioned ServiceCatalog Details\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "TemplateProviderDetails": { + "type": "array", + "minItems": 1, + "maxItems": 1, + "description": "An array of template providers associated with the project.", + "items": { + "$ref": "#/definitions/TemplateProviderDetail" + }, + "insertionOrder": true, + "markdownDescription": "An array of template providers associated with the project.\n\n---\n\nRequired: Conditional \nType: Array \nUpdate requires: Replacement\n" + }, "ProjectStatus": { "description": "The status of a project.", "type": "string", @@ -188,8 +287,19 @@ }, "additionalProperties": false, "required": [ - "ProjectName", - "ServiceCatalogProvisioningDetails" + "ProjectName" + ], + "oneOf": [ + { + "required": [ + "ServiceCatalogProvisioningDetails" + ] + }, + { + "required": [ + "TemplateProviderDetails" + ] + } ], "tagging": { "taggable": true, @@ -213,6 +323,7 @@ "/properties/ProjectName", "/properties/ProjectDescription", "/properties/ServiceCatalogProvisioningDetails", + "/properties/TemplateProviderDetails", "/properties/Tags" ], "primaryIdentifier": [ @@ -229,7 +340,11 @@ "servicecatalog:DescribeProvisioningArtifact", "servicecatalog:ProvisionProduct", "servicecatalog:DescribeProvisionedProduct", - "servicecatalog:TerminateProvisionedProduct" + "servicecatalog:TerminateProvisionedProduct", + "cloudformation:DescribeStacks", + "cloudformation:CreateStack", + "iam:PassRole", + "s3:GetObject" ] }, "read": { @@ -251,7 +366,9 @@ "sagemaker:DeleteProject", "sagemaker:DescribeProject", "servicecatalog:TerminateProvisionedProduct", - "servicecatalog:DescribeRecord" + "servicecatalog:DescribeRecord", + "cloudformation:DescribeStacks", + "cloudformation:DeleteStack" ] }, "list": { diff --git a/server/schema/resources/aws-sagemaker-space.json b/server/schema/resources/aws-sagemaker-space.json index af7854ad..96b1df79 100644 --- a/server/schema/resources/aws-sagemaker-space.json +++ b/server/schema/resources/aws-sagemaker-space.json @@ -123,6 +123,16 @@ "description": "Default storage settings for a space.", "markdownDescription": "Default storage settings for a space.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, + "SpaceManagedResources": { + "$ref": "#/definitions/SpaceManagedResources", + "description": "This is a flag used to indicate if space managed resources needs to be created.", + "markdownDescription": "This is a flag used to indicate if space managed resources needs to be created.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "RemoteAccess": { + "$ref": "#/definitions/RemoteAccess", + "description": "This is a flag used to indicate if remote access is enabled.", + "markdownDescription": "This is a flag used to indicate if remote access is enabled.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, "AppType": { "$ref": "#/definitions/AppType" }, @@ -164,6 +174,9 @@ }, "FSxLustreFileSystem": { "$ref": "#/definitions/FSxLustreFileSystem" + }, + "S3FileSystem": { + "$ref": "#/definitions/S3FileSystem" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -200,6 +213,19 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "S3FileSystem": { + "type": "object", + "additionalProperties": false, + "properties": { + "S3Uri": { + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: (s3)://([^/]+)/?(.*) \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "SpaceJupyterLabAppSettings": { "type": "object", "description": "The JupyterServer app settings.", @@ -311,6 +337,24 @@ }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "SpaceManagedResources": { + "type": "string", + "description": "The flag to enable/disable creation of space managed resources.", + "enum": [ + "ENABLED", + "DISABLED" + ], + "markdownDescription": "The flag to enable/disable creation of space managed resources.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, + "RemoteAccess": { + "type": "string", + "description": "The flag to enable/disable remote access for a space.", + "enum": [ + "ENABLED", + "DISABLED" + ], + "markdownDescription": "The flag to enable/disable remote access for a space.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, "EbsStorageSettings": { "type": "object", "description": "Properties related to the space's Amazon Elastic Block Store volume.", diff --git a/server/schema/resources/aws-sagemaker-studiolifecycleconfig.json b/server/schema/resources/aws-sagemaker-studiolifecycleconfig.json index b2cef84d..e03575eb 100644 --- a/server/schema/resources/aws-sagemaker-studiolifecycleconfig.json +++ b/server/schema/resources/aws-sagemaker-studiolifecycleconfig.json @@ -132,6 +132,9 @@ "sagemaker:DeleteTags" ] }, + "propertyTransform": { + "/properties/StudioLifecycleConfigName": "$lowercase(StudioLifecycleConfigName) $OR StudioLifecycleConfigName" + }, "attributes": { "StudioLifecycleConfigArn": { "type": "string", diff --git a/server/schema/resources/aws-sagemaker-userprofile.json b/server/schema/resources/aws-sagemaker-userprofile.json index 2d19acdc..5f5b267f 100644 --- a/server/schema/resources/aws-sagemaker-userprofile.json +++ b/server/schema/resources/aws-sagemaker-userprofile.json @@ -555,6 +555,9 @@ }, "FSxLustreFileSystemConfig": { "$ref": "#/definitions/FSxLustreFileSystemConfig" + }, + "S3FileSystemConfig": { + "$ref": "#/definitions/S3FileSystemConfig" } }, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" @@ -603,6 +606,25 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "S3FileSystemConfig": { + "type": "object", + "additionalProperties": false, + "properties": { + "MountPath": { + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + }, + "S3Uri": { + "type": "string", + "minLength": 0, + "maxLength": 1024, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1024 \nPattern: (s3)://([^/]+)/?(.*) \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "CustomImage": { "type": "object", "description": "A custom SageMaker image.", diff --git a/server/schema/resources/aws-securityhub-aggregatorv2.json b/server/schema/resources/aws-securityhub-aggregatorv2.json new file mode 100644 index 00000000..35d6eb4d --- /dev/null +++ b/server/schema/resources/aws-securityhub-aggregatorv2.json @@ -0,0 +1,134 @@ +{ + "typeName": "AWS::SecurityHub::AggregatorV2", + "description": "The AWS::SecurityHub::AggregatorV2 resource represents the AWS Security Hub AggregatorV2 in your account. One aggregatorv2 resource is created for each account in non opt-in region in which you configure region linking mode.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", + "definitions": { + "Region": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9-]{1,32}$ \nUpdate requires: No interruption\n" + }, + "Tags": { + "description": "A key-value pair to associate with the Security Hub V2 resource.", + "type": "object", + "patternProperties": { + "^(?!aws:)[a-zA-Z+-=._:/]+$": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "maxProperties": 50, + "markdownDescription": "A key-value pair to associate with the Security Hub V2 resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "AggregatorV2Arn": { + "description": "The ARN of the AggregatorV2 being created and assigned as the unique identifier", + "type": "string", + "markdownDescription": "The ARN of the AggregatorV2 being created and assigned as the unique identifier\n\n---\n\nRequired: No \nType: String \nPattern: arn:aws\\S*:securityhub:\\S* \nUpdate requires: No interruption\nRead only property: Yes" + }, + "RegionLinkingMode": { + "description": "Indicates to link a list of included Regions", + "type": "string", + "enum": [ + "SPECIFIED_REGIONS" + ], + "markdownDescription": "Indicates to link a list of included Regions\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: SPECIFIED_REGIONS \nUpdate requires: No interruption\n" + }, + "LinkedRegions": { + "description": "The list of included Regions", + "type": "array", + "insertionOrder": false, + "uniqueItems": true, + "minItems": 1, + "maxItems": 50, + "items": { + "$ref": "#/definitions/Region" + }, + "markdownDescription": "The list of included Regions\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Tags": { + "$ref": "#/definitions/Tags" + }, + "AggregationRegion": { + "description": "The aggregation Region of the AggregatorV2", + "$ref": "#/definitions/Region", + "markdownDescription": "The aggregation Region of the AggregatorV2\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + } + }, + "additionalProperties": false, + "required": [ + "RegionLinkingMode", + "LinkedRegions" + ], + "readOnlyProperties": [ + "/properties/AggregatorV2Arn", + "/properties/AggregationRegion" + ], + "primaryIdentifier": [ + "/properties/AggregatorV2Arn" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "securityhub:ListTagsForResource", + "securityhub:TagResource", + "securityhub:UntagResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "securityhub:CreateAggregatorV2", + "securityhub:GetAggregatorV2", + "securityhub:TagResource", + "securityhub:ListTagsForResource" + ] + }, + "read": { + "permissions": [ + "securityhub:GetAggregatorV2", + "securityhub:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "securityhub:UpdateAggregatorV2", + "securityhub:GetAggregatorV2", + "securityhub:TagResource", + "securityhub:UntagResource", + "securityhub:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "securityhub:DeleteAggregatorV2" + ] + }, + "list": { + "permissions": [ + "securityhub:ListAggregatorsV2", + "securityhub:ListTagsForResource" + ] + } + }, + "attributes": { + "AggregatorV2Arn": { + "description": "The ARN of the AggregatorV2 being created and assigned as the unique identifier", + "type": "string", + "markdownDescription": "The ARN of the AggregatorV2 being created and assigned as the unique identifier\n\n---\n\nRequired: No \nType: String \nPattern: arn:aws\\S*:securityhub:\\S* \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AggregationRegion": { + "description": "The aggregation Region of the AggregatorV2", + "$ref": "#/definitions/Region", + "markdownDescription": "The aggregation Region of the AggregatorV2\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-securityhub-automationrule.json b/server/schema/resources/aws-securityhub-automationrule.json index 1f4cc723..862a69d1 100644 --- a/server/schema/resources/aws-securityhub-automationrule.json +++ b/server/schema/resources/aws-securityhub-automationrule.json @@ -191,8 +191,8 @@ "properties": { "Comparison": { "$ref": "#/definitions/StringFilterComparison", - "description": "The condition to apply to a string value when filtering Security Hub findings.\n To search for values that have the filter value, use one of the following comparison operators:\n + To search for values that include the filter value, use ``CONTAINS``. For example, the filter ``Title CONTAINS CloudFront`` matches findings that have a ``Title`` that includes the string CloudFront.\n + To search for values that exactly match the filter value, use ``EQUALS``. For example, the filter ``AwsAccountId EQUALS 123456789012`` only matches findings that have an account ID of ``123456789012``.\n + To search for values that start with the filter value, use ``PREFIX``. For example, the filter ``ResourceRegion PREFIX us`` matches findings that have a ``ResourceRegion`` that starts with ``us``. A ``ResourceRegion`` that starts with a different value, such as ``af``, ``ap``, or ``ca``, doesn't match.\n \n ``CONTAINS``, ``EQUALS``, and ``PREFIX`` filters on the same field are joined by ``OR``. A finding matches if it matches any one of those filters. For example, the filters ``Title CONTAINS CloudFront OR Title CONTAINS CloudWatch`` match a finding that includes either ``CloudFront``, ``CloudWatch``, or both strings in the title.\n To search for values that don\u2019t have the filter value, use one of the following comparison operators:\n + To search for values that exclude the filter value, use ``NOT_CONTAINS``. For example, the filter ``Title NOT_CONTAINS CloudFront`` matches findings that have a ``Title`` that excludes the string CloudFront.\n + To search for values other than the filter value, use ``NOT_EQUALS``. For example, the filter ``AwsAccountId NOT_EQUALS 123456789012`` only matches findings that have an account ID other than ``123456789012``.\n + To search for values that don't start with the filter value, use ``PREFIX_NOT_EQUALS``. For example, the filter ``ResourceRegion PREFIX_NOT_EQUALS us`` matches findings with a ``ResourceRegion`` that starts with a value other than ``us``.\n \n ``NOT_CONTAINS``, ``NOT_EQUALS``, and ``PREFIX_NOT_EQUALS`` filters on the same field are joined by ``AND``. A finding matches only if it matches all of those filters. For example, the filters ``Title NOT_CONTAINS CloudFront AND Title NOT_CONTAINS CloudWatch`` match a finding that excludes both ``CloudFront`` and ``CloudWatch`` in the title.\n You can\u2019t have both a ``CONTAINS`` filter and a ``NOT_CONTAINS`` filter on the same field. Similarly, you can't provide both an ``EQUALS`` filter and a ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filter on the same field. Combining filters in this way returns an error. ``CONTAINS`` filters can only be used with other ``CONTAINS`` filters. ``NOT_CONTAINS`` filters can only be used with other ``NOT_CONTAINS`` filters. \n You can combine ``PREFIX`` filters with ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters for the same field. Security Hub first processes the ``PREFIX`` filters, and then the ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters.\n For example, for the following filters, Security Hub first identifies findings that have resource types that start with either ``AwsIam`` or ``AwsEc2``. It then excludes findings that have a resource type of ``AwsIamPolicy`` and findings that have a resource type of ``AwsEc2NetworkInterface``.\n + ``ResourceType PREFIX AwsIam`` \n + ``ResourceType PREFIX AwsEc2`` \n + ``ResourceType NOT_EQUALS AwsIamPolicy`` \n + ``ResourceType NOT_EQUALS AwsEc2NetworkInterface`` \n \n ``CONTAINS`` and ``NOT_CONTAINS`` operators can be used only with automation rules. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*.", - "markdownDescription": "The condition to apply to a string value when filtering Security Hub findings.\n To search for values that have the filter value, use one of the following comparison operators:\n + To search for values that include the filter value, use ``CONTAINS``. For example, the filter ``Title CONTAINS CloudFront`` matches findings that have a ``Title`` that includes the string CloudFront.\n + To search for values that exactly match the filter value, use ``EQUALS``. For example, the filter ``AwsAccountId EQUALS 123456789012`` only matches findings that have an account ID of ``123456789012``.\n + To search for values that start with the filter value, use ``PREFIX``. For example, the filter ``ResourceRegion PREFIX us`` matches findings that have a ``ResourceRegion`` that starts with ``us``. A ``ResourceRegion`` that starts with a different value, such as ``af``, ``ap``, or ``ca``, doesn't match.\n \n ``CONTAINS``, ``EQUALS``, and ``PREFIX`` filters on the same field are joined by ``OR``. A finding matches if it matches any one of those filters. For example, the filters ``Title CONTAINS CloudFront OR Title CONTAINS CloudWatch`` match a finding that includes either ``CloudFront``, ``CloudWatch``, or both strings in the title.\n To search for values that don\u2019t have the filter value, use one of the following comparison operators:\n + To search for values that exclude the filter value, use ``NOT_CONTAINS``. For example, the filter ``Title NOT_CONTAINS CloudFront`` matches findings that have a ``Title`` that excludes the string CloudFront.\n + To search for values other than the filter value, use ``NOT_EQUALS``. For example, the filter ``AwsAccountId NOT_EQUALS 123456789012`` only matches findings that have an account ID other than ``123456789012``.\n + To search for values that don't start with the filter value, use ``PREFIX_NOT_EQUALS``. For example, the filter ``ResourceRegion PREFIX_NOT_EQUALS us`` matches findings with a ``ResourceRegion`` that starts with a value other than ``us``.\n \n ``NOT_CONTAINS``, ``NOT_EQUALS``, and ``PREFIX_NOT_EQUALS`` filters on the same field are joined by ``AND``. A finding matches only if it matches all of those filters. For example, the filters ``Title NOT_CONTAINS CloudFront AND Title NOT_CONTAINS CloudWatch`` match a finding that excludes both ``CloudFront`` and ``CloudWatch`` in the title.\n You can\u2019t have both a ``CONTAINS`` filter and a ``NOT_CONTAINS`` filter on the same field. Similarly, you can't provide both an ``EQUALS`` filter and a ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filter on the same field. Combining filters in this way returns an error. ``CONTAINS`` filters can only be used with other ``CONTAINS`` filters. ``NOT_CONTAINS`` filters can only be used with other ``NOT_CONTAINS`` filters. \n You can combine ``PREFIX`` filters with ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters for the same field. Security Hub first processes the ``PREFIX`` filters, and then the ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters.\n For example, for the following filters, Security Hub first identifies findings that have resource types that start with either ``AwsIam`` or ``AwsEc2``. It then excludes findings that have a resource type of ``AwsIamPolicy`` and findings that have a resource type of ``AwsEc2NetworkInterface``.\n + ``ResourceType PREFIX AwsIam`` \n + ``ResourceType PREFIX AwsEc2`` \n + ``ResourceType NOT_EQUALS AwsIamPolicy`` \n + ``ResourceType NOT_EQUALS AwsEc2NetworkInterface`` \n \n ``CONTAINS`` and ``NOT_CONTAINS`` operators can be used only with automation rules. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" + "description": "The condition to apply to a string value when filtering Security Hub findings.\n To search for values that have the filter value, use one of the following comparison operators:\n + To search for values that include the filter value, use ``CONTAINS``. For example, the filter ``Title CONTAINS CloudFront`` matches findings that have a ``Title`` that includes the string CloudFront.\n + To search for values that exactly match the filter value, use ``EQUALS``. For example, the filter ``AwsAccountId EQUALS 123456789012`` only matches findings that have an account ID of ``123456789012``.\n + To search for values that start with the filter value, use ``PREFIX``. For example, the filter ``ResourceRegion PREFIX us`` matches findings that have a ``ResourceRegion`` that starts with ``us``. A ``ResourceRegion`` that starts with a different value, such as ``af``, ``ap``, or ``ca``, doesn't match.\n \n ``CONTAINS``, ``EQUALS``, and ``PREFIX`` filters on the same field are joined by ``OR``. A finding matches if it matches any one of those filters. For example, the filters ``Title CONTAINS CloudFront OR Title CONTAINS CloudWatch`` match a finding that includes either ``CloudFront``, ``CloudWatch``, or both strings in the title.\n To search for values that don\u2019t have the filter value, use one of the following comparison operators:\n + To search for values that exclude the filter value, use ``NOT_CONTAINS``. For example, the filter ``Title NOT_CONTAINS CloudFront`` matches findings that have a ``Title`` that excludes the string CloudFront.\n + To search for values other than the filter value, use ``NOT_EQUALS``. For example, the filter ``AwsAccountId NOT_EQUALS 123456789012`` only matches findings that have an account ID other than ``123456789012``.\n + To search for values that don't start with the filter value, use ``PREFIX_NOT_EQUALS``. For example, the filter ``ResourceRegion PREFIX_NOT_EQUALS us`` matches findings with a ``ResourceRegion`` that starts with a value other than ``us``.\n \n ``NOT_CONTAINS``, ``NOT_EQUALS``, and ``PREFIX_NOT_EQUALS`` filters on the same field are joined by ``AND``. A finding matches only if it matches all of those filters. For example, the filters ``Title NOT_CONTAINS CloudFront AND Title NOT_CONTAINS CloudWatch`` match a finding that excludes both ``CloudFront`` and ``CloudWatch`` in the title.\n You can\u2019t have both a ``CONTAINS`` filter and a ``NOT_CONTAINS`` filter on the same field. Similarly, you can't provide both an ``EQUALS`` filter and a ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filter on the same field. Combining filters in this way returns an error. ``CONTAINS`` filters can only be used with other ``CONTAINS`` filters. ``NOT_CONTAINS`` filters can only be used with other ``NOT_CONTAINS`` filters. \n You can combine ``PREFIX`` filters with ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters for the same field. Security Hub first processes the ``PREFIX`` filters, and then the ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters.\n For example, for the following filters, Security Hub first identifies findings that have resource types that start with either ``AwsIam`` or ``AwsEc2``. It then excludes findings that have a resource type of ``AwsIamPolicy`` and findings that have a resource type of ``AwsEc2NetworkInterface``.\n + ``ResourceType PREFIX AwsIam`` \n + ``ResourceType PREFIX AwsEc2`` \n + ``ResourceType NOT_EQUALS AwsIamPolicy`` \n + ``ResourceType NOT_EQUALS AwsEc2NetworkInterface`` \n \n ``CONTAINS`` and ``NOT_CONTAINS`` operators can be used only with automation rules V1. ``CONTAINS_WORD`` operator is only supported in ``GetFindingsV2``, ``GetFindingStatisticsV2``, ``GetResourcesV2``, and ``GetResourceStatisticsV2`` APIs. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*.", + "markdownDescription": "The condition to apply to a string value when filtering Security Hub findings.\n To search for values that have the filter value, use one of the following comparison operators:\n + To search for values that include the filter value, use ``CONTAINS``. For example, the filter ``Title CONTAINS CloudFront`` matches findings that have a ``Title`` that includes the string CloudFront.\n + To search for values that exactly match the filter value, use ``EQUALS``. For example, the filter ``AwsAccountId EQUALS 123456789012`` only matches findings that have an account ID of ``123456789012``.\n + To search for values that start with the filter value, use ``PREFIX``. For example, the filter ``ResourceRegion PREFIX us`` matches findings that have a ``ResourceRegion`` that starts with ``us``. A ``ResourceRegion`` that starts with a different value, such as ``af``, ``ap``, or ``ca``, doesn't match.\n \n ``CONTAINS``, ``EQUALS``, and ``PREFIX`` filters on the same field are joined by ``OR``. A finding matches if it matches any one of those filters. For example, the filters ``Title CONTAINS CloudFront OR Title CONTAINS CloudWatch`` match a finding that includes either ``CloudFront``, ``CloudWatch``, or both strings in the title.\n To search for values that don\u2019t have the filter value, use one of the following comparison operators:\n + To search for values that exclude the filter value, use ``NOT_CONTAINS``. For example, the filter ``Title NOT_CONTAINS CloudFront`` matches findings that have a ``Title`` that excludes the string CloudFront.\n + To search for values other than the filter value, use ``NOT_EQUALS``. For example, the filter ``AwsAccountId NOT_EQUALS 123456789012`` only matches findings that have an account ID other than ``123456789012``.\n + To search for values that don't start with the filter value, use ``PREFIX_NOT_EQUALS``. For example, the filter ``ResourceRegion PREFIX_NOT_EQUALS us`` matches findings with a ``ResourceRegion`` that starts with a value other than ``us``.\n \n ``NOT_CONTAINS``, ``NOT_EQUALS``, and ``PREFIX_NOT_EQUALS`` filters on the same field are joined by ``AND``. A finding matches only if it matches all of those filters. For example, the filters ``Title NOT_CONTAINS CloudFront AND Title NOT_CONTAINS CloudWatch`` match a finding that excludes both ``CloudFront`` and ``CloudWatch`` in the title.\n You can\u2019t have both a ``CONTAINS`` filter and a ``NOT_CONTAINS`` filter on the same field. Similarly, you can't provide both an ``EQUALS`` filter and a ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filter on the same field. Combining filters in this way returns an error. ``CONTAINS`` filters can only be used with other ``CONTAINS`` filters. ``NOT_CONTAINS`` filters can only be used with other ``NOT_CONTAINS`` filters. \n You can combine ``PREFIX`` filters with ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters for the same field. Security Hub first processes the ``PREFIX`` filters, and then the ``NOT_EQUALS`` or ``PREFIX_NOT_EQUALS`` filters.\n For example, for the following filters, Security Hub first identifies findings that have resource types that start with either ``AwsIam`` or ``AwsEc2``. It then excludes findings that have a resource type of ``AwsIamPolicy`` and findings that have a resource type of ``AwsEc2NetworkInterface``.\n + ``ResourceType PREFIX AwsIam`` \n + ``ResourceType PREFIX AwsEc2`` \n + ``ResourceType NOT_EQUALS AwsIamPolicy`` \n + ``ResourceType NOT_EQUALS AwsEc2NetworkInterface`` \n \n ``CONTAINS`` and ``NOT_CONTAINS`` operators can be used only with automation rules V1. ``CONTAINS_WORD`` operator is only supported in ``GetFindingsV2``, ``GetFindingStatisticsV2``, ``GetResourcesV2``, and ``GetResourceStatisticsV2`` APIs. For more information, see [Automation rules](https://docs.aws.amazon.com/securityhub/latest/userguide/automation-rules.html) in the *User Guide*.\n\n---\n\nRequired: Yes \nType: \nUpdate requires: No interruption\n" }, "Value": { "description": "The string filter value. Filter values are case sensitive. For example, the product name for control-based findings is ``Security Hub``. If you provide ``security hub`` as the filter value, there's no match.", diff --git a/server/schema/resources/aws-securityhub-automationrulev2.json b/server/schema/resources/aws-securityhub-automationrulev2.json new file mode 100644 index 00000000..9c9d7b2f --- /dev/null +++ b/server/schema/resources/aws-securityhub-automationrulev2.json @@ -0,0 +1,659 @@ +{ + "typeName": "AWS::SecurityHub::AutomationRuleV2", + "description": "Resource schema for AWS::SecurityHub::AutomationRuleV2", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", + "definitions": { + "Tags": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "additionalProperties": false, + "patternProperties": { + "^(?!aws:)[a-zA-Z+-=._:/]{1,128}$": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OcsfFindingFilters": { + "description": "The filtering conditions that align with OCSF standards", + "type": "object", + "additionalProperties": false, + "properties": { + "CompositeFilters": { + "description": "Enables the creation of complex filtering conditions by combining filter", + "type": "array", + "insertionOrder": true, + "uniqueItems": true, + "items": { + "$ref": "#/definitions/CompositeFilter" + }, + "markdownDescription": "Enables the creation of complex filtering conditions by combining filter\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "CompositeOperator": { + "$ref": "#/definitions/AllowedOperators" + } + }, + "markdownDescription": "The filtering conditions that align with OCSF standards\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CompositeFilter": { + "description": "Enables the creation of filtering criteria for security findings", + "type": "object", + "additionalProperties": false, + "properties": { + "StringFilters": { + "description": "Enables filtering based on string field values", + "type": "array", + "insertionOrder": true, + "uniqueItems": true, + "items": { + "$ref": "#/definitions/OcsfStringFilter" + }, + "minItems": 1, + "maxItems": 20, + "markdownDescription": "Enables filtering based on string field values\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "DateFilters": { + "description": "Enables filtering based on date and timestamp fields", + "type": "array", + "insertionOrder": true, + "uniqueItems": true, + "items": { + "$ref": "#/definitions/OcsfDateFilter" + }, + "minItems": 1, + "maxItems": 20, + "markdownDescription": "Enables filtering based on date and timestamp fields\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "BooleanFilters": { + "description": "Enables filtering based on boolean field values", + "type": "array", + "insertionOrder": true, + "uniqueItems": true, + "items": { + "$ref": "#/definitions/OcsfBooleanFilter" + }, + "minItems": 1, + "maxItems": 20, + "markdownDescription": "Enables filtering based on boolean field values\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "NumberFilters": { + "description": "Enables filtering based on numerical field values", + "type": "array", + "insertionOrder": true, + "uniqueItems": true, + "items": { + "$ref": "#/definitions/OcsfNumberFilter" + }, + "minItems": 1, + "maxItems": 20, + "markdownDescription": "Enables filtering based on numerical field values\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "MapFilters": { + "description": "Enables filtering based on map field value", + "items": { + "$ref": "#/definitions/OcsfMapFilter" + }, + "type": "array", + "minItems": 1, + "maxItems": 20, + "markdownDescription": "Enables filtering based on map field value\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Operator": { + "$ref": "#/definitions/AllowedOperators" + } + }, + "markdownDescription": "Enables the creation of filtering criteria for security findings\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OcsfStringFilter": { + "description": "Enables filtering of security findings based on string field values in OCSF", + "type": "object", + "additionalProperties": false, + "properties": { + "FieldName": { + "$ref": "#/definitions/OcsfStringField" + }, + "Filter": { + "$ref": "#/definitions/StringFilter" + } + }, + "required": [ + "FieldName", + "Filter" + ], + "markdownDescription": "Enables filtering of security findings based on string field values in OCSF\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OcsfDateFilter": { + "description": "Enables filtering of security findings based on date and timestamp fields in OCSF", + "type": "object", + "additionalProperties": false, + "properties": { + "FieldName": { + "type": "string", + "description": "The name of the field", + "enum": [ + "finding_info.created_time_dt", + "finding_info.first_seen_time_dt", + "finding_info.last_seen_time_dt", + "finding_info.modified_time_dt" + ], + "markdownDescription": "The name of the field\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: finding_info.created_time_dt | finding_info.first_seen_time_dt | finding_info.last_seen_time_dt | finding_info.modified_time_dt \nUpdate requires: No interruption\n" + }, + "Filter": { + "$ref": "#/definitions/DateFilter" + } + }, + "required": [ + "FieldName", + "Filter" + ], + "markdownDescription": "Enables filtering of security findings based on date and timestamp fields in OCSF\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OcsfBooleanFilter": { + "description": "Enables filtering of security findings based on boolean field values in OCSF", + "type": "object", + "additionalProperties": false, + "properties": { + "FieldName": { + "description": "The name of the field", + "type": "string", + "enum": [ + "compliance.assessments.meets_criteria", + "vulnerabilities.is_exploit_available", + "vulnerabilities.is_fix_available" + ], + "markdownDescription": "The name of the field\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: compliance.assessments.meets_criteria | vulnerabilities.is_exploit_available | vulnerabilities.is_fix_available \nUpdate requires: No interruption\n" + }, + "Filter": { + "$ref": "#/definitions/BooleanFilter" + } + }, + "required": [ + "FieldName", + "Filter" + ], + "markdownDescription": "Enables filtering of security findings based on boolean field values in OCSF\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OcsfNumberFilter": { + "description": "Enables filtering of security findings based on numerical field values in OCSF", + "type": "object", + "additionalProperties": false, + "properties": { + "FieldName": { + "description": "The name of the field", + "type": "string", + "enum": [ + "activity_id", + "compliance.status_id", + "confidence_score", + "severity_id", + "status_id", + "finding_info.related_events_count" + ], + "markdownDescription": "The name of the field\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: activity_id | compliance.status_id | confidence_score | severity_id | status_id | finding_info.related_events_count \nUpdate requires: No interruption\n" + }, + "Filter": { + "$ref": "#/definitions/NumberFilter" + } + }, + "required": [ + "FieldName", + "Filter" + ], + "markdownDescription": "Enables filtering of security findings based on numerical field values in OCSF\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OcsfMapFilter": { + "description": "Enables filtering of security findings based on map field values in OCSF", + "properties": { + "FieldName": { + "description": "The name of the field", + "enum": [ + "resources.tags" + ], + "type": "string", + "markdownDescription": "The name of the field\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: resources.tags \nUpdate requires: No interruption\n" + }, + "Filter": { + "$ref": "#/definitions/MapFilter" + } + }, + "required": [ + "FieldName", + "Filter" + ], + "type": "object", + "additionalProperties": false, + "markdownDescription": "Enables filtering of security findings based on map field values in OCSF\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "StringFilter": { + "description": "A string filter for filtering findings", + "type": "object", + "additionalProperties": false, + "properties": { + "Value": { + "description": "The string filter value", + "type": "string", + "minLength": 1, + "maxLength": 4096, + "markdownDescription": "The string filter value\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" + }, + "Comparison": { + "description": "The condition to apply to a string value when filtering findings", + "type": "string", + "enum": [ + "EQUALS", + "PREFIX", + "NOT_EQUALS", + "PREFIX_NOT_EQUALS", + "CONTAINS" + ], + "markdownDescription": "The condition to apply to a string value when filtering findings\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: EQUALS | PREFIX | NOT_EQUALS | PREFIX_NOT_EQUALS | CONTAINS \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value", + "Comparison" + ], + "markdownDescription": "A string filter for filtering findings\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DateFilter": { + "description": "A date filter for querying findings", + "type": "object", + "additionalProperties": false, + "properties": { + "DateRange": { + "$ref": "#/definitions/DateRange" + }, + "End": { + "$ref": "#/definitions/ISO8601DateString" + }, + "Start": { + "$ref": "#/definitions/ISO8601DateString" + } + }, + "markdownDescription": "A date filter for querying findings\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DateRange": { + "description": "A date range for the date filter", + "properties": { + "Unit": { + "description": "A date range unit for the date filter", + "enum": [ + "DAYS" + ], + "type": "string", + "markdownDescription": "A date range unit for the date filter\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: DAYS \nUpdate requires: No interruption\n" + }, + "Value": { + "description": "A date range value for the date filter", + "type": "number", + "markdownDescription": "A date range value for the date filter\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Unit", + "Value" + ], + "type": "object", + "additionalProperties": false, + "markdownDescription": "A date range for the date filter\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "BooleanFilter": { + "description": "Boolean filter for querying findings", + "type": "object", + "additionalProperties": false, + "properties": { + "Value": { + "description": "The value of the boolean", + "type": "boolean", + "markdownDescription": "The value of the boolean\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Value" + ], + "markdownDescription": "Boolean filter for querying findings\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "NumberFilter": { + "type": "object", + "description": "A number filter for querying findings", + "additionalProperties": false, + "properties": { + "Eq": { + "description": "The equal-to condition to be applied to a single field when querying for findings", + "type": "number", + "markdownDescription": "The equal-to condition to be applied to a single field when querying for findings\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "Gte": { + "description": "The greater-than-equal condition to be applied to a single field when querying for findings", + "type": "number", + "markdownDescription": "The greater-than-equal condition to be applied to a single field when querying for findings\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + }, + "Lte": { + "description": "The less-than-equal condition to be applied to a single field when querying for findings", + "type": "number", + "markdownDescription": "The less-than-equal condition to be applied to a single field when querying for findings\n\n---\n\nRequired: No \nType: Number \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "A number filter for querying findings\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "MapFilter": { + "description": "A map filter for filtering findings", + "properties": { + "Comparison": { + "description": "The condition to apply to the key value when filtering findings with a map filter", + "enum": [ + "EQUALS", + "NOT_EQUALS" + ], + "type": "string", + "markdownDescription": "The condition to apply to the key value when filtering findings with a map filter\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: EQUALS | NOT_EQUALS \nUpdate requires: No interruption\n" + }, + "Key": { + "description": "The key of the map filter", + "type": "string", + "minLength": 1, + "maxLength": 4096, + "markdownDescription": "The key of the map filter\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" + }, + "Value": { + "description": "The value for the key in the map filter", + "type": "string", + "minLength": 1, + "maxLength": 4096, + "markdownDescription": "The value for the key in the map filter\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 4096 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Comparison", + "Key", + "Value" + ], + "type": "object", + "additionalProperties": false, + "markdownDescription": "A map filter for filtering findings\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OcsfStringField": { + "description": "The name of the field", + "type": "string", + "enum": [ + "metadata.uid", + "activity_name", + "cloud.account.name", + "cloud.account.uid", + "cloud.provider", + "cloud.region", + "compliance.assessments.category", + "compliance.assessments.name", + "compliance.control", + "compliance.status", + "compliance.standards", + "finding_info.desc", + "finding_info.src_url", + "finding_info.title", + "finding_info.types", + "finding_info.uid", + "finding_info.related_events.uid", + "finding_info.related_events.product.uid", + "finding_info.related_events.title", + "metadata.product.feature.uid", + "metadata.product.name", + "metadata.product.uid", + "metadata.product.vendor_name", + "remediation.desc", + "remediation.references", + "resources.cloud_partition", + "resources.name", + "resources.region", + "resources.type", + "resources.uid", + "severity", + "status", + "comment", + "vulnerabilities.fix_coverage", + "class_name" + ], + "markdownDescription": "The name of the field\n\n---\n\nRequired: No \nType: String \nAllowed Values: metadata.uid | activity_name | cloud.account.name | cloud.account.uid | cloud.provider | cloud.region | compliance.assessments.category | compliance.assessments.name | compliance.control | compliance.status | compliance.standards | finding_info.desc | finding_info.src_url | finding_info.title | finding_info.types | finding_info.uid | finding_info.related_events.uid | finding_info.related_events.product.uid | finding_info.related_events.title | metadata.product.feature.uid | metadata.product.name | metadata.product.uid | metadata.product.vendor_name | remediation.desc | remediation.references | resources.cloud_partition | resources.name | resources.region | resources.type | resources.uid | severity | status | comment | vulnerabilities.fix_coverage | class_name \nUpdate requires: No interruption\n" + }, + "AllowedOperators": { + "description": "The logical operator used to combine multiple conditions", + "type": "string", + "enum": [ + "AND", + "OR" + ], + "markdownDescription": "The logical operator used to combine multiple conditions\n\n---\n\nRequired: No \nType: String \nAllowed Values: AND | OR \nUpdate requires: No interruption\n" + }, + "ISO8601DateString": { + "description": "The timestamp formatted in ISO8601", + "type": "string", + "markdownDescription": "The timestamp formatted in ISO8601\n\n---\n\nRequired: No \nType: String \nPattern: ^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$ \nUpdate requires: No interruption\n" + }, + "Criteria": { + "type": "object", + "description": "Defines the parameters and conditions used to evaluate and filter security findings", + "additionalProperties": false, + "properties": { + "OcsfFindingCriteria": { + "$ref": "#/definitions/OcsfFindingFilters" + } + }, + "markdownDescription": "Defines the parameters and conditions used to evaluate and filter security findings\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AutomationRulesActionV2": { + "description": "Allows you to configure automated responses", + "type": "object", + "additionalProperties": false, + "properties": { + "Type": { + "description": "The category of action to be executed by the automation rule", + "type": "string", + "enum": [ + "FINDING_FIELDS_UPDATE", + "EXTERNAL_INTEGRATION" + ], + "markdownDescription": "The category of action to be executed by the automation rule\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: FINDING_FIELDS_UPDATE | EXTERNAL_INTEGRATION \nUpdate requires: No interruption\n" + }, + "FindingFieldsUpdate": { + "$ref": "#/definitions/AutomationRulesFindingFieldsUpdateV2" + }, + "ExternalIntegrationConfiguration": { + "$ref": "#/definitions/ExternalIntegrationConfiguration" + } + }, + "required": [ + "Type" + ], + "markdownDescription": "Allows you to configure automated responses\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AutomationRulesFindingFieldsUpdateV2": { + "description": "The changes to be applied to fields in a security finding when an automation rule is triggered", + "type": "object", + "additionalProperties": false, + "properties": { + "SeverityId": { + "description": "The severity level to be assigned to findings that match the automation rule criteria", + "type": "integer", + "markdownDescription": "The severity level to be assigned to findings that match the automation rule criteria\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "Comment": { + "description": "Notes or contextual information for findings that are modified by the automation rule", + "type": "string", + "markdownDescription": "Notes or contextual information for findings that are modified by the automation rule\n\n---\n\nRequired: No \nType: String \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "StatusId": { + "description": "The status to be applied to findings that match automation rule criteria", + "type": "integer", + "markdownDescription": "The status to be applied to findings that match automation rule criteria\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "The changes to be applied to fields in a security finding when an automation rule is triggered\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ExternalIntegrationConfiguration": { + "description": "The settings for integrating automation rule actions with external systems or service", + "type": "object", + "additionalProperties": false, + "properties": { + "ConnectorArn": { + "description": "The ARN of the connector that establishes the integration", + "type": "string", + "markdownDescription": "The ARN of the connector that establishes the integration\n\n---\n\nRequired: No \nType: String \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + } + }, + "markdownDescription": "The settings for integrating automation rule actions with external systems or service\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "RuleName": { + "description": "The name of the automation rule", + "type": "string", + "minLength": 1, + "maxLength": 256, + "markdownDescription": "The name of the automation rule\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "RuleStatus": { + "description": "The status of the automation rule", + "type": "string", + "enum": [ + "ENABLED", + "DISABLED" + ], + "markdownDescription": "The status of the automation rule\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" + }, + "Description": { + "description": "A description of the automation rule", + "type": "string", + "minLength": 1, + "maxLength": 256, + "markdownDescription": "A description of the automation rule\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "RuleOrder": { + "description": "The value for the rule priority", + "type": "number", + "minimum": 1.0, + "maximum": 1000.0, + "markdownDescription": "The value for the rule priority\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + }, + "Criteria": { + "$ref": "#/definitions/Criteria" + }, + "Actions": { + "description": "A list of actions to be performed when the rule criteria is met", + "type": "array", + "insertionOrder": true, + "uniqueItems": true, + "items": { + "$ref": "#/definitions/AutomationRulesActionV2" + }, + "minItems": 1, + "maxItems": 1, + "markdownDescription": "A list of actions to be performed when the rule criteria is met\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "Tags": { + "$ref": "#/definitions/Tags" + }, + "RuleArn": { + "description": "The ARN of the automation rule", + "type": "string", + "markdownDescription": "The ARN of the automation rule\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws\\S*:securityhub:[a-z0-9-]+:[0-9]{12}:automation-rulev2/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "RuleId": { + "description": "The ID of the automation rule", + "type": "string", + "markdownDescription": "The ID of the automation rule\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreatedAt": { + "$ref": "#/definitions/ISO8601DateString" + }, + "UpdatedAt": { + "$ref": "#/definitions/ISO8601DateString" + } + }, + "required": [ + "RuleName", + "Description", + "RuleOrder", + "Criteria", + "Actions" + ], + "readOnlyProperties": [ + "/properties/RuleArn", + "/properties/RuleId", + "/properties/CreatedAt", + "/properties/UpdatedAt" + ], + "primaryIdentifier": [ + "/properties/RuleArn" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "securityhub:ListTagsForResource", + "securityhub:TagResource", + "securityhub:UntagResource" + ] + }, + "additionalProperties": false, + "handlers": { + "create": { + "permissions": [ + "securityhub:CreateAutomationRuleV2", + "securityhub:GetAutomationRuleV2", + "securityhub:TagResource", + "securityhub:ListTagsForResource" + ] + }, + "read": { + "permissions": [ + "securityhub:GetAutomationRuleV2", + "securityhub:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "securityhub:UpdateAutomationRuleV2", + "securityhub:GetAutomationRuleV2", + "securityhub:TagResource", + "securityhub:UntagResource", + "securityhub:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "securityhub:GetAutomationRuleV2", + "securityhub:DeleteAutomationRuleV2" + ] + }, + "list": { + "permissions": [ + "securityhub:ListAutomationRulesV2", + "securityhub:ListTagsForResource" + ] + } + }, + "attributes": { + "RuleArn": { + "description": "The ARN of the automation rule", + "type": "string", + "markdownDescription": "The ARN of the automation rule\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:aws\\S*:securityhub:[a-z0-9-]+:[0-9]{12}:automation-rulev2/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "RuleId": { + "description": "The ID of the automation rule", + "type": "string", + "markdownDescription": "The ID of the automation rule\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreatedAt": { + "$ref": "#/definitions/ISO8601DateString" + }, + "UpdatedAt": { + "$ref": "#/definitions/ISO8601DateString" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-securityhub-hubv2.json b/server/schema/resources/aws-securityhub-hubv2.json new file mode 100644 index 00000000..a22dfede --- /dev/null +++ b/server/schema/resources/aws-securityhub-hubv2.json @@ -0,0 +1,107 @@ +{ + "typeName": "AWS::SecurityHub::HubV2", + "description": "The AWS::SecurityHub::HubV2 resource represents the implementation of the AWS Security Hub V2 service in your account. Only one hubv2 resource can created in each region in which you enable Security Hub V2.", + "sourceUrl": "https://placeholder.notreal", + "definitions": { + "Tags": { + "description": "A key-value pair to associate with the Security Hub V2 resource. You can specify a key that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "type": "object", + "patternProperties": { + "^(?!aws:)[a-zA-Z+-=._:/]{1,128}$": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length.", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length.\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "maxProperties": 50, + "markdownDescription": "A key-value pair to associate with the Security Hub V2 resource. You can specify a key that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ISO8601DateString": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$ \nUpdate requires: No interruption\n" + } + }, + "properties": { + "HubV2Arn": { + "description": "The Amazon Resource Name of the Security Hub V2 resource.", + "type": "string", + "markdownDescription": "The Amazon Resource Name of the Security Hub V2 resource.\n\n---\n\nRequired: No \nType: String \nPattern: arn:aws(?:-[a-z]+)*:securityhub:[a-z0-9-]+:\\d{12}:hubv2/[^/](.{0,1022}[^/:])?$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SubscribedAt": { + "$ref": "#/definitions/ISO8601DateString" + }, + "Tags": { + "$ref": "#/definitions/Tags" + } + }, + "replacementStrategy": "delete_then_create", + "additionalProperties": false, + "primaryIdentifier": [ + "/properties/HubV2Arn" + ], + "readOnlyProperties": [ + "/properties/HubV2Arn", + "/properties/SubscribedAt" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "securityhub:ListTagsForResource", + "securityhub:TagResource", + "securityhub:UntagResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "securityhub:EnableSecurityHubV2", + "securityhub:DescribeSecurityHubV2", + "securityhub:TagResource", + "iam:CreateServiceLinkedRole" + ] + }, + "read": { + "permissions": [ + "securityhub:DescribeSecurityHubV2", + "securityhub:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "securityhub:DescribeSecurityHubV2", + "securityhub:TagResource", + "securityhub:UntagResource", + "securityhub:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "securityhub:DescribeSecurityHubV2", + "securityhub:DisableSecurityHubV2" + ] + }, + "list": { + "permissions": [ + "securityhub:DescribeSecurityHubV2", + "securityhub:ListTagsForResource" + ] + } + }, + "attributes": { + "HubV2Arn": { + "description": "The Amazon Resource Name of the Security Hub V2 resource.", + "type": "string", + "markdownDescription": "The Amazon Resource Name of the Security Hub V2 resource.\n\n---\n\nRequired: No \nType: String \nPattern: arn:aws(?:-[a-z]+)*:securityhub:[a-z0-9-]+:\\d{12}:hubv2/[^/](.{0,1022}[^/:])?$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SubscribedAt": { + "$ref": "#/definitions/ISO8601DateString" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-ses-configurationset.json b/server/schema/resources/aws-ses-configurationset.json index c468d4da..ef7482c2 100644 --- a/server/schema/resources/aws-ses-configurationset.json +++ b/server/schema/resources/aws-ses-configurationset.json @@ -3,6 +3,29 @@ "description": "Resource schema for AWS::SES::ConfigurationSet.", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses.git", "definitions": { + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "TrackingOptions": { "description": "An object that defines the open and click tracking options for emails that you send using the configuration set.", "type": "object", @@ -161,6 +184,17 @@ }, "VdmOptions": { "$ref": "#/definitions/VdmOptions" + }, + "Tags": { + "description": "The tags (keys and values) associated with the contact list.", + "type": "array", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "minItems": 0, + "maxItems": 50, + "markdownDescription": "The tags (keys and values) associated with the contact list.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "createOnlyProperties": [ @@ -169,12 +203,27 @@ "primaryIdentifier": [ "/properties/Name" ], - "taggable": false, "additionalProperties": false, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource" + ] + }, "handlers": { "create": { "permissions": [ - "ses:CreateConfigurationSet" + "ses:CreateConfigurationSet", + "ses:UntagResource", + "ses:TagResource", + "ses:DescribeConfigurationSet", + "ses:GetConfigurationSet" ] }, "read": { @@ -190,7 +239,10 @@ "ses:PutConfigurationSetReputationOptions", "ses:PutConfigurationSetSendingOptions", "ses:PutConfigurationSetSuppressionOptions", - "ses:PutConfigurationSetVdmOptions" + "ses:PutConfigurationSetVdmOptions", + "ses:DescribeConfigurationSet", + "ses:UntagResource", + "ses:TagResource" ] }, "delete": { diff --git a/server/schema/resources/aws-ses-configurationseteventdestination.json b/server/schema/resources/aws-ses-configurationseteventdestination.json index b0b0dbe9..703d5307 100644 --- a/server/schema/resources/aws-ses-configurationseteventdestination.json +++ b/server/schema/resources/aws-ses-configurationseteventdestination.json @@ -178,7 +178,9 @@ } }, "additionalProperties": false, - "taggable": false, + "tagging": { + "taggable": false + }, "required": [ "ConfigurationSetName", "EventDestination" @@ -216,6 +218,22 @@ "ses:GetConfigurationSetEventDestinations", "ses:DescribeConfigurationSet" ] + }, + "list": { + "handlerSchema": { + "properties": { + "ConfigurationSetName": { + "$ref": "resource-schema.json#/properties/ConfigurationSetName" + } + }, + "required": [ + "ConfigurationSetName" + ] + }, + "permissions": [ + "ses:GetConfigurationSetEventDestinations", + "ses:DescribeConfigurationSet" + ] } }, "attributes": { diff --git a/server/schema/resources/aws-ses-contactlist.json b/server/schema/resources/aws-ses-contactlist.json index 5a7a61db..e5ca22b8 100644 --- a/server/schema/resources/aws-ses-contactlist.json +++ b/server/schema/resources/aws-ses-contactlist.json @@ -104,27 +104,45 @@ "primaryIdentifier": [ "/properties/ContactListName" ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource" + ] + }, "handlers": { "create": { "permissions": [ - "ses:CreateContactList" + "ses:CreateContactList", + "ses:UntagResource", + "ses:TagResource", + "ses:GetContactList" ] }, "read": { "permissions": [ - "ses:GetContactList" + "ses:GetContactList", + "ses:ListTagsForResource" ] }, "update": { "permissions": [ "ses:UpdateContactList", "ses:UntagResource", - "ses:TagResource" + "ses:TagResource", + "ses:GetContactList" ] }, "delete": { "permissions": [ - "ses:DeleteContactList" + "ses:DeleteContactList", + "ses:GetContactList" ] }, "list": { diff --git a/server/schema/resources/aws-ses-dedicatedippool.json b/server/schema/resources/aws-ses-dedicatedippool.json index 5ca6dbe1..eb0ecb74 100644 --- a/server/schema/resources/aws-ses-dedicatedippool.json +++ b/server/schema/resources/aws-ses-dedicatedippool.json @@ -2,6 +2,31 @@ "typeName": "AWS::SES::DedicatedIpPool", "description": "Resource Type definition for AWS::SES::DedicatedIpPool", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses.git", + "definitions": { + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, "properties": { "PoolName": { "type": "string", @@ -12,6 +37,17 @@ "type": "string", "description": "Specifies whether the dedicated IP pool is managed or not. The default value is STANDARD.", "markdownDescription": "Specifies whether the dedicated IP pool is managed or not. The default value is STANDARD.\n\n---\n\nRequired: No \nType: String \nPattern: ^(STANDARD|MANAGED)$ \nUpdate requires: Some interruptions\n" + }, + "Tags": { + "description": "The tags (keys and values) associated with the dedicated IP pool.", + "type": "array", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "minItems": 0, + "maxItems": 50, + "markdownDescription": "The tags (keys and values) associated with the dedicated IP pool.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "additionalProperties": false, @@ -24,24 +60,42 @@ "primaryIdentifier": [ "/properties/PoolName" ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource" + ] + }, "handlers": { "create": { "permissions": [ "ses:CreateDedicatedIpPool", "ses:GetDedicatedIpPool", - "ses:GetDedicatedIps" + "ses:GetDedicatedIps", + "ses:TagResource", + "ses:UntagResource" ] }, "read": { "permissions": [ "ses:GetDedicatedIpPool", - "ses:GetDedicatedIps" + "ses:GetDedicatedIps", + "ses:ListTagsForResource" ] }, "update": { "permissions": [ "ses:PutDedicatedIpPoolScalingAttributes", - "ses:GetDedicatedIpPool" + "ses:GetDedicatedIpPool", + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource" ] }, "delete": { diff --git a/server/schema/resources/aws-ses-emailidentity.json b/server/schema/resources/aws-ses-emailidentity.json index e6098436..aad705cb 100644 --- a/server/schema/resources/aws-ses-emailidentity.json +++ b/server/schema/resources/aws-ses-emailidentity.json @@ -47,9 +47,43 @@ "DkimDNSTokenValue3": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "description": "The tags (keys and values) associated with the email identity.", + "type": "array", + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "minItems": 0, + "maxItems": 50, + "markdownDescription": "The tags (keys and values) associated with the email identity.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "definitions": { + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "DkimSigningAttributes": { "type": "object", "additionalProperties": false, @@ -152,6 +186,17 @@ "/properties/DkimSigningAttributes/DomainSigningSelector", "/properties/DkimSigningAttributes/DomainSigningPrivateKey" ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": false, + "tagProperty": "/properties/Tags", + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ] + }, "handlers": { "create": { "permissions": [ @@ -159,7 +204,9 @@ "ses:PutEmailIdentityMailFromAttributes", "ses:PutEmailIdentityFeedbackAttributes", "ses:PutEmailIdentityDkimAttributes", - "ses:GetEmailIdentity" + "ses:GetEmailIdentity", + "ses:TagResource", + "ses:UntagResource" ] }, "read": { @@ -174,7 +221,9 @@ "ses:PutEmailIdentityConfigurationSetAttributes", "ses:PutEmailIdentityDkimSigningAttributes", "ses:PutEmailIdentityDkimAttributes", - "ses:GetEmailIdentity" + "ses:GetEmailIdentity", + "ses:TagResource", + "ses:UntagResource" ] }, "delete": { diff --git a/server/schema/resources/aws-ses-template.json b/server/schema/resources/aws-ses-template.json index 5b857bec..5c0b660b 100644 --- a/server/schema/resources/aws-ses-template.json +++ b/server/schema/resources/aws-ses-template.json @@ -56,6 +56,9 @@ "createOnlyProperties": [ "/properties/Template/TemplateName" ], + "tagging": { + "taggable": false + }, "handlers": { "create": { "permissions": [ diff --git a/server/schema/resources/aws-sqs-queue.json b/server/schema/resources/aws-sqs-queue.json index 8a6a532d..0b8026a6 100644 --- a/server/schema/resources/aws-sqs-queue.json +++ b/server/schema/resources/aws-sqs-queue.json @@ -146,7 +146,12 @@ "tagOnCreate": true, "tagUpdatable": true, "cloudFormationSystemTags": true, - "tagProperty": "/properties/Tags" + "tagProperty": "/properties/Tags", + "permissions": [ + "sqs:TagQueue", + "sqs:UntagQueue", + "sqs:ListQueueTags" + ] }, "handlers": { "create": { diff --git a/server/schema/resources/aws-ssm-parameter.json b/server/schema/resources/aws-ssm-parameter.json index 3c591664..a0d457a5 100644 --- a/server/schema/resources/aws-ssm-parameter.json +++ b/server/schema/resources/aws-ssm-parameter.json @@ -1,16 +1,16 @@ { "typeName": "AWS::SSM::Parameter", - "description": "The ``AWS::SSM::Parameter`` resource creates an SSM parameter in SYSlong Parameter Store.\n To create an SSM parameter, you must have the IAMlong (IAM) permissions ``ssm:PutParameter`` and ``ssm:AddTagsToResource``. On stack creation, CFNlong adds the following three tags to the parameter: ``aws:cloudformation:stack-name``, ``aws:cloudformation:logical-id``, and ``aws:cloudformation:stack-id``, in addition to any custom tags you specify.\n To add, update, or remove tags during stack update, you must have IAM permissions for both ``ssm:AddTagsToResource`` and ``ssm:RemoveTagsFromResource``. For more information, see [Managing Access Using Policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-iam.html#security_iam_access-manage) in the *User Guide*.\n For information about valid values for parameters, see [About requirements and constraints for parameter names](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html#sysman-parameter-name-constraints) in the *User Guide* and [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html) in the *API Reference*.", + "description": "The ``AWS::SSM::Parameter`` resource creates an SSM parameter in SYSlong Parameter Store.\n To create an SSM parameter, you must have the IAMlong (IAM) permissions ``ssm:PutParameter`` and ``ssm:AddTagsToResource``. On stack creation, CFNlong adds the following three tags to the parameter: ``aws:cloudformation:stack-name``, ``aws:cloudformation:logical-id``, and ``aws:cloudformation:stack-id``, in addition to any custom tags you specify.\n To add, update, or remove tags during stack update, you must have IAM permissions for both ``ssm:AddTagsToResource`` and ``ssm:RemoveTagsFromResource``. For more information, see [Managing access using policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/security-iam.html#security_iam_access-manage) in the *User Guide*.\n For information about valid values for parameters, see [About requirements and constraints for parameter names](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html#sysman-parameter-name-constraints) in the *User Guide* and [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html) in the *API Reference*.", "additionalProperties": false, "properties": { "Type": { "type": "string", - "description": "The type of parameter.", + "description": "The type of parameter.\n Parameters of type ``SecureString`` are not supported by CFNlong.", "enum": [ "String", "StringList" ], - "markdownDescription": "The type of parameter.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: String | StringList \nUpdate requires: No interruption\n" + "markdownDescription": "The type of parameter.\n Parameters of type ``SecureString`` are not supported by CFNlong.\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: String | StringList \nUpdate requires: No interruption\n" }, "Value": { "type": "string", @@ -24,8 +24,8 @@ }, "Policies": { "type": "string", - "description": "Information about the policies assigned to a parameter.\n [Assigning parameter policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html) in the *User Guide*.", - "markdownDescription": "Information about the policies assigned to a parameter.\n [Assigning parameter policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html) in the *User Guide*.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "description": "Information about the policies assigned to a parameter.\n [Assigning parameter policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html) in the *User Guide*.", + "markdownDescription": "Information about the policies assigned to a parameter.\n [Assigning parameter policies](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-policies.html) in the *User Guide*.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, "AllowedPattern": { "type": "string", @@ -65,8 +65,8 @@ }, "Name": { "type": "string", - "description": "The name of the parameter.\n The maximum length constraint listed below includes capacity for additional system attributes that aren't part of the name. The maximum length for a parameter name, including the full length of the parameter Amazon Resource Name (ARN), is 1011 characters. For example, the length of the following parameter name is 65 characters, not 20 characters: ``arn:aws:ssm:us-east-2:111222333444:parameter/ExampleParameterName``", - "markdownDescription": "The name of the parameter.\n The maximum length constraint listed below includes capacity for additional system attributes that aren't part of the name. The maximum length for a parameter name, including the full length of the parameter Amazon Resource Name (ARN), is 1011 characters. For example, the length of the following parameter name is 65 characters, not 20 characters: ``arn:aws:ssm:us-east-2:111222333444:parameter/ExampleParameterName``\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" + "description": "The name of the parameter.\n The reported maximum length of 2048 characters for a parameter name includes 1037 characters that are reserved for internal use by SYS. The maximum length for a parameter name that you specify is 1011 characters.\n This count of 1011 characters includes the characters in the ARN that precede the name you specify. This ARN length will vary depending on your partition and Region. For example, the following 45 characters count toward the 1011 character maximum for a parameter created in the US East (Ohio) Region: ``arn:aws:ssm:us-east-2:111122223333:parameter/``.", + "markdownDescription": "The name of the parameter.\n The reported maximum length of 2048 characters for a parameter name includes 1037 characters that are reserved for internal use by SYS. The maximum length for a parameter name that you specify is 1011 characters.\n This count of 1011 characters includes the characters in the ARN that precede the name you specify. This ARN length will vary depending on your partition and Region. For example, the following 45 characters count toward the 1011 character maximum for a parameter created in the US East (Ohio) Region: ``arn:aws:ssm:us-east-2:111122223333:parameter/``.\n\n---\n\nRequired: No \nType: String \nUpdate requires: Replacement\n" } }, "required": [ diff --git a/server/schema/resources/aws-ssm-patchbaseline.json b/server/schema/resources/aws-ssm-patchbaseline.json index 8affcf98..8f8b3b68 100644 --- a/server/schema/resources/aws-ssm-patchbaseline.json +++ b/server/schema/resources/aws-ssm-patchbaseline.json @@ -144,6 +144,15 @@ "$ref": "#/definitions/PatchFilterGroup", "markdownDescription": "A set of global filters used to include patches in the baseline.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" }, + "AvailableSecurityUpdatesComplianceStatus": { + "description": "The compliance status for vendor recommended security updates that are not approved by this patch baseline.", + "type": "string", + "enum": [ + "NON_COMPLIANT", + "COMPLIANT" + ], + "markdownDescription": "The compliance status for vendor recommended security updates that are not approved by this patch baseline.\n\n---\n\nRequired: No \nType: String \nAllowed Values: NON_COMPLIANT | COMPLIANT \nUpdate requires: No interruption\n" + }, "Tags": { "description": "Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways.", "type": "array", diff --git a/server/schema/resources/aws-synthetics-canary.json b/server/schema/resources/aws-synthetics-canary.json index 53be8da1..5c987c61 100644 --- a/server/schema/resources/aws-synthetics-canary.json +++ b/server/schema/resources/aws-synthetics-canary.json @@ -166,6 +166,15 @@ "SourceLocationArn": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "Dependencies": { + "type": "array", + "description": "List of Lambda layers to attach to the canary", + "maxItems": 1, + "items": { + "$ref": "#/definitions/Dependency" + }, + "markdownDescription": "List of Lambda layers to attach to the canary\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ @@ -186,6 +195,31 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" }, + "Dependency": { + "type": "object", + "additionalProperties": false, + "properties": { + "Type": { + "type": "string", + "enum": [ + "LambdaLayer" + ], + "description": "Type of dependency", + "markdownDescription": "Type of dependency\n\n---\n\nRequired: No \nType: String \nAllowed Values: LambdaLayer \nUpdate requires: No interruption\n" + }, + "Reference": { + "type": "string", + "description": "ARN of the Lambda layer", + "minLength": 1, + "maxLength": 140, + "markdownDescription": "ARN of the Lambda layer\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 140 \nPattern: arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\\d{12}:layer:[a-zA-Z0-9-_]+:[0-9]+ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Reference" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "Tag": { "description": "A key-value pair to associate with a resource.", "additionalProperties": false, @@ -262,6 +296,11 @@ "type": "integer", "markdownDescription": "Provide maximum memory available for canary in MB\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, + "EphemeralStorage": { + "description": "Provide ephemeralStorage available for canary in MB", + "type": "integer", + "markdownDescription": "Provide ephemeralStorage available for canary in MB\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, "ActiveTracing": { "description": "Enable active tracing if set to true", "type": "boolean", diff --git a/server/schema/resources/aws-timestream-influxdbinstance.json b/server/schema/resources/aws-timestream-influxdbinstance.json index 39fced1c..a5d2930f 100644 --- a/server/schema/resources/aws-timestream-influxdbinstance.json +++ b/server/schema/resources/aws-timestream-influxdbinstance.json @@ -68,10 +68,11 @@ "db.influx.4xlarge", "db.influx.8xlarge", "db.influx.12xlarge", - "db.influx.16xlarge" + "db.influx.16xlarge", + "db.influx.24xlarge" ], "description": "The compute instance of the InfluxDB instance.", - "markdownDescription": "The compute instance of the InfluxDB instance.\n\n---\n\nRequired: No \nType: String \nAllowed Values: db.influx.medium | db.influx.large | db.influx.xlarge | db.influx.2xlarge | db.influx.4xlarge | db.influx.8xlarge | db.influx.12xlarge | db.influx.16xlarge \nUpdate requires: No interruption\n" + "markdownDescription": "The compute instance of the InfluxDB instance.\n\n---\n\nRequired: No \nType: String \nAllowed Values: db.influx.medium | db.influx.large | db.influx.xlarge | db.influx.2xlarge | db.influx.4xlarge | db.influx.8xlarge | db.influx.12xlarge | db.influx.16xlarge | db.influx.24xlarge \nUpdate requires: No interruption\n" }, "VpcSubnetIds": { "type": "array", @@ -111,14 +112,14 @@ "InfluxIOIncludedT3" ], "description": "The storage type of the InfluxDB instance.", - "markdownDescription": "The storage type of the InfluxDB instance.\n\n---\n\nRequired: No \nType: String \nAllowed Values: InfluxIOIncludedT1 | InfluxIOIncludedT2 | InfluxIOIncludedT3 \nUpdate requires: Replacement\n" + "markdownDescription": "The storage type of the InfluxDB instance.\n\n---\n\nRequired: No \nType: String \nAllowed Values: InfluxIOIncludedT1 | InfluxIOIncludedT2 | InfluxIOIncludedT3 \nUpdate requires: No interruption\n" }, "AllocatedStorage": { "type": "integer", "minimum": 20, "maximum": 16384, "description": "The allocated storage for the InfluxDB instance.", - "markdownDescription": "The allocated storage for the InfluxDB instance.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + "markdownDescription": "The allocated storage for the InfluxDB instance.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, "DbParameterGroupIdentifier": { "type": "string", @@ -282,8 +283,6 @@ "/properties/VpcSubnetIds", "/properties/VpcSecurityGroupIds", "/properties/PubliclyAccessible", - "/properties/DbStorageType", - "/properties/AllocatedStorage", "/properties/NetworkType" ], "writeOnlyProperties": [ diff --git a/server/schema/resources/aws-transfer-connector.json b/server/schema/resources/aws-transfer-connector.json index f5b4f3a5..db632159 100644 --- a/server/schema/resources/aws-transfer-connector.json +++ b/server/schema/resources/aws-transfer-connector.json @@ -165,6 +165,14 @@ "$ref": "#/definitions/SftpConnectorTrustedHostKey" }, "markdownDescription": "List of public host keys, for the external server to which you are connecting.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "MaxConcurrentConnections": { + "description": "Specifies the number of active connections that your connector can establish with the remote server at the same time.", + "type": "integer", + "minimum": 1, + "maximum": 5, + "default": 1, + "markdownDescription": "Specifies the number of active connections that your connector can establish with the remote server at the same time.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" } }, "additionalProperties": false, diff --git a/server/schema/resources/aws-transfer-server.json b/server/schema/resources/aws-transfer-server.json index e4341610..51d4a3b7 100644 --- a/server/schema/resources/aws-transfer-server.json +++ b/server/schema/resources/aws-transfer-server.json @@ -125,6 +125,14 @@ ], "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: SERVICE_MANAGED | API_GATEWAY | AWS_DIRECTORY_SERVICE | AWS_LAMBDA \nUpdate requires: No interruption\n" }, + "IpAddressType": { + "type": "string", + "enum": [ + "IPV4", + "DUALSTACK" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: IPV4 | DUALSTACK \nUpdate requires: No interruption\n" + }, "Protocol": { "type": "string", "enum": [ @@ -325,6 +333,9 @@ "IdentityProviderType": { "$ref": "#/definitions/IdentityProviderType" }, + "IpAddressType": { + "$ref": "#/definitions/IpAddressType" + }, "LoggingRole": { "type": "string", "maxLength": 2048, @@ -520,7 +531,8 @@ "additionalProperties": false, "conditionalCreateOnlyProperties": [ "/properties/EndpointDetails", - "/properties/EndpointDetails/AddressAllocationIds" + "/properties/EndpointDetails/AddressAllocationIds", + "/properties/IpAddressType" ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transfer", "attributes": { diff --git a/server/schema/resources/aws-verifiedpermissions-policystore.json b/server/schema/resources/aws-verifiedpermissions-policystore.json index 4aa68a8f..0b1d99d5 100644 --- a/server/schema/resources/aws-verifiedpermissions-policystore.json +++ b/server/schema/resources/aws-verifiedpermissions-policystore.json @@ -27,15 +27,39 @@ "type": "string", "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" }, + "SchemaCedarFormat": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, "SchemaDefinition": { - "type": "object", - "properties": { - "CedarJson": { - "$ref": "#/definitions/SchemaJson" + "oneOf": [ + { + "type": "object", + "title": "CedarJson", + "properties": { + "CedarJson": { + "$ref": "#/definitions/SchemaJson" + } + }, + "required": [ + "CedarJson" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "CedarFormat", + "properties": { + "CedarFormat": { + "$ref": "#/definitions/SchemaCedarFormat" + } + }, + "required": [ + "CedarFormat" + ], + "additionalProperties": false } - }, - "additionalProperties": false, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + ] }, "DeletionMode": { "type": "string", diff --git a/server/schema/resources/aws-wafv2-rulegroup.json b/server/schema/resources/aws-wafv2-rulegroup.json index 2229e20c..1ae7ae10 100644 --- a/server/schema/resources/aws-wafv2-rulegroup.json +++ b/server/schema/resources/aws-wafv2-rulegroup.json @@ -370,6 +370,9 @@ }, "JA4Fingerprint": { "$ref": "#/definitions/RateLimitJA4Fingerprint" + }, + "ASN": { + "$ref": "#/definitions/RateLimitAsn" } }, "additionalProperties": false, @@ -558,6 +561,11 @@ "additionalProperties": false, "markdownDescription": "Specifies the request's JA4 fingerprint as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "RateLimitAsn": { + "description": "Specifies the request's ASN as an aggregate key for a rate-based rule.", + "type": "object", + "markdownDescription": "Specifies the request's ASN as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "RateLimit": { "type": "integer", "minimum": 10, @@ -1086,6 +1094,9 @@ }, "RegexMatchStatement": { "$ref": "#/definitions/RegexMatchStatement" + }, + "AsnMatchStatement": { + "$ref": "#/definitions/AsnMatchStatement" } }, "additionalProperties": false, @@ -1296,6 +1307,26 @@ "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "AsnMatchStatement": { + "type": "object", + "properties": { + "AsnList": { + "type": "array", + "items": { + "type": "integer", + "minimum": 0, + "maximum": 4294967295, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ForwardedIPConfig": { + "$ref": "#/definitions/ForwardedIPConfiguration" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "CaptchaConfig": { "type": "object", "properties": { diff --git a/server/schema/resources/aws-wafv2-webacl.json b/server/schema/resources/aws-wafv2-webacl.json index 7c0f51cf..b9d1e781 100644 --- a/server/schema/resources/aws-wafv2-webacl.json +++ b/server/schema/resources/aws-wafv2-webacl.json @@ -1,540 +1,613 @@ { + "typeName": "AWS::WAFv2::WebACL", + "description": "Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted.", "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-wafv2.git", - "tagging": { - "permissions": [ - "wafv2:TagResource", - "wafv2:UntagResource", - "wafv2:ListTagsForResource" - ], - "tagOnCreate": true, - "taggable": true, - "tagUpdatable": true, - "tagProperty": "/properties/Tags", - "cloudFormationSystemTags": true - }, - "handlers": { - "read": { - "permissions": [ - "wafv2:GetWebACL", - "wafv2:ListTagsForResource" - ] - }, - "create": { - "permissions": [ - "wafv2:CreateWebACL", - "wafv2:GetWebACL", - "wafv2:ListTagsForResource", - "wafv2:TagResource", - "wafv2:UntagResource" - ] + "definitions": { + "AndStatement": { + "type": "object", + "properties": { + "Statements": { + "type": "array", + "items": { + "$ref": "#/definitions/Statement" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Statements" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "update": { - "permissions": [ - "wafv2:UpdateWebACL", - "wafv2:GetWebACL", - "wafv2:ListTagsForResource", - "wafv2:TagResource", - "wafv2:UntagResource" - ] + "Body": { + "description": "The body of a web request. This immediately follows the request headers.", + "type": "object", + "properties": { + "OversizeHandling": { + "$ref": "#/definitions/OversizeHandling" + } + }, + "additionalProperties": false, + "markdownDescription": "The body of a web request. This immediately follows the request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "list": { - "permissions": [ - "wafv2:listWebACLs" + "ByteMatchStatement": { + "description": "Byte Match statement.", + "type": "object", + "properties": { + "SearchString": { + "$ref": "#/definitions/SearchString" + }, + "SearchStringBase64": { + "$ref": "#/definitions/SearchStringBase64" + }, + "FieldToMatch": { + "$ref": "#/definitions/FieldToMatch" + }, + "TextTransformations": { + "type": "array", + "items": { + "$ref": "#/definitions/TextTransformation" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "PositionalConstraint": { + "$ref": "#/definitions/PositionalConstraint" + } + }, + "required": [ + "FieldToMatch", + "PositionalConstraint", + "TextTransformations" ], - "handlerSchema": { - "properties": { - "Scope": { - "$ref": "resource-schema.json#/properties/Scope" - } + "additionalProperties": false, + "markdownDescription": "Byte Match statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DefaultAction": { + "description": "Default Action WebACL will take against ingress traffic when there is no matching Rule.", + "type": "object", + "properties": { + "Allow": { + "$ref": "#/definitions/AllowAction" }, - "required": [ - "Scope" - ] - } + "Block": { + "$ref": "#/definitions/BlockAction" + } + }, + "additionalProperties": false, + "markdownDescription": "Default Action WebACL will take against ingress traffic when there is no matching Rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "delete": { - "permissions": [ - "wafv2:DeleteWebACL", - "wafv2:GetWebACL" - ] - } - }, - "typeName": "AWS::WAFv2::WebACL", - "readOnlyProperties": [ - "/properties/Arn", - "/properties/Capacity", - "/properties/Id", - "/properties/LabelNamespace" - ], - "description": "Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted.", - "createOnlyProperties": [ - "/properties/Name", - "/properties/Scope" - ], - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Name", - "/properties/Id", - "/properties/Scope" - ], - "definitions": { - "CustomHTTPHeaderName": { - "minLength": 1, - "description": "HTTP header name.", + "EntityDescription": { + "description": "Description of the entity.", "type": "string", - "maxLength": 64, - "markdownDescription": "HTTP header name.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + "markdownDescription": "Description of the entity.\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9=:#@/\\-,.][a-zA-Z0-9+=:#@/\\-,.\\s]+[a-zA-Z0-9+=:#@/\\-,.]{1,256}$ \nUpdate requires: No interruption\n" }, - "SearchString": { - "description": "String that is searched to find a match.", + "EntityName": { + "description": "Name of the WebACL.", "type": "string", - "markdownDescription": "String that is searched to find a match.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "markdownDescription": "Name of the WebACL.\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9A-Za-z_-]{1,128}$ \nUpdate requires: No interruption\n" }, - "BodyParsingFallbackBehavior": { - "description": "The inspection behavior to fall back to if the JSON in the request body is invalid.", - "type": "string", - "enum": [ - "MATCH", - "NO_MATCH", - "EVALUATE_AS_STRING" + "ExcludedRule": { + "description": "Excluded Rule in the RuleGroup or ManagedRuleGroup will not be evaluated.", + "type": "object", + "properties": { + "Name": { + "$ref": "#/definitions/EntityName" + } + }, + "required": [ + "Name" ], - "markdownDescription": "The inspection behavior to fall back to if the JSON in the request body is invalid.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MATCH | NO_MATCH | EVALUATE_AS_STRING \nUpdate requires: No interruption\n" - }, - "DataProtect": { "additionalProperties": false, + "markdownDescription": "Excluded Rule in the RuleGroup or ManagedRuleGroup will not be evaluated.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RuleActionOverride": { + "description": "Action override for rules in the rule group.", "type": "object", "properties": { - "Field": { - "$ref": "#/definitions/FieldToProtect" - }, - "Action": { - "$ref": "#/definitions/DataProtectionAction" - }, - "ExcludeRateBasedDetails": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "Name": { + "$ref": "#/definitions/EntityName" }, - "ExcludeRuleMatchDetails": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "ActionToUse": { + "$ref": "#/definitions/RuleAction" } }, "required": [ - "Field", - "Action" + "Name", + "ActionToUse" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Action override for rules in the rule group.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ResponseStatusCode": { - "description": "Custom response code.", - "maximum": 599, - "type": "integer", - "minimum": 200, - "markdownDescription": "Custom response code.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "ExcludedRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedRule" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "HeaderMatchPattern": { - "description": "The pattern to look for in the request headers.", - "additionalProperties": false, + "FieldToMatch": { + "description": "Field of the request to match.", "type": "object", "properties": { - "All": { - "description": "Inspect all parts of the web request headers.", + "SingleHeader": { "type": "object", - "markdownDescription": "Inspect all parts of the web request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "properties": { + "Name": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Name" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "IncludedHeaders": { - "minItems": 1, - "maxItems": 199, - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "SingleQueryArgument": { + "description": "One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.", + "type": "object", + "properties": { + "Name": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + } }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "required": [ + "Name" + ], + "additionalProperties": false, + "markdownDescription": "One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AllQueryArguments": { + "description": "All query arguments of a web request.", + "type": "object", + "markdownDescription": "All query arguments of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "UriPath": { + "description": "The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.", + "type": "object", + "markdownDescription": "The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "QueryString": { + "description": "The query string of a web request. This is the part of a URL that appears after a ? character, if any.", + "type": "object", + "markdownDescription": "The query string of a web request. This is the part of a URL that appears after a ? character, if any.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Body": { + "$ref": "#/definitions/Body" + }, + "Method": { + "description": "The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.", + "type": "object", + "markdownDescription": "The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "JsonBody": { + "$ref": "#/definitions/JsonBody" + }, + "Headers": { + "$ref": "#/definitions/Headers" + }, + "Cookies": { + "$ref": "#/definitions/Cookies" + }, + "JA3Fingerprint": { + "$ref": "#/definitions/JA3Fingerprint" + }, + "JA4Fingerprint": { + "$ref": "#/definitions/JA4Fingerprint" }, - "ExcludedHeaders": { - "minItems": 1, - "maxItems": 199, - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "UriFragment": { + "$ref": "#/definitions/UriFragment" } }, - "markdownDescription": "The pattern to look for in the request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "CustomResponse": { - "description": "Custom response.", "additionalProperties": false, + "markdownDescription": "Field of the request to match.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "JsonBody": { + "description": "Inspect the request body as JSON. The request body immediately follows the request headers.", "type": "object", "properties": { - "ResponseCode": { - "$ref": "#/definitions/ResponseStatusCode" + "MatchPattern": { + "$ref": "#/definitions/JsonMatchPattern" }, - "CustomResponseBodyKey": { - "description": "Custom response body key.", - "type": "string", - "markdownDescription": "Custom response body key.\n\n---\n\nRequired: No \nType: String \nPattern: ^[\\w\\-]+$ \nUpdate requires: No interruption\n" + "MatchScope": { + "$ref": "#/definitions/JsonMatchScope" }, - "ResponseHeaders": { - "minItems": 1, - "description": "Collection of HTTP headers.", - "type": "array", - "items": { - "$ref": "#/definitions/CustomHTTPHeader" - }, - "markdownDescription": "Collection of HTTP headers.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "InvalidFallbackBehavior": { + "$ref": "#/definitions/BodyParsingFallbackBehavior" + }, + "OversizeHandling": { + "$ref": "#/definitions/OversizeHandling" } }, "required": [ - "ResponseCode" + "MatchPattern", + "MatchScope" ], - "markdownDescription": "Custom response.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "JA4Fingerprint": { - "description": "Includes the JA4 fingerprint of a web request.", "additionalProperties": false, - "type": "object", - "properties": { - "FallbackBehavior": { - "type": "string", - "enum": [ - "MATCH", - "NO_MATCH" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" - } - }, - "required": [ - "FallbackBehavior" + "markdownDescription": "Inspect the request body as JSON. The request body immediately follows the request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "BodyParsingFallbackBehavior": { + "description": "The inspection behavior to fall back to if the JSON in the request body is invalid.", + "type": "string", + "enum": [ + "MATCH", + "NO_MATCH", + "EVALUATE_AS_STRING" ], - "markdownDescription": "Includes the JA4 fingerprint of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "The inspection behavior to fall back to if the JSON in the request body is invalid.\n\n---\n\nRequired: No \nType: String \nAllowed Values: MATCH | NO_MATCH | EVALUATE_AS_STRING \nUpdate requires: No interruption\n" }, - "RegexMatchStatement": { - "additionalProperties": false, + "JsonMatchScope": { + "description": "The parts of the JSON to match against using the MatchPattern.", + "type": "string", + "enum": [ + "ALL", + "KEY", + "VALUE" + ], + "markdownDescription": "The parts of the JSON to match against using the MatchPattern.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ALL | KEY | VALUE \nUpdate requires: No interruption\n" + }, + "JsonMatchPattern": { + "description": "The pattern to look for in the JSON body.", "type": "object", "properties": { - "TextTransformations": { + "All": { + "description": "Inspect all parts of the web request's JSON body.", + "type": "object", + "markdownDescription": "Inspect all parts of the web request's JSON body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "IncludedPaths": { "type": "array", "items": { - "$ref": "#/definitions/TextTransformation" + "$ref": "#/definitions/JsonPointerPath" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "RegexString": { - "minLength": 1, - "type": "string", - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" - }, - "FieldToMatch": { - "$ref": "#/definitions/FieldToMatch" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "required": [ - "RegexString", - "FieldToMatch", - "TextTransformations" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RegexPatternSetReferenceStatement": { "additionalProperties": false, + "markdownDescription": "The pattern to look for in the JSON body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "JsonPointerPath": { + "description": "JSON pointer path in the web request's JSON body", + "type": "string", + "markdownDescription": "JSON pointer path in the web request's JSON body\n\n---\n\nRequired: No \nType: String \nPattern: ^[\\/]+([^~]*(~[01])*)*{1,512}$ \nUpdate requires: No interruption\n" + }, + "GeoMatchStatement": { "type": "object", "properties": { - "TextTransformations": { + "CountryCodes": { "type": "array", "items": { - "$ref": "#/definitions/TextTransformation" + "type": "string", + "minLength": 1, + "maxLength": 2, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2 \nUpdate requires: No interruption\n" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "Arn": { - "$ref": "#/definitions/ResourceArn" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "FieldToMatch": { - "$ref": "#/definitions/FieldToMatch" + "ForwardedIPConfig": { + "$ref": "#/definitions/ForwardedIPConfiguration" } }, - "required": [ - "Arn", - "FieldToMatch", - "TextTransformations" - ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, + "EntityId": { + "description": "Id of the WebACL", + "type": "string", + "markdownDescription": "Id of the WebACL\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$ \nUpdate requires: No interruption\n" + }, "IPSetReferenceStatement": { - "additionalProperties": false, "type": "object", "properties": { - "IPSetForwardedIPConfig": { - "$ref": "#/definitions/IPSetForwardedIPConfiguration" - }, "Arn": { "$ref": "#/definitions/ResourceArn" + }, + "IPSetForwardedIPConfig": { + "$ref": "#/definitions/IPSetForwardedIPConfiguration" } }, "required": [ "Arn" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RequestBodyAssociatedResourceTypeConfig": { - "description": "Configures the inspection size in the request body.", "additionalProperties": false, - "type": "object", - "properties": { - "DefaultSizeInspectionLimit": { - "$ref": "#/definitions/SizeInspectionLimit" - } - }, - "required": [ - "DefaultSizeInspectionLimit" - ], - "markdownDescription": "Configures the inspection size in the request body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RateLimitJA3Fingerprint": { - "description": "Specifies the request's JA3 fingerprint as an aggregate key for a rate-based rule.", - "additionalProperties": false, + "ManagedRuleGroupStatement": { "type": "object", "properties": { - "FallbackBehavior": { + "Name": { + "$ref": "#/definitions/EntityName" + }, + "VendorName": { "type": "string", - "enum": [ - "MATCH", - "NO_MATCH" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" - } - }, - "required": [ - "FallbackBehavior" - ], - "markdownDescription": "Specifies the request's JA3 fingerprint as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AssociationConfig": { - "description": "AssociationConfig for body inspection", - "additionalProperties": false, - "type": "object", - "properties": { - "RequestBody": { - "$ref": "#/definitions/RequestBody" - } - }, - "markdownDescription": "AssociationConfig for body inspection\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "JsonMatchScope": { - "description": "The parts of the JSON to match against using the MatchPattern.", - "type": "string", - "enum": [ - "ALL", - "KEY", - "VALUE" - ], - "markdownDescription": "The parts of the JSON to match against using the MatchPattern.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ALL | KEY | VALUE \nUpdate requires: No interruption\n" - }, - "RulePriority": { - "description": "Priority of the Rule, Rules get evaluated from lower to higher priority.", - "type": "integer", - "minimum": 0, - "markdownDescription": "Priority of the Rule, Rules get evaluated from lower to higher priority.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "RuleActionOverride": { - "description": "Action override for rules in the rule group.", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, + "Version": { + "type": "string", + "minLength": 1, + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w#:\\.\\-/]+$ \nUpdate requires: No interruption\n" + }, + "ExcludedRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedRule" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ScopeDownStatement": { + "$ref": "#/definitions/Statement" + }, + "ManagedRuleGroupConfigs": { + "description": "Collection of ManagedRuleGroupConfig.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupConfig" + }, + "markdownDescription": "Collection of ManagedRuleGroupConfig.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "RuleActionOverrides": { + "description": "Action overrides for rules in the rule group.", + "type": "array", + "items": { + "$ref": "#/definitions/RuleActionOverride" + }, + "maxItems": 100, + "markdownDescription": "Action overrides for rules in the rule group.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "VendorName", + "Name" + ], "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "NotStatement": { "type": "object", "properties": { - "ActionToUse": { - "$ref": "#/definitions/RuleAction" - }, - "Name": { - "$ref": "#/definitions/EntityName" + "Statement": { + "$ref": "#/definitions/Statement" } }, "required": [ - "Name", - "ActionToUse" + "Statement" ], - "markdownDescription": "Action override for rules in the rule group.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ExcludedRule": { - "description": "Excluded Rule in the RuleGroup or ManagedRuleGroup will not be evaluated.", "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OrStatement": { "type": "object", "properties": { - "Name": { - "$ref": "#/definitions/EntityName" + "Statements": { + "type": "array", + "items": { + "$ref": "#/definitions/Statement" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ - "Name" + "Statements" ], - "markdownDescription": "Excluded Rule in the RuleGroup or ManagedRuleGroup will not be evaluated.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EntityDescription": { - "description": "Description of the entity.", + "OverrideAction": { + "description": "Override a RuleGroup or ManagedRuleGroup behavior. This can only be applied to Rule that has RuleGroupReferenceStatement or ManagedRuleGroupReferenceStatement.", + "type": "object", + "properties": { + "Count": { + "description": "Count traffic towards application.", + "type": "object", + "markdownDescription": "Count traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "None": { + "description": "Keep the RuleGroup or ManagedRuleGroup behavior as is.", + "type": "object", + "markdownDescription": "Keep the RuleGroup or ManagedRuleGroup behavior as is.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "Override a RuleGroup or ManagedRuleGroup behavior. This can only be applied to Rule that has RuleGroupReferenceStatement or ManagedRuleGroupReferenceStatement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "PositionalConstraint": { + "description": "Position of the evaluation in the FieldToMatch of request.", "type": "string", - "markdownDescription": "Description of the entity.\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-zA-Z0-9=:#@/\\-,.][a-zA-Z0-9+=:#@/\\-,.\\s]+[a-zA-Z0-9+=:#@/\\-,.]{1,256}$ \nUpdate requires: No interruption\n" + "enum": [ + "EXACTLY", + "STARTS_WITH", + "ENDS_WITH", + "CONTAINS", + "CONTAINS_WORD" + ], + "markdownDescription": "Position of the evaluation in the FieldToMatch of request.\n\n---\n\nRequired: No \nType: String \nAllowed Values: EXACTLY | STARTS_WITH | ENDS_WITH | CONTAINS | CONTAINS_WORD \nUpdate requires: No interruption\n" }, - "RateLimitQueryArgument": { - "description": "Specifies a query argument in the request as an aggregate key for a rate-based rule.", - "additionalProperties": false, + "QueryString": { + "type": "object", + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateBasedStatement": { "type": "object", "properties": { - "TextTransformations": { + "Limit": { + "$ref": "#/definitions/RateLimit" + }, + "EvaluationWindowSec": { + "$ref": "#/definitions/EvaluationWindowSec" + }, + "AggregateKeyType": { + "type": "string", + "enum": [ + "CONSTANT", + "IP", + "FORWARDED_IP", + "CUSTOM_KEYS" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: CONSTANT | IP | FORWARDED_IP | CUSTOM_KEYS \nUpdate requires: No interruption\n" + }, + "CustomKeys": { + "description": "Specifies the aggregate keys to use in a rate-base rule.", "type": "array", "items": { - "$ref": "#/definitions/TextTransformation" + "$ref": "#/definitions/RateBasedStatementCustomKey" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "maxItems": 5, + "markdownDescription": "Specifies the aggregate keys to use in a rate-base rule.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "Name": { - "minLength": 1, - "description": "The name of the query argument to use.", - "type": "string", - "maxLength": 64, - "markdownDescription": "The name of the query argument to use.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "ScopeDownStatement": { + "$ref": "#/definitions/Statement" + }, + "ForwardedIPConfig": { + "$ref": "#/definitions/ForwardedIPConfiguration" } }, "required": [ - "Name", - "TextTransformations" + "Limit", + "AggregateKeyType" ], - "markdownDescription": "Specifies a query argument in the request as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "Rule": { - "description": "Rule of WebACL that contains condition and action.", "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateBasedStatementCustomKey": { + "description": "Specifies a single custom aggregate key for a rate-base rule.", "type": "object", "properties": { - "Action": { - "$ref": "#/definitions/RuleAction" + "Cookie": { + "$ref": "#/definitions/RateLimitCookie" }, - "Priority": { - "$ref": "#/definitions/RulePriority" + "ForwardedIP": { + "$ref": "#/definitions/RateLimitForwardedIP" }, - "Statement": { - "$ref": "#/definitions/Statement" + "Header": { + "$ref": "#/definitions/RateLimitHeader" }, - "ChallengeConfig": { - "$ref": "#/definitions/ChallengeConfig" + "HTTPMethod": { + "$ref": "#/definitions/RateLimitHTTPMethod" }, - "OverrideAction": { - "$ref": "#/definitions/OverrideAction" + "IP": { + "$ref": "#/definitions/RateLimitIP" }, - "RuleLabels": { - "description": "Collection of Rule Labels.", - "type": "array", - "items": { - "$ref": "#/definitions/Label" - }, - "markdownDescription": "Collection of Rule Labels.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "LabelNamespace": { + "$ref": "#/definitions/RateLimitLabelNamespace" }, - "VisibilityConfig": { - "$ref": "#/definitions/VisibilityConfig" + "QueryArgument": { + "$ref": "#/definitions/RateLimitQueryArgument" }, - "CaptchaConfig": { - "$ref": "#/definitions/CaptchaConfig" + "QueryString": { + "$ref": "#/definitions/RateLimitQueryString" + }, + "UriPath": { + "$ref": "#/definitions/RateLimitUriPath" }, + "JA3Fingerprint": { + "$ref": "#/definitions/RateLimitJA3Fingerprint" + }, + "JA4Fingerprint": { + "$ref": "#/definitions/RateLimitJA4Fingerprint" + }, + "ASN": { + "$ref": "#/definitions/RateLimitAsn" + } + }, + "additionalProperties": false, + "markdownDescription": "Specifies a single custom aggregate key for a rate-base rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitCookie": { + "description": "Specifies a cookie as an aggregate key for a rate-based rule.", + "type": "object", + "properties": { "Name": { - "$ref": "#/definitions/EntityName" + "description": "The name of the cookie to use.", + "type": "string", + "minLength": 1, + "maxLength": 64, + "markdownDescription": "The name of the cookie to use.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "TextTransformations": { + "type": "array", + "items": { + "$ref": "#/definitions/TextTransformation" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ "Name", - "Priority", - "Statement", - "VisibilityConfig" + "TextTransformations" ], - "markdownDescription": "Rule of WebACL that contains condition and action.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Specifies a cookie as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "TextTransformationPriority": { - "description": "Priority of Rule being evaluated.", - "type": "integer", - "minimum": 0, - "markdownDescription": "Priority of Rule being evaluated.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + "RateLimitForwardedIP": { + "description": "Specifies the first IP address in an HTTP header as an aggregate key for a rate-based rule.", + "type": "object", + "markdownDescription": "Specifies the first IP address in an HTTP header as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "RateLimitHeader": { "description": "Specifies a header as an aggregate key for a rate-based rule.", - "additionalProperties": false, "type": "object", "properties": { + "Name": { + "description": "The name of the header to use.", + "type": "string", + "minLength": 1, + "maxLength": 64, + "markdownDescription": "The name of the header to use.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, "TextTransformations": { "type": "array", "items": { "$ref": "#/definitions/TextTransformation" }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "Name": { - "minLength": 1, - "description": "The name of the header to use.", - "type": "string", - "maxLength": 64, - "markdownDescription": "The name of the header to use.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" } }, "required": [ "Name", "TextTransformations" ], + "additionalProperties": false, "markdownDescription": "Specifies a header as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "IPSetForwardedIPConfiguration": { - "additionalProperties": false, + "RateLimitHTTPMethod": { + "description": "Specifies the request's HTTP method as an aggregate key for a rate-based rule.", + "type": "object", + "markdownDescription": "Specifies the request's HTTP method as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitIP": { + "description": "Specifies the IP address in the web request as an aggregate key for a rate-based rule.", + "type": "object", + "markdownDescription": "Specifies the IP address in the web request as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitLabelNamespace": { + "description": "Specifies a label namespace to use as an aggregate key for a rate-based rule.", "type": "object", "properties": { - "FallbackBehavior": { - "type": "string", - "enum": [ - "MATCH", - "NO_MATCH" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" - }, - "HeaderName": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-zA-Z0-9-]+{1,255}$ \nUpdate requires: No interruption\n" - }, - "Position": { + "Namespace": { + "description": "The namespace to use for aggregation.", "type": "string", - "enum": [ - "FIRST", - "LAST", - "ANY" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: FIRST | LAST | ANY \nUpdate requires: No interruption\n" + "markdownDescription": "The namespace to use for aggregation.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[0-9A-Za-z_:-]{1,1024}$ \nUpdate requires: No interruption\n" } }, "required": [ - "HeaderName", - "FallbackBehavior", - "Position" + "Namespace" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SizeConstraintStatement": { - "description": "Size Constraint statement.", "additionalProperties": false, + "markdownDescription": "Specifies a label namespace to use as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitQueryArgument": { + "description": "Specifies a query argument in the request as an aggregate key for a rate-based rule.", "type": "object", "properties": { - "ComparisonOperator": { + "Name": { + "description": "The name of the query argument to use.", "type": "string", - "enum": [ - "EQ", - "NE", - "LE", - "LT", - "GE", - "GT" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: EQ | NE | LE | LT | GE | GT \nUpdate requires: No interruption\n" + "minLength": 1, + "maxLength": 64, + "markdownDescription": "The name of the query argument to use.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" }, "TextTransformations": { "type": "array", @@ -542,52 +615,53 @@ "$ref": "#/definitions/TextTransformation" }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "Size": { - "maximum": 21474836480, - "type": "number", - "minimum": 0, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" - }, - "FieldToMatch": { - "$ref": "#/definitions/FieldToMatch" } }, "required": [ - "FieldToMatch", - "ComparisonOperator", - "Size", + "Name", "TextTransformations" ], - "markdownDescription": "Size Constraint statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AndStatement": { "additionalProperties": false, + "markdownDescription": "Specifies a query argument in the request as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitQueryString": { + "description": "Specifies the request's query string as an aggregate key for a rate-based rule.", "type": "object", "properties": { - "Statements": { + "TextTransformations": { "type": "array", "items": { - "$ref": "#/definitions/Statement" + "$ref": "#/definitions/TextTransformation" }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ - "Statements" + "TextTransformations" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ResponseContent": { - "minLength": 1, - "description": "Response content.", - "type": "string", - "maxLength": 10240, - "markdownDescription": "Response content.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 10240 \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Specifies the request's query string as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "JA3Fingerprint": { - "description": "Includes the JA3 fingerprint of a web request.", + "RateLimitUriPath": { + "description": "Specifies the request's URI Path as an aggregate key for a rate-based rule.", + "type": "object", + "properties": { + "TextTransformations": { + "type": "array", + "items": { + "$ref": "#/definitions/TextTransformation" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "TextTransformations" + ], "additionalProperties": false, + "markdownDescription": "Specifies the request's URI Path as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitJA3Fingerprint": { + "description": "Specifies the request's JA3 fingerprint as an aggregate key for a rate-based rule.", "type": "object", "properties": { "FallbackBehavior": { @@ -602,93 +676,58 @@ "required": [ "FallbackBehavior" ], - "markdownDescription": "Includes the JA3 fingerprint of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "EntityName": { - "description": "Name of the WebACL.", - "type": "string", - "markdownDescription": "Name of the WebACL.\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9A-Za-z_-]{1,128}$ \nUpdate requires: No interruption\n" - }, - "NotStatement": { "additionalProperties": false, + "markdownDescription": "Specifies the request's JA3 fingerprint as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitJA4Fingerprint": { + "description": "Specifies the request's JA4 fingerprint as an aggregate key for a rate-based rule.", "type": "object", "properties": { - "Statement": { - "$ref": "#/definitions/Statement" + "FallbackBehavior": { + "type": "string", + "enum": [ + "MATCH", + "NO_MATCH" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" } }, "required": [ - "Statement" + "FallbackBehavior" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ResponseInspectionStatusCode": { - "description": "Response status codes that indicate success or failure of a login request", "additionalProperties": false, + "markdownDescription": "Specifies the request's JA4 fingerprint as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RateLimitAsn": { + "description": "Specifies the request's ASN as an aggregate key for a rate-based rule.", "type": "object", - "properties": { - "SuccessCodes": { - "minItems": 1, - "maxItems": 10, - "type": "array", - "items": { - "minLength": 0, - "type": "integer", - "maxLength": 999, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nMaximum Length: 999 \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "FailureCodes": { - "minItems": 1, - "maxItems": 10, - "type": "array", - "items": { - "minLength": 0, - "type": "integer", - "maxLength": 999, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nMaximum Length: 999 \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - } - }, - "required": [ - "SuccessCodes", - "FailureCodes" - ], - "markdownDescription": "Response status codes that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Specifies the request's ASN as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "PhoneNumberField": { - "$ref": "#/definitions/FieldIdentifier" + "RateLimit": { + "type": "integer", + "minimum": 10, + "maximum": 2000000000, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "RuleAction": { - "description": "Action taken when Rule matches its condition.", - "additionalProperties": false, + "EvaluationWindowSec": { + "type": "integer", + "enum": [ + 60, + 120, + 300, + 600 + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nAllowed Values: 60 | 120 | 300 | 600 \nUpdate requires: No interruption\n" + }, + "RegexPatternSetReferenceStatement": { "type": "object", "properties": { - "Captcha": { - "$ref": "#/definitions/CaptchaAction" - }, - "Block": { - "$ref": "#/definitions/BlockAction" - }, - "Count": { - "$ref": "#/definitions/CountAction" + "Arn": { + "$ref": "#/definitions/ResourceArn" }, - "Allow": { - "$ref": "#/definitions/AllowAction" + "FieldToMatch": { + "$ref": "#/definitions/FieldToMatch" }, - "Challenge": { - "$ref": "#/definitions/ChallengeAction" - } - }, - "markdownDescription": "Action taken when Rule matches its condition.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RateLimitUriPath": { - "description": "Specifies the request's URI Path as an aggregate key for a rate-based rule.", - "additionalProperties": false, - "type": "object", - "properties": { "TextTransformations": { "type": "array", "items": { @@ -698,889 +737,815 @@ } }, "required": [ + "Arn", + "FieldToMatch", "TextTransformations" ], - "markdownDescription": "Specifies the request's URI Path as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "TextTransformationType": { - "description": "Type of text transformation.", - "type": "string", - "enum": [ - "NONE", - "COMPRESS_WHITE_SPACE", - "HTML_ENTITY_DECODE", - "LOWERCASE", - "CMD_LINE", - "URL_DECODE", - "BASE64_DECODE", - "HEX_DECODE", - "MD5", - "REPLACE_COMMENTS", - "ESCAPE_SEQ_DECODE", - "SQL_HEX_DECODE", - "CSS_DECODE", - "JS_DECODE", - "NORMALIZE_PATH", - "NORMALIZE_PATH_WIN", - "REMOVE_NULLS", - "REPLACE_NULLS", - "BASE64_DECODE_EXT", - "URL_DECODE_UNI", - "UTF8_TO_UNICODE" - ], - "markdownDescription": "Type of text transformation.\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | COMPRESS_WHITE_SPACE | HTML_ENTITY_DECODE | LOWERCASE | CMD_LINE | URL_DECODE | BASE64_DECODE | HEX_DECODE | MD5 | REPLACE_COMMENTS | ESCAPE_SEQ_DECODE | SQL_HEX_DECODE | CSS_DECODE | JS_DECODE | NORMALIZE_PATH | NORMALIZE_PATH_WIN | REMOVE_NULLS | REPLACE_NULLS | BASE64_DECODE_EXT | URL_DECODE_UNI | UTF8_TO_UNICODE \nUpdate requires: No interruption\n" - }, - "LabelName": { - "description": "Name of the Label.", - "type": "string", - "markdownDescription": "Name of the Label.\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9A-Za-z_:-]{1,1024}$ \nUpdate requires: No interruption\n" - }, - "PositionalConstraint": { - "description": "Position of the evaluation in the FieldToMatch of request.", - "type": "string", - "enum": [ - "EXACTLY", - "STARTS_WITH", - "ENDS_WITH", - "CONTAINS", - "CONTAINS_WORD" - ], - "markdownDescription": "Position of the evaluation in the FieldToMatch of request.\n\n---\n\nRequired: No \nType: String \nAllowed Values: EXACTLY | STARTS_WITH | ENDS_WITH | CONTAINS | CONTAINS_WORD \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "CustomHTTPHeaderValue": { - "minLength": 1, - "description": "HTTP header value.", - "type": "string", - "maxLength": 255, - "markdownDescription": "HTTP header value.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + "ResourceArn": { + "description": "ARN of the WAF entity.", + "type": "string", + "minLength": 20, + "maxLength": 2048, + "markdownDescription": "ARN of the WAF entity.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, - "LabelMatchStatement": { - "additionalProperties": false, + "ForwardedIPConfiguration": { "type": "object", "properties": { - "Scope": { - "$ref": "#/definitions/LabelMatchScope" + "HeaderName": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-zA-Z0-9-]+{1,255}$ \nUpdate requires: No interruption\n" }, - "Key": { - "$ref": "#/definitions/LabelMatchKey" + "FallbackBehavior": { + "type": "string", + "enum": [ + "MATCH", + "NO_MATCH" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" } }, "required": [ - "Scope", - "Key" + "HeaderName", + "FallbackBehavior" ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ResponseInspectionBodyContains": { - "description": "Response body contents that indicate success or failure of a login request", - "additionalProperties": false, + "IPSetForwardedIPConfiguration": { "type": "object", "properties": { - "SuccessStrings": { - "minItems": 1, - "maxItems": 5, - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "HeaderName": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-zA-Z0-9-]+{1,255}$ \nUpdate requires: No interruption\n" }, - "FailureStrings": { - "minItems": 1, - "maxItems": 5, - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "FallbackBehavior": { + "type": "string", + "enum": [ + "MATCH", + "NO_MATCH" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" + }, + "Position": { + "type": "string", + "enum": [ + "FIRST", + "LAST", + "ANY" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: FIRST | LAST | ANY \nUpdate requires: No interruption\n" } }, "required": [ - "SuccessStrings", - "FailureStrings" + "HeaderName", + "FallbackBehavior", + "Position" ], - "markdownDescription": "Response body contents that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ExcludedRules": { - "type": "array", - "items": { - "$ref": "#/definitions/ExcludedRule" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "FieldToMatch": { - "description": "Field of the request to match.", "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Rule": { + "description": "Rule of WebACL that contains condition and action.", "type": "object", "properties": { - "AllQueryArguments": { - "description": "All query arguments of a web request.", - "type": "object", - "markdownDescription": "All query arguments of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "JA3Fingerprint": { - "$ref": "#/definitions/JA3Fingerprint" - }, - "SingleQueryArgument": { - "description": "One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.", - "additionalProperties": false, - "type": "object", - "properties": { - "Name": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Name" - ], - "markdownDescription": "One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "QueryString": { - "description": "The query string of a web request. This is the part of a URL that appears after a ? character, if any.", - "type": "object", - "markdownDescription": "The query string of a web request. This is the part of a URL that appears after a ? character, if any.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "Headers": { - "$ref": "#/definitions/Headers" + "Name": { + "$ref": "#/definitions/EntityName" }, - "Method": { - "description": "The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.", - "type": "object", - "markdownDescription": "The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "Priority": { + "$ref": "#/definitions/RulePriority" }, - "UriFragment": { - "$ref": "#/definitions/UriFragment" + "Statement": { + "$ref": "#/definitions/Statement" }, - "JsonBody": { - "$ref": "#/definitions/JsonBody" + "Action": { + "$ref": "#/definitions/RuleAction" }, - "UriPath": { - "description": "The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.", - "type": "object", - "markdownDescription": "The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "OverrideAction": { + "$ref": "#/definitions/OverrideAction" }, - "Cookies": { - "$ref": "#/definitions/Cookies" + "RuleLabels": { + "description": "Collection of Rule Labels.", + "type": "array", + "items": { + "$ref": "#/definitions/Label" + }, + "markdownDescription": "Collection of Rule Labels.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "JA4Fingerprint": { - "$ref": "#/definitions/JA4Fingerprint" + "VisibilityConfig": { + "$ref": "#/definitions/VisibilityConfig" }, - "Body": { - "$ref": "#/definitions/Body" + "CaptchaConfig": { + "$ref": "#/definitions/CaptchaConfig" }, - "SingleHeader": { - "additionalProperties": false, - "type": "object", - "properties": { - "Name": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - } - }, - "required": [ - "Name" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "ChallengeConfig": { + "$ref": "#/definitions/ChallengeConfig" } }, - "markdownDescription": "Field of the request to match.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "Name", + "Priority", + "Statement", + "VisibilityConfig" + ], + "additionalProperties": false, + "markdownDescription": "Rule of WebACL that contains condition and action.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RequestBody": { - "patternProperties": { - "^(CLOUDFRONT|API_GATEWAY|COGNITO_USER_POOL|APP_RUNNER_SERVICE|VERIFIED_ACCESS_INSTANCE)$": { - "$ref": "#/definitions/RequestBodyAssociatedResourceTypeConfig" - } + "Rules": { + "description": "Collection of Rules.", + "type": "array", + "items": { + "$ref": "#/definitions/Rule" }, - "description": "Map of AssociatedResourceType and RequestBodyAssociatedResourceTypeConfig", - "additionalProperties": false, - "type": "object", - "markdownDescription": "Map of AssociatedResourceType and RequestBodyAssociatedResourceTypeConfig\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Collection of Rules.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "Statement": { - "description": "First level statement that contains conditions, such as ByteMatch, SizeConstraint, etc", - "additionalProperties": false, + "RuleAction": { + "description": "Action taken when Rule matches its condition.", "type": "object", "properties": { - "SizeConstraintStatement": { - "$ref": "#/definitions/SizeConstraintStatement" - }, - "AndStatement": { - "$ref": "#/definitions/AndStatement" - }, - "XssMatchStatement": { - "$ref": "#/definitions/XssMatchStatement" - }, - "NotStatement": { - "$ref": "#/definitions/NotStatement" - }, - "ByteMatchStatement": { - "$ref": "#/definitions/ByteMatchStatement" - }, - "RateBasedStatement": { - "$ref": "#/definitions/RateBasedStatement" - }, - "GeoMatchStatement": { - "$ref": "#/definitions/GeoMatchStatement" - }, - "RuleGroupReferenceStatement": { - "$ref": "#/definitions/RuleGroupReferenceStatement" - }, - "LabelMatchStatement": { - "$ref": "#/definitions/LabelMatchStatement" - }, - "RegexMatchStatement": { - "$ref": "#/definitions/RegexMatchStatement" - }, - "SqliMatchStatement": { - "$ref": "#/definitions/SqliMatchStatement" + "Allow": { + "$ref": "#/definitions/AllowAction" }, - "RegexPatternSetReferenceStatement": { - "$ref": "#/definitions/RegexPatternSetReferenceStatement" + "Block": { + "$ref": "#/definitions/BlockAction" }, - "OrStatement": { - "$ref": "#/definitions/OrStatement" + "Count": { + "$ref": "#/definitions/CountAction" }, - "ManagedRuleGroupStatement": { - "$ref": "#/definitions/ManagedRuleGroupStatement" + "Captcha": { + "$ref": "#/definitions/CaptchaAction" }, - "IPSetReferenceStatement": { - "$ref": "#/definitions/IPSetReferenceStatement" + "Challenge": { + "$ref": "#/definitions/ChallengeAction" + } + }, + "additionalProperties": false, + "markdownDescription": "Action taken when Rule matches its condition.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AllowAction": { + "description": "Allow traffic towards application.", + "type": "object", + "properties": { + "CustomRequestHandling": { + "$ref": "#/definitions/CustomRequestHandling" } }, - "markdownDescription": "First level statement that contains conditions, such as ByteMatch, SizeConstraint, etc\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Allow traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ChallengeConfig": { + "CountAction": { + "description": "Allow traffic towards application.", + "type": "object", + "properties": { + "CustomRequestHandling": { + "$ref": "#/definitions/CustomRequestHandling" + } + }, "additionalProperties": false, + "markdownDescription": "Allow traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CaptchaAction": { + "description": "Checks valid token exists with request.", "type": "object", "properties": { - "ImmunityTimeProperty": { - "$ref": "#/definitions/ImmunityTimeProperty" + "CustomRequestHandling": { + "$ref": "#/definitions/CustomRequestHandling" } }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Checks valid token exists with request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RateBasedStatement": { + "ChallengeAction": { + "description": "Checks that the request has a valid token with an unexpired challenge timestamp and, if not, returns a browser challenge to the client.", + "type": "object", + "properties": { + "CustomRequestHandling": { + "$ref": "#/definitions/CustomRequestHandling" + } + }, "additionalProperties": false, + "markdownDescription": "Checks that the request has a valid token with an unexpired challenge timestamp and, if not, returns a browser challenge to the client.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "BlockAction": { + "description": "Block traffic towards application.", "type": "object", "properties": { - "AggregateKeyType": { - "type": "string", - "enum": [ - "CONSTANT", - "IP", - "FORWARDED_IP", - "CUSTOM_KEYS" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: CONSTANT | IP | FORWARDED_IP | CUSTOM_KEYS \nUpdate requires: No interruption\n" - }, - "CustomKeys": { - "maxItems": 5, - "description": "Specifies the aggregate keys to use in a rate-base rule.", - "type": "array", - "items": { - "$ref": "#/definitions/RateBasedStatementCustomKey" - }, - "markdownDescription": "Specifies the aggregate keys to use in a rate-base rule.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "ForwardedIPConfig": { - "$ref": "#/definitions/ForwardedIPConfiguration" - }, - "Limit": { - "$ref": "#/definitions/RateLimit" - }, - "EvaluationWindowSec": { - "$ref": "#/definitions/EvaluationWindowSec" - }, - "ScopeDownStatement": { - "$ref": "#/definitions/Statement" + "CustomResponse": { + "$ref": "#/definitions/CustomResponse" } }, - "required": [ - "Limit", - "AggregateKeyType" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Block traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "LabelMatchKey": { + "CustomHTTPHeaderName": { + "description": "HTTP header name.", "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9A-Za-z_:-]{1,1024}$ \nUpdate requires: No interruption\n" + "minLength": 1, + "maxLength": 64, + "markdownDescription": "HTTP header name.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" }, - "FieldIdentifier": { - "additionalProperties": false, + "CustomHTTPHeaderValue": { + "description": "HTTP header value.", + "type": "string", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "HTTP header value.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "CustomHTTPHeader": { + "description": "HTTP header.", "type": "object", "properties": { - "Identifier": { - "minLength": 1, - "type": "string", - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "Name": { + "$ref": "#/definitions/CustomHTTPHeaderName" + }, + "Value": { + "$ref": "#/definitions/CustomHTTPHeaderValue" } }, "required": [ - "Identifier" + "Name", + "Value" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "HTTP header.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Rules": { - "description": "Collection of Rules.", - "type": "array", - "items": { - "$ref": "#/definitions/Rule" + "CustomRequestHandling": { + "description": "Custom request handling.", + "type": "object", + "properties": { + "InsertHeaders": { + "description": "Collection of HTTP headers.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomHTTPHeader" + }, + "minItems": 1, + "markdownDescription": "Collection of HTTP headers.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } }, - "markdownDescription": "Collection of Rules.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "required": [ + "InsertHeaders" + ], + "additionalProperties": false, + "markdownDescription": "Custom request handling.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "OversizeHandling": { - "description": "Handling of requests containing oversize fields", + "ResponseStatusCode": { + "description": "Custom response code.", + "type": "integer", + "minimum": 200, + "maximum": 599, + "markdownDescription": "Custom response code.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "ResponseContentType": { + "description": "Valid values are TEXT_PLAIN, TEXT_HTML, and APPLICATION_JSON.", "type": "string", "enum": [ - "CONTINUE", - "MATCH", - "NO_MATCH" + "TEXT_PLAIN", + "TEXT_HTML", + "APPLICATION_JSON" ], - "markdownDescription": "Handling of requests containing oversize fields\n\n---\n\nRequired: No \nType: String \nAllowed Values: CONTINUE | MATCH | NO_MATCH \nUpdate requires: No interruption\n" + "markdownDescription": "Valid values are TEXT_PLAIN, TEXT_HTML, and APPLICATION_JSON.\n\n---\n\nRequired: No \nType: String \nAllowed Values: TEXT_PLAIN | TEXT_HTML | APPLICATION_JSON \nUpdate requires: No interruption\n" }, - "SearchStringBase64": { - "description": "Base64 encoded string that is searched to find a match.", + "ResponseContent": { + "description": "Response content.", "type": "string", - "markdownDescription": "Base64 encoded string that is searched to find a match.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "minLength": 1, + "maxLength": 10240, + "markdownDescription": "Response content.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 10240 \nUpdate requires: No interruption\n" }, - "UriPath": { + "CustomResponseBody": { + "description": "Custom response body.", "type": "object", - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "CustomResponseBodies": { - "patternProperties": { - "^[\\w\\-]+$": { - "$ref": "#/definitions/CustomResponseBody" + "properties": { + "ContentType": { + "$ref": "#/definitions/ResponseContentType" + }, + "Content": { + "$ref": "#/definitions/ResponseContent" } }, - "description": "Custom response key and body map.", + "required": [ + "ContentType", + "Content" + ], "additionalProperties": false, - "type": "object", - "minProperties": 1, - "markdownDescription": "Custom response key and body map.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Custom response body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Tag": { - "additionalProperties": false, + "CustomResponse": { + "description": "Custom response.", "type": "object", "properties": { - "Value": { - "minLength": 0, - "type": "string", - "maxLength": 256, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + "ResponseCode": { + "$ref": "#/definitions/ResponseStatusCode" }, - "Key": { - "minLength": 1, + "CustomResponseBodyKey": { + "description": "Custom response body key.", "type": "string", - "maxLength": 128, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "CookieMatchPattern": { - "description": "The pattern to look for in the request cookies.", - "additionalProperties": false, - "type": "object", - "properties": { - "All": { - "description": "Inspect all parts of the web request cookies.", - "type": "object", - "markdownDescription": "Inspect all parts of the web request cookies.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Custom response body key.\n\n---\n\nRequired: No \nType: String \nPattern: ^[\\w\\-]+$ \nUpdate requires: No interruption\n" }, - "IncludedCookies": { - "minItems": 1, - "maxItems": 199, + "ResponseHeaders": { + "description": "Collection of HTTP headers.", "type": "array", "items": { - "minLength": 1, - "type": "string", - "maxLength": 60, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 60 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "$ref": "#/definitions/CustomHTTPHeader" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "ExcludedCookies": { "minItems": 1, - "maxItems": 199, - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 60, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 60 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "Collection of HTTP headers.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ResponseCode" + ], + "additionalProperties": false, + "markdownDescription": "Custom response.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CustomResponseBodies": { + "description": "Custom response key and body map.", + "type": "object", + "patternProperties": { + "^[\\w\\-]+$": { + "$ref": "#/definitions/CustomResponseBody" } }, - "markdownDescription": "The pattern to look for in the request cookies.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ResponseInspectionHeader": { - "description": "Response headers that indicate success or failure of a login request", + "minProperties": 1, "additionalProperties": false, + "markdownDescription": "Custom response key and body map.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RuleGroupReferenceStatement": { "type": "object", "properties": { - "SuccessValues": { - "minItems": 1, - "maxItems": 3, + "Arn": { + "$ref": "#/definitions/ResourceArn" + }, + "ExcludedRules": { "type": "array", "items": { - "minLength": 1, - "type": "string", - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "$ref": "#/definitions/ExcludedRule" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "FailureValues": { - "minItems": 1, - "maxItems": 3, + "RuleActionOverrides": { + "description": "Action overrides for rules in the rule group.", "type": "array", "items": { - "minLength": 1, - "type": "string", - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "$ref": "#/definitions/RuleActionOverride" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "Name": { - "minLength": 1, - "type": "string", - "maxLength": 200, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 200 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "maxItems": 100, + "markdownDescription": "Action overrides for rules in the rule group.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ - "Name", - "SuccessValues", - "FailureValues" + "Arn" ], - "markdownDescription": "Response headers that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "CaptchaAction": { - "description": "Checks valid token exists with request.", "additionalProperties": false, - "type": "object", - "properties": { - "CustomRequestHandling": { - "$ref": "#/definitions/CustomRequestHandling" - } - }, - "markdownDescription": "Checks valid token exists with request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "BlockAction": { - "description": "Block traffic towards application.", - "additionalProperties": false, - "type": "object", - "properties": { - "CustomResponse": { - "$ref": "#/definitions/CustomResponse" - } - }, - "markdownDescription": "Block traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "RulePriority": { + "description": "Priority of the Rule, Rules get evaluated from lower to higher priority.", + "type": "integer", + "minimum": 0, + "markdownDescription": "Priority of the Rule, Rules get evaluated from lower to higher priority.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "DataProtectionAction": { + "Scope": { + "description": "Use CLOUDFRONT for CloudFront WebACL, use REGIONAL for Application Load Balancer and API Gateway.", "type": "string", "enum": [ - "SUBSTITUTION", - "HASH" + "CLOUDFRONT", + "REGIONAL" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: SUBSTITUTION | HASH \nUpdate requires: No interruption\n" + "markdownDescription": "Use CLOUDFRONT for CloudFront WebACL, use REGIONAL for Application Load Balancer and API Gateway.\n\n---\n\nRequired: No \nType: String \nAllowed Values: CLOUDFRONT | REGIONAL \nUpdate requires: No interruption\n" }, - "Label": { - "additionalProperties": false, + "SearchString": { + "description": "String that is searched to find a match.", + "type": "string", + "markdownDescription": "String that is searched to find a match.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "SearchStringBase64": { + "description": "Base64 encoded string that is searched to find a match.", + "type": "string", + "markdownDescription": "Base64 encoded string that is searched to find a match.\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + }, + "SingleHeader": { "type": "object", "properties": { "Name": { - "$ref": "#/definitions/LabelName" + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "required": [ - "Name" - ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DataProtectionConfig": { - "additionalProperties": false, + "SingleQueryArgument": { "type": "object", "properties": { - "DataProtections": { - "$ref": "#/definitions/DataProtections" + "Name": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" } }, - "required": [ - "DataProtections" - ], + "additionalProperties": false, "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "UriFragment": { - "description": "The path component of the URI Fragment. This is the part of a web request that identifies a fragment uri, for example, /abcd#introduction", - "additionalProperties": false, + "SizeConstraintStatement": { + "description": "Size Constraint statement.", "type": "object", "properties": { - "FallbackBehavior": { + "FieldToMatch": { + "$ref": "#/definitions/FieldToMatch" + }, + "ComparisonOperator": { "type": "string", "enum": [ - "MATCH", - "NO_MATCH" + "EQ", + "NE", + "LE", + "LT", + "GE", + "GT" ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: EQ | NE | LE | LT | GE | GT \nUpdate requires: No interruption\n" + }, + "Size": { + "type": "number", + "minimum": 0, + "maximum": 21474836480, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Number \nUpdate requires: No interruption\n" + }, + "TextTransformations": { + "type": "array", + "items": { + "$ref": "#/definitions/TextTransformation" + }, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" } }, - "markdownDescription": "The path component of the URI Fragment. This is the part of a web request that identifies a fragment uri, for example, /abcd#introduction\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ResponseInspectionJson": { - "description": "Response JSON that indicate success or failure of a login request", + "required": [ + "FieldToMatch", + "ComparisonOperator", + "Size", + "TextTransformations" + ], "additionalProperties": false, + "markdownDescription": "Size Constraint statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SqliMatchStatement": { + "description": "Sqli Match Statement.", "type": "object", "properties": { - "Identifier": { - "minLength": 1, - "type": "string", - "maxLength": 512, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "FieldToMatch": { + "$ref": "#/definitions/FieldToMatch" }, - "SuccessValues": { - "minItems": 1, - "maxItems": 5, + "TextTransformations": { "type": "array", "items": { - "minLength": 1, - "type": "string", - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + "$ref": "#/definitions/TextTransformation" }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, - "FailureValues": { - "minItems": 1, - "maxItems": 5, - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 100, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "SensitivityLevel": { + "$ref": "#/definitions/SensitivityLevel" } }, "required": [ - "Identifier", - "SuccessValues", - "FailureValues" + "FieldToMatch", + "TextTransformations" ], - "markdownDescription": "Response JSON that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "FieldToProtect": { - "description": "Field in log to protect.", "additionalProperties": false, + "markdownDescription": "Sqli Match Statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Statement": { + "description": "First level statement that contains conditions, such as ByteMatch, SizeConstraint, etc", "type": "object", "properties": { - "FieldKeys": { - "description": "List of field keys to protect", - "type": "array", - "items": { - "$ref": "#/definitions/FieldToProtectKeyName" - }, - "markdownDescription": "List of field keys to protect\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "ByteMatchStatement": { + "$ref": "#/definitions/ByteMatchStatement" + }, + "SqliMatchStatement": { + "$ref": "#/definitions/SqliMatchStatement" + }, + "XssMatchStatement": { + "$ref": "#/definitions/XssMatchStatement" + }, + "SizeConstraintStatement": { + "$ref": "#/definitions/SizeConstraintStatement" + }, + "GeoMatchStatement": { + "$ref": "#/definitions/GeoMatchStatement" + }, + "RuleGroupReferenceStatement": { + "$ref": "#/definitions/RuleGroupReferenceStatement" + }, + "IPSetReferenceStatement": { + "$ref": "#/definitions/IPSetReferenceStatement" + }, + "RegexPatternSetReferenceStatement": { + "$ref": "#/definitions/RegexPatternSetReferenceStatement" + }, + "ManagedRuleGroupStatement": { + "$ref": "#/definitions/ManagedRuleGroupStatement" + }, + "RateBasedStatement": { + "$ref": "#/definitions/RateBasedStatement" + }, + "AndStatement": { + "$ref": "#/definitions/AndStatement" + }, + "OrStatement": { + "$ref": "#/definitions/OrStatement" + }, + "NotStatement": { + "$ref": "#/definitions/NotStatement" + }, + "LabelMatchStatement": { + "$ref": "#/definitions/LabelMatchStatement" + }, + "RegexMatchStatement": { + "$ref": "#/definitions/RegexMatchStatement" }, - "FieldType": { - "description": "Field type to protect", - "type": "string", - "enum": [ - "SINGLE_HEADER", - "SINGLE_COOKIE", - "SINGLE_QUERY_ARGUMENT", - "QUERY_STRING", - "BODY" - ], - "markdownDescription": "Field type to protect\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: SINGLE_HEADER | SINGLE_COOKIE | SINGLE_QUERY_ARGUMENT | QUERY_STRING | BODY \nUpdate requires: No interruption\n" + "AsnMatchStatement": { + "$ref": "#/definitions/AsnMatchStatement" } }, - "required": [ - "FieldType" - ], - "markdownDescription": "Field in log to protect.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ManagedRuleGroupConfig": { - "description": "ManagedRuleGroupConfig.", "additionalProperties": false, + "markdownDescription": "First level statement that contains conditions, such as ByteMatch, SizeConstraint, etc\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { "type": "object", "properties": { - "UsernameField": { - "$ref": "#/definitions/FieldIdentifier" - }, - "LoginPath": { - "minLength": 1, + "Key": { "type": "string", - "maxLength": 256, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" - }, - "AWSManagedRulesATPRuleSet": { - "$ref": "#/definitions/AWSManagedRulesATPRuleSet" - }, - "AWSManagedRulesBotControlRuleSet": { - "$ref": "#/definitions/AWSManagedRulesBotControlRuleSet" - }, - "PasswordField": { - "$ref": "#/definitions/FieldIdentifier" - }, - "AWSManagedRulesACFPRuleSet": { - "$ref": "#/definitions/AWSManagedRulesACFPRuleSet" + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" }, - "PayloadType": { + "Value": { "type": "string", - "enum": [ - "JSON", - "FORM_ENCODED" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: JSON | FORM_ENCODED \nUpdate requires: No interruption\n" + "minLength": 0, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" } }, - "markdownDescription": "ManagedRuleGroupConfig.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "Cookies": { - "description": "Includes cookies of a web request.", "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TextTransformation": { + "description": "Text Transformation on the Search String before match.", "type": "object", "properties": { - "MatchScope": { - "$ref": "#/definitions/MapMatchScope" - }, - "MatchPattern": { - "$ref": "#/definitions/CookieMatchPattern" + "Priority": { + "$ref": "#/definitions/TextTransformationPriority" }, - "OversizeHandling": { - "$ref": "#/definitions/OversizeHandling" + "Type": { + "$ref": "#/definitions/TextTransformationType" } }, "required": [ - "MatchPattern", - "MatchScope", - "OversizeHandling" + "Priority", + "Type" ], - "markdownDescription": "Includes cookies of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AllowAction": { - "description": "Allow traffic towards application.", "additionalProperties": false, + "markdownDescription": "Text Transformation on the Search String before match.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TextTransformationPriority": { + "description": "Priority of Rule being evaluated.", + "type": "integer", + "minimum": 0, + "markdownDescription": "Priority of Rule being evaluated.\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "TextTransformationType": { + "description": "Type of text transformation.", + "type": "string", + "enum": [ + "NONE", + "COMPRESS_WHITE_SPACE", + "HTML_ENTITY_DECODE", + "LOWERCASE", + "CMD_LINE", + "URL_DECODE", + "BASE64_DECODE", + "HEX_DECODE", + "MD5", + "REPLACE_COMMENTS", + "ESCAPE_SEQ_DECODE", + "SQL_HEX_DECODE", + "CSS_DECODE", + "JS_DECODE", + "NORMALIZE_PATH", + "NORMALIZE_PATH_WIN", + "REMOVE_NULLS", + "REPLACE_NULLS", + "BASE64_DECODE_EXT", + "URL_DECODE_UNI", + "UTF8_TO_UNICODE" + ], + "markdownDescription": "Type of text transformation.\n\n---\n\nRequired: No \nType: String \nAllowed Values: NONE | COMPRESS_WHITE_SPACE | HTML_ENTITY_DECODE | LOWERCASE | CMD_LINE | URL_DECODE | BASE64_DECODE | HEX_DECODE | MD5 | REPLACE_COMMENTS | ESCAPE_SEQ_DECODE | SQL_HEX_DECODE | CSS_DECODE | JS_DECODE | NORMALIZE_PATH | NORMALIZE_PATH_WIN | REMOVE_NULLS | REPLACE_NULLS | BASE64_DECODE_EXT | URL_DECODE_UNI | UTF8_TO_UNICODE \nUpdate requires: No interruption\n" + }, + "UriPath": { "type": "object", - "properties": { - "CustomRequestHandling": { - "$ref": "#/definitions/CustomRequestHandling" - } - }, - "markdownDescription": "Allow traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "AWSManagedRulesBotControlRuleSet": { - "description": "Configures how to use the Bot Control managed rule group in the web ACL", - "additionalProperties": false, + "VisibilityConfig": { + "description": "Visibility Metric of the WebACL.", "type": "object", "properties": { - "InspectionLevel": { - "type": "string", - "enum": [ - "COMMON", - "TARGETED" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: COMMON | TARGETED \nUpdate requires: No interruption\n" + "SampledRequestsEnabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" }, - "EnableMachineLearning": { + "CloudWatchMetricsEnabled": { "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + }, + "MetricName": { + "type": "string", + "maxLength": 128, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" } }, "required": [ - "InspectionLevel" + "SampledRequestsEnabled", + "CloudWatchMetricsEnabled", + "MetricName" ], - "markdownDescription": "Configures how to use the Bot Control managed rule group in the web ACL\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Visibility Metric of the WebACL.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "SqliMatchStatement": { - "description": "Sqli Match Statement.", + "DataProtectionConfig": { + "type": "object", + "properties": { + "DataProtections": { + "$ref": "#/definitions/DataProtections" + } + }, + "required": [ + "DataProtections" + ], "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DataProtections": { + "type": "array", + "items": { + "$ref": "#/definitions/DataProtect" + }, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "DataProtect": { "type": "object", "properties": { - "SensitivityLevel": { - "$ref": "#/definitions/SensitivityLevel" + "Field": { + "$ref": "#/definitions/FieldToProtect" }, - "TextTransformations": { - "type": "array", - "items": { - "$ref": "#/definitions/TextTransformation" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "Action": { + "$ref": "#/definitions/DataProtectionAction" }, - "FieldToMatch": { - "$ref": "#/definitions/FieldToMatch" + "ExcludeRuleMatchDetails": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "ExcludeRateBasedDetails": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, "required": [ - "FieldToMatch", - "TextTransformations" + "Field", + "Action" ], - "markdownDescription": "Sqli Match Statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ManagedRuleGroupStatement": { "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "DataProtectionAction": { + "type": "string", + "enum": [ + "SUBSTITUTION", + "HASH" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: SUBSTITUTION | HASH \nUpdate requires: No interruption\n" + }, + "FieldToProtect": { + "description": "Field in log to protect.", "type": "object", "properties": { - "VendorName": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, - "Version": { - "minLength": 1, + "FieldType": { + "description": "Field type to protect", "type": "string", - "maxLength": 64, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[\\w#:\\.\\-/]+$ \nUpdate requires: No interruption\n" - }, - "RuleActionOverrides": { - "maxItems": 100, - "description": "Action overrides for rules in the rule group.", - "type": "array", - "items": { - "$ref": "#/definitions/RuleActionOverride" - }, - "markdownDescription": "Action overrides for rules in the rule group.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "ManagedRuleGroupConfigs": { - "description": "Collection of ManagedRuleGroupConfig.", - "type": "array", - "items": { - "$ref": "#/definitions/ManagedRuleGroupConfig" - }, - "markdownDescription": "Collection of ManagedRuleGroupConfig.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "enum": [ + "SINGLE_HEADER", + "SINGLE_COOKIE", + "SINGLE_QUERY_ARGUMENT", + "QUERY_STRING", + "BODY" + ], + "markdownDescription": "Field type to protect\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: SINGLE_HEADER | SINGLE_COOKIE | SINGLE_QUERY_ARGUMENT | QUERY_STRING | BODY \nUpdate requires: No interruption\n" }, - "ExcludedRules": { + "FieldKeys": { + "description": "List of field keys to protect", "type": "array", "items": { - "$ref": "#/definitions/ExcludedRule" + "$ref": "#/definitions/FieldToProtectKeyName" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Name": { - "$ref": "#/definitions/EntityName" - }, - "ScopeDownStatement": { - "$ref": "#/definitions/Statement" + "markdownDescription": "List of field keys to protect\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ - "VendorName", - "Name" + "FieldType" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Field in log to protect.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "EvaluationWindowSec": { - "type": "integer", - "enum": [ - 60, - 120, - 300, - 600 - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nAllowed Values: 60 | 120 | 300 | 600 \nUpdate requires: No interruption\n" + "FieldToProtectKeyName": { + "description": "Key of the field to protect.", + "type": "string", + "minLength": 1, + "maxLength": 64, + "markdownDescription": "Key of the field to protect.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" }, - "RateLimitCookie": { - "description": "Specifies a cookie as an aggregate key for a rate-based rule.", - "additionalProperties": false, + "XssMatchStatement": { + "description": "Xss Match Statement.", "type": "object", "properties": { + "FieldToMatch": { + "$ref": "#/definitions/FieldToMatch" + }, "TextTransformations": { "type": "array", "items": { "$ref": "#/definitions/TextTransformation" }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "Name": { - "minLength": 1, - "description": "The name of the cookie to use.", - "type": "string", - "maxLength": 64, - "markdownDescription": "The name of the cookie to use.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" } }, "required": [ - "Name", + "FieldToMatch", "TextTransformations" ], - "markdownDescription": "Specifies a cookie as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AddressField": { - "$ref": "#/definitions/FieldIdentifier" - }, - "JsonMatchPattern": { - "description": "The pattern to look for in the JSON body.", "additionalProperties": false, - "type": "object", - "properties": { - "All": { - "description": "Inspect all parts of the web request's JSON body.", - "type": "object", - "markdownDescription": "Inspect all parts of the web request's JSON body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "IncludedPaths": { - "type": "array", - "items": { - "$ref": "#/definitions/JsonPointerPath" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "The pattern to look for in the JSON body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Xss Match Statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RateLimitIP": { - "description": "Specifies the IP address in the web request as an aggregate key for a rate-based rule.", - "type": "object", - "markdownDescription": "Specifies the IP address in the web request as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "LabelName": { + "description": "Name of the Label.", + "type": "string", + "markdownDescription": "Name of the Label.\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9A-Za-z_:-]{1,1024}$ \nUpdate requires: No interruption\n" }, - "ChallengeAction": { - "description": "Checks that the request has a valid token with an unexpired challenge timestamp and, if not, returns a browser challenge to the client.", - "additionalProperties": false, + "Label": { "type": "object", "properties": { - "CustomRequestHandling": { - "$ref": "#/definitions/CustomRequestHandling" + "Name": { + "$ref": "#/definitions/LabelName" } }, - "markdownDescription": "Checks that the request has a valid token with an unexpired challenge timestamp and, if not, returns a browser challenge to the client.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "Name" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "FieldToProtectKeyName": { - "minLength": 1, - "description": "Key of the field to protect.", + "LabelMatchKey": { "type": "string", - "maxLength": 64, - "markdownDescription": "Key of the field to protect.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9A-Za-z_:-]{1,1024}$ \nUpdate requires: No interruption\n" }, - "CountAction": { - "description": "Allow traffic towards application.", - "additionalProperties": false, + "LabelMatchScope": { + "type": "string", + "enum": [ + "LABEL", + "NAMESPACE" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: LABEL | NAMESPACE \nUpdate requires: No interruption\n" + }, + "LabelMatchStatement": { "type": "object", "properties": { - "CustomRequestHandling": { - "$ref": "#/definitions/CustomRequestHandling" + "Scope": { + "$ref": "#/definitions/LabelMatchScope" + }, + "Key": { + "$ref": "#/definitions/LabelMatchKey" } }, - "markdownDescription": "Allow traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ByteMatchStatement": { - "description": "Byte Match statement.", + "required": [ + "Scope", + "Key" + ], "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RegexMatchStatement": { "type": "object", "properties": { - "SearchStringBase64": { - "$ref": "#/definitions/SearchStringBase64" + "RegexString": { + "type": "string", + "maxLength": 512, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" + }, + "FieldToMatch": { + "$ref": "#/definitions/FieldToMatch" }, "TextTransformations": { "type": "array", @@ -1588,149 +1553,181 @@ "$ref": "#/definitions/TextTransformation" }, "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "PositionalConstraint": { - "$ref": "#/definitions/PositionalConstraint" - }, - "SearchString": { - "$ref": "#/definitions/SearchString" - }, - "FieldToMatch": { - "$ref": "#/definitions/FieldToMatch" } }, "required": [ + "RegexString", "FieldToMatch", - "PositionalConstraint", "TextTransformations" ], - "markdownDescription": "Byte Match statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SizeInspectionLimit": { - "type": "string", - "enum": [ - "KB_16", - "KB_32", - "KB_48", - "KB_64" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: KB_16 | KB_32 | KB_48 | KB_64 \nUpdate requires: No interruption\n" - }, - "CustomRequestHandling": { - "description": "Custom request handling.", "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AsnMatchStatement": { "type": "object", "properties": { - "InsertHeaders": { - "minItems": 1, - "description": "Collection of HTTP headers.", + "AsnList": { "type": "array", "items": { - "$ref": "#/definitions/CustomHTTPHeader" + "type": "integer", + "minimum": 0, + "maximum": 4294967295, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" }, - "markdownDescription": "Collection of HTTP headers.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ForwardedIPConfig": { + "$ref": "#/definitions/ForwardedIPConfiguration" } }, - "required": [ - "InsertHeaders" - ], - "markdownDescription": "Custom request handling.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "DataProtections": { - "minItems": 1, - "type": "array", - "items": { - "$ref": "#/definitions/DataProtect" + "CaptchaConfig": { + "type": "object", + "properties": { + "ImmunityTimeProperty": { + "$ref": "#/definitions/ImmunityTimeProperty" + } }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "OverrideAction": { - "description": "Override a RuleGroup or ManagedRuleGroup behavior. This can only be applied to Rule that has RuleGroupReferenceStatement or ManagedRuleGroupReferenceStatement.", + "ChallengeConfig": { + "type": "object", + "properties": { + "ImmunityTimeProperty": { + "$ref": "#/definitions/ImmunityTimeProperty" + } + }, "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ImmunityTimeProperty": { "type": "object", "properties": { - "Count": { - "description": "Count traffic towards application.", - "type": "object", - "markdownDescription": "Count traffic towards application.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "ImmunityTime": { + "type": "integer", + "minimum": 60, + "maximum": 259200, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ImmunityTime" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ManagedRuleGroupConfig": { + "description": "ManagedRuleGroupConfig.", + "type": "object", + "properties": { + "LoginPath": { + "type": "string", + "minLength": 1, + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "PayloadType": { + "type": "string", + "enum": [ + "JSON", + "FORM_ENCODED" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: JSON | FORM_ENCODED \nUpdate requires: No interruption\n" + }, + "UsernameField": { + "$ref": "#/definitions/FieldIdentifier" + }, + "PasswordField": { + "$ref": "#/definitions/FieldIdentifier" + }, + "AWSManagedRulesBotControlRuleSet": { + "$ref": "#/definitions/AWSManagedRulesBotControlRuleSet" }, - "None": { - "description": "Keep the RuleGroup or ManagedRuleGroup behavior as is.", - "type": "object", - "markdownDescription": "Keep the RuleGroup or ManagedRuleGroup behavior as is.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "AWSManagedRulesATPRuleSet": { + "$ref": "#/definitions/AWSManagedRulesATPRuleSet" + }, + "AWSManagedRulesACFPRuleSet": { + "$ref": "#/definitions/AWSManagedRulesACFPRuleSet" + }, + "AWSManagedRulesAntiDDoSRuleSet": { + "$ref": "#/definitions/AWSManagedRulesAntiDDoSRuleSet" } }, - "markdownDescription": "Override a RuleGroup or ManagedRuleGroup behavior. This can only be applied to Rule that has RuleGroupReferenceStatement or ManagedRuleGroupReferenceStatement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "GeoMatchStatement": { "additionalProperties": false, + "markdownDescription": "ManagedRuleGroupConfig.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AWSManagedRulesBotControlRuleSet": { + "description": "Configures how to use the Bot Control managed rule group in the web ACL", "type": "object", "properties": { - "ForwardedIPConfig": { - "$ref": "#/definitions/ForwardedIPConfiguration" + "InspectionLevel": { + "type": "string", + "enum": [ + "COMMON", + "TARGETED" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: COMMON | TARGETED \nUpdate requires: No interruption\n" }, - "CountryCodes": { - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 2, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2 \nUpdate requires: No interruption\n" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "EnableMachineLearning": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" } }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "VisibilityConfig": { - "description": "Visibility Metric of the WebACL.", + "required": [ + "InspectionLevel" + ], "additionalProperties": false, + "markdownDescription": "Configures how to use the Bot Control managed rule group in the web ACL\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "AWSManagedRulesATPRuleSet": { + "description": "Configures how to use the Account Takeover Prevention managed rule group in the web ACL", "type": "object", "properties": { - "MetricName": { - "minLength": 1, + "LoginPath": { "type": "string", - "maxLength": 128, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, - "SampledRequestsEnabled": { + "EnableRegexInPath": { "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" }, - "CloudWatchMetricsEnabled": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Boolean \nUpdate requires: No interruption\n" + "RequestInspection": { + "$ref": "#/definitions/RequestInspection" + }, + "ResponseInspection": { + "$ref": "#/definitions/ResponseInspection" } }, "required": [ - "SampledRequestsEnabled", - "CloudWatchMetricsEnabled", - "MetricName" + "LoginPath" ], - "markdownDescription": "Visibility Metric of the WebACL.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Configures how to use the Account Takeover Prevention managed rule group in the web ACL\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "AWSManagedRulesACFPRuleSet": { "description": "Configures how to use the Account creation fraud prevention managed rule group in the web ACL", - "additionalProperties": false, "type": "object", "properties": { + "CreationPath": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" + }, "RegistrationPagePath": { "type": "string", "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" }, + "RequestInspection": { + "$ref": "#/definitions/RequestInspectionACFP" + }, "ResponseInspection": { "$ref": "#/definitions/ResponseInspection" }, - "CreationPath": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, "EnableRegexInPath": { "type": "boolean", "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "RequestInspection": { - "$ref": "#/definitions/RequestInspectionACFP" } }, "required": [ @@ -1738,139 +1735,176 @@ "RegistrationPagePath", "RequestInspection" ], + "additionalProperties": false, "markdownDescription": "Configures how to use the Account creation fraud prevention managed rule group in the web ACL\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RuleGroupReferenceStatement": { - "additionalProperties": false, + "AWSManagedRulesAntiDDoSRuleSet": { + "description": "Configures how to use the AntiDDOS AWS managed rule group in the web ACL", "type": "object", "properties": { - "RuleActionOverrides": { - "maxItems": 100, - "description": "Action overrides for rules in the rule group.", - "type": "array", - "items": { - "$ref": "#/definitions/RuleActionOverride" - }, - "markdownDescription": "Action overrides for rules in the rule group.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "Arn": { - "$ref": "#/definitions/ResourceArn" + "ClientSideActionConfig": { + "$ref": "#/definitions/ClientSideActionConfig" }, - "ExcludedRules": { - "type": "array", - "items": { - "$ref": "#/definitions/ExcludedRule" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "SensitivityToBlock": { + "$ref": "#/definitions/SensitivityToAct" } }, "required": [ - "Arn" + "ClientSideActionConfig" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Configures how to use the AntiDDOS AWS managed rule group in the web ACL\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "TokenDomains": { - "description": "List of domains to accept in web request tokens, in addition to the domain of the protected resource.", - "type": "array", - "items": { - "minLength": 1, - "type": "string", - "maxLength": 253, - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 253 \nPattern: ^[\\w\\.\\-/]+$ \nUpdate requires: No interruption\n" + "ClientSideActionConfig": { + "description": "Client side action config for AntiDDOS AMR.", + "type": "object", + "properties": { + "Challenge": { + "$ref": "#/definitions/ClientSideAction" + } }, - "markdownDescription": "List of domains to accept in web request tokens, in addition to the domain of the protected resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "RateLimitJA4Fingerprint": { - "description": "Specifies the request's JA4 fingerprint as an aggregate key for a rate-based rule.", + "required": [ + "Challenge" + ], "additionalProperties": false, + "markdownDescription": "Client side action config for AntiDDOS AMR.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ClientSideAction": { + "description": "Client side action config for AntiDDOS AMR.", "type": "object", "properties": { - "FallbackBehavior": { - "type": "string", - "enum": [ - "MATCH", - "NO_MATCH" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" + "UsageOfAction": { + "$ref": "#/definitions/UsageOfAction" + }, + "Sensitivity": { + "$ref": "#/definitions/SensitivityToAct" + }, + "ExemptUriRegularExpressions": { + "$ref": "#/definitions/RegularExpressionList" } }, "required": [ - "FallbackBehavior" + "UsageOfAction" ], - "markdownDescription": "Specifies the request's JA4 fingerprint as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Client side action config for AntiDDOS AMR.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ResourceArn": { - "minLength": 20, - "description": "ARN of the WAF entity.", + "UsageOfAction": { "type": "string", - "maxLength": 2048, - "markdownDescription": "ARN of the WAF entity.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + "enum": [ + "ENABLED", + "DISABLED" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ENABLED | DISABLED \nUpdate requires: No interruption\n" }, - "DefaultAction": { - "description": "Default Action WebACL will take against ingress traffic when there is no matching Rule.", - "additionalProperties": false, + "SensitivityToAct": { + "type": "string", + "enum": [ + "LOW", + "MEDIUM", + "HIGH" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: LOW | MEDIUM | HIGH \nUpdate requires: No interruption\n" + }, + "RegularExpressionList": { + "type": "array", + "items": { + "$ref": "#/definitions/Regex" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Regex": { + "description": "Regex", "type": "object", "properties": { - "Block": { - "$ref": "#/definitions/BlockAction" - }, - "Allow": { - "$ref": "#/definitions/AllowAction" + "RegexString": { + "$ref": "#/definitions/RegexPatternString" } }, - "markdownDescription": "Default Action WebACL will take against ingress traffic when there is no matching Rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Regex\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "JsonPointerPath": { - "description": "JSON pointer path in the web request's JSON body", + "RegexPatternString": { "type": "string", - "markdownDescription": "JSON pointer path in the web request's JSON body\n\n---\n\nRequired: No \nType: String \nPattern: ^[\\/]+([^~]*(~[01])*)*{1,512}$ \nUpdate requires: No interruption\n" + "maxLength": 512, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nUpdate requires: No interruption\n" }, - "RateBasedStatementCustomKey": { - "description": "Specifies a single custom aggregate key for a rate-base rule.", - "additionalProperties": false, + "RequestInspection": { + "description": "Configures the inspection of login requests", "type": "object", "properties": { - "Cookie": { - "$ref": "#/definitions/RateLimitCookie" - }, - "ForwardedIP": { - "$ref": "#/definitions/RateLimitForwardedIP" - }, - "QueryArgument": { - "$ref": "#/definitions/RateLimitQueryArgument" - }, - "JA3Fingerprint": { - "$ref": "#/definitions/RateLimitJA3Fingerprint" + "PayloadType": { + "type": "string", + "enum": [ + "JSON", + "FORM_ENCODED" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: JSON | FORM_ENCODED \nUpdate requires: No interruption\n" }, - "Header": { - "$ref": "#/definitions/RateLimitHeader" + "UsernameField": { + "$ref": "#/definitions/FieldIdentifier" }, - "HTTPMethod": { - "$ref": "#/definitions/RateLimitHTTPMethod" + "PasswordField": { + "$ref": "#/definitions/FieldIdentifier" + } + }, + "required": [ + "PayloadType", + "UsernameField", + "PasswordField" + ], + "additionalProperties": false, + "markdownDescription": "Configures the inspection of login requests\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RequestInspectionACFP": { + "description": "Configures the inspection of sign-up requests", + "type": "object", + "properties": { + "PayloadType": { + "type": "string", + "enum": [ + "JSON", + "FORM_ENCODED" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: JSON | FORM_ENCODED \nUpdate requires: No interruption\n" }, - "QueryString": { - "$ref": "#/definitions/RateLimitQueryString" + "UsernameField": { + "$ref": "#/definitions/FieldIdentifier" }, - "UriPath": { - "$ref": "#/definitions/RateLimitUriPath" + "PasswordField": { + "$ref": "#/definitions/FieldIdentifier" }, - "IP": { - "$ref": "#/definitions/RateLimitIP" + "EmailField": { + "$ref": "#/definitions/FieldIdentifier" }, - "JA4Fingerprint": { - "$ref": "#/definitions/RateLimitJA4Fingerprint" + "PhoneNumberFields": { + "type": "array", + "items": { + "$ref": "#/definitions/PhoneNumberField" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" }, - "LabelNamespace": { - "$ref": "#/definitions/RateLimitLabelNamespace" + "AddressFields": { + "type": "array", + "items": { + "$ref": "#/definitions/AddressField" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "markdownDescription": "Specifies a single custom aggregate key for a rate-base rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "required": [ + "PayloadType" + ], + "additionalProperties": false, + "markdownDescription": "Configures the inspection of sign-up requests\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "ResponseInspection": { "description": "Configures the inspection of login responses", - "additionalProperties": false, "type": "object", "properties": { + "StatusCode": { + "$ref": "#/definitions/ResponseInspectionStatusCode" + }, "Header": { "$ref": "#/definitions/ResponseInspectionHeader" }, @@ -1879,144 +1913,258 @@ }, "Json": { "$ref": "#/definitions/ResponseInspectionJson" - }, - "StatusCode": { - "$ref": "#/definitions/ResponseInspectionStatusCode" } }, + "additionalProperties": false, "markdownDescription": "Configures the inspection of login responses\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "LabelMatchScope": { - "type": "string", - "enum": [ - "LABEL", - "NAMESPACE" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: LABEL | NAMESPACE \nUpdate requires: No interruption\n" - }, - "RateLimitHTTPMethod": { - "description": "Specifies the request's HTTP method as an aggregate key for a rate-based rule.", + "ResponseInspectionStatusCode": { + "description": "Response status codes that indicate success or failure of a login request", "type": "object", - "markdownDescription": "Specifies the request's HTTP method as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RequestInspectionACFP": { - "description": "Configures the inspection of sign-up requests", + "properties": { + "SuccessCodes": { + "type": "array", + "items": { + "type": "integer", + "minLength": 0, + "maxLength": 999, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nMaximum Length: 999 \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 10, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "FailureCodes": { + "type": "array", + "items": { + "type": "integer", + "minLength": 0, + "maxLength": 999, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nMaximum Length: 999 \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 10, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "SuccessCodes", + "FailureCodes" + ], "additionalProperties": false, + "markdownDescription": "Response status codes that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ResponseInspectionHeader": { + "description": "Response headers that indicate success or failure of a login request", "type": "object", "properties": { - "UsernameField": { - "$ref": "#/definitions/FieldIdentifier" - }, - "EmailField": { - "$ref": "#/definitions/FieldIdentifier" - }, - "PasswordField": { - "$ref": "#/definitions/FieldIdentifier" + "Name": { + "type": "string", + "minLength": 1, + "maxLength": 200, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 200 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" }, - "AddressFields": { + "SuccessValues": { "type": "array", "items": { - "$ref": "#/definitions/AddressField" + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" - }, - "PayloadType": { - "type": "string", - "enum": [ - "JSON", - "FORM_ENCODED" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: JSON | FORM_ENCODED \nUpdate requires: No interruption\n" + "minItems": 1, + "maxItems": 3, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" }, - "PhoneNumberFields": { + "FailureValues": { "type": "array", "items": { - "$ref": "#/definitions/PhoneNumberField" + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "minItems": 1, + "maxItems": 3, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ - "PayloadType" + "Name", + "SuccessValues", + "FailureValues" ], - "markdownDescription": "Configures the inspection of sign-up requests\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Response headers that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ImmunityTimeProperty": { + "ResponseInspectionBodyContains": { + "description": "Response body contents that indicate success or failure of a login request", + "type": "object", + "properties": { + "SuccessStrings": { + "type": "array", + "items": { + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 5, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "FailureStrings": { + "type": "array", + "items": { + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 5, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "SuccessStrings", + "FailureStrings" + ], "additionalProperties": false, + "markdownDescription": "Response body contents that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ResponseInspectionJson": { + "description": "Response JSON that indicate success or failure of a login request", "type": "object", "properties": { - "ImmunityTime": { - "maximum": 259200, - "type": "integer", - "minimum": 60, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Integer \nUpdate requires: No interruption\n" + "Identifier": { + "type": "string", + "minLength": 1, + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "SuccessValues": { + "type": "array", + "items": { + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 5, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + }, + "FailureValues": { + "type": "array", + "items": { + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 5, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" } }, "required": [ - "ImmunityTime" + "Identifier", + "SuccessValues", + "FailureValues" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Response JSON that indicate success or failure of a login request\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "RateLimitLabelNamespace": { - "description": "Specifies a label namespace to use as an aggregate key for a rate-based rule.", + "TokenDomains": { + "description": "List of domains to accept in web request tokens, in addition to the domain of the protected resource.", + "type": "array", + "items": { + "type": "string", + "minLength": 1, + "maxLength": 253, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 253 \nPattern: ^[\\w\\.\\-/]+$ \nUpdate requires: No interruption\n" + }, + "markdownDescription": "List of domains to accept in web request tokens, in addition to the domain of the protected resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "AssociationConfig": { + "description": "AssociationConfig for body inspection", + "type": "object", + "properties": { + "RequestBody": { + "$ref": "#/definitions/RequestBody" + } + }, + "additionalProperties": false, + "markdownDescription": "AssociationConfig for body inspection\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RequestBody": { + "type": "object", + "description": "Map of AssociatedResourceType and RequestBodyAssociatedResourceTypeConfig", + "patternProperties": { + "^(CLOUDFRONT|API_GATEWAY|COGNITO_USER_POOL|APP_RUNNER_SERVICE|VERIFIED_ACCESS_INSTANCE)$": { + "$ref": "#/definitions/RequestBodyAssociatedResourceTypeConfig" + } + }, "additionalProperties": false, + "markdownDescription": "Map of AssociatedResourceType and RequestBodyAssociatedResourceTypeConfig\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RequestBodyAssociatedResourceTypeConfig": { + "description": "Configures the inspection size in the request body.", "type": "object", "properties": { - "Namespace": { - "description": "The namespace to use for aggregation.", - "type": "string", - "markdownDescription": "The namespace to use for aggregation.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[0-9A-Za-z_:-]{1,1024}$ \nUpdate requires: No interruption\n" + "DefaultSizeInspectionLimit": { + "$ref": "#/definitions/SizeInspectionLimit" } }, "required": [ - "Namespace" + "DefaultSizeInspectionLimit" ], - "markdownDescription": "Specifies a label namespace to use as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Configures the inspection size in the request body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SizeInspectionLimit": { + "type": "string", + "enum": [ + "KB_16", + "KB_32", + "KB_48", + "KB_64" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: KB_16 | KB_32 | KB_48 | KB_64 \nUpdate requires: No interruption\n" + }, + "PhoneNumberField": { + "$ref": "#/definitions/FieldIdentifier" + }, + "AddressField": { + "$ref": "#/definitions/FieldIdentifier" }, - "SingleQueryArgument": { - "additionalProperties": false, + "FieldIdentifier": { "type": "object", "properties": { - "Name": { + "Identifier": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" - } - }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "XssMatchStatement": { - "description": "Xss Match Statement.", - "additionalProperties": false, - "type": "object", - "properties": { - "TextTransformations": { - "type": "array", - "items": { - "$ref": "#/definitions/TextTransformation" - }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" - }, - "FieldToMatch": { - "$ref": "#/definitions/FieldToMatch" + "minLength": 1, + "maxLength": 512, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 512 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" } }, "required": [ - "FieldToMatch", - "TextTransformations" + "Identifier" ], - "markdownDescription": "Xss Match Statement.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, "Headers": { "description": "Includes headers of a web request.", - "additionalProperties": false, "type": "object", "properties": { - "MatchScope": { - "$ref": "#/definitions/MapMatchScope" - }, "MatchPattern": { "$ref": "#/definitions/HeaderMatchPattern" }, + "MatchScope": { + "$ref": "#/definitions/MapMatchScope" + }, "OversizeHandling": { "$ref": "#/definitions/OversizeHandling" } @@ -2026,78 +2174,18 @@ "MatchScope", "OversizeHandling" ], - "markdownDescription": "Includes headers of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RateLimitForwardedIP": { - "description": "Specifies the first IP address in an HTTP header as an aggregate key for a rate-based rule.", - "type": "object", - "markdownDescription": "Specifies the first IP address in an HTTP header as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "AWSManagedRulesATPRuleSet": { - "description": "Configures how to use the Account Takeover Prevention managed rule group in the web ACL", - "additionalProperties": false, - "type": "object", - "properties": { - "ResponseInspection": { - "$ref": "#/definitions/ResponseInspection" - }, - "EnableRegexInPath": { - "type": "boolean", - "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" - }, - "LoginPath": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nUpdate requires: No interruption\n" - }, - "RequestInspection": { - "$ref": "#/definitions/RequestInspection" - } - }, - "required": [ - "LoginPath" - ], - "markdownDescription": "Configures how to use the Account Takeover Prevention managed rule group in the web ACL\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RequestInspection": { - "description": "Configures the inspection of login requests", "additionalProperties": false, - "type": "object", - "properties": { - "UsernameField": { - "$ref": "#/definitions/FieldIdentifier" - }, - "PasswordField": { - "$ref": "#/definitions/FieldIdentifier" - }, - "PayloadType": { - "type": "string", - "enum": [ - "JSON", - "FORM_ENCODED" - ], - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: JSON | FORM_ENCODED \nUpdate requires: No interruption\n" - } - }, - "required": [ - "PayloadType", - "UsernameField", - "PasswordField" - ], - "markdownDescription": "Configures the inspection of login requests\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "Includes headers of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "JsonBody": { - "description": "Inspect the request body as JSON. The request body immediately follows the request headers.", - "additionalProperties": false, + "Cookies": { + "description": "Includes cookies of a web request.", "type": "object", "properties": { - "MatchScope": { - "$ref": "#/definitions/JsonMatchScope" - }, "MatchPattern": { - "$ref": "#/definitions/JsonMatchPattern" + "$ref": "#/definitions/CookieMatchPattern" }, - "InvalidFallbackBehavior": { - "$ref": "#/definitions/BodyParsingFallbackBehavior" + "MatchScope": { + "$ref": "#/definitions/MapMatchScope" }, "OversizeHandling": { "$ref": "#/definitions/OversizeHandling" @@ -2105,116 +2193,105 @@ }, "required": [ "MatchPattern", - "MatchScope" + "MatchScope", + "OversizeHandling" ], - "markdownDescription": "Inspect the request body as JSON. The request body immediately follows the request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RateLimit": { - "maximum": 2000000000, - "type": "integer", - "minimum": 10, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" - }, - "OrStatement": { "additionalProperties": false, + "markdownDescription": "Includes cookies of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "HeaderMatchPattern": { + "description": "The pattern to look for in the request headers.", "type": "object", "properties": { - "Statements": { + "All": { + "description": "Inspect all parts of the web request headers.", + "type": "object", + "markdownDescription": "Inspect all parts of the web request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "IncludedHeaders": { "type": "array", "items": { - "$ref": "#/definitions/Statement" + "type": "string", + "minLength": 1, + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "minItems": 1, + "maxItems": 199, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ExcludedHeaders": { + "type": "array", + "items": { + "type": "string", + "minLength": 1, + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 199, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "required": [ - "Statements" - ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "Body": { - "description": "The body of a web request. This immediately follows the request headers.", "additionalProperties": false, - "type": "object", - "properties": { - "OversizeHandling": { - "$ref": "#/definitions/OversizeHandling" - } - }, - "markdownDescription": "The body of a web request. This immediately follows the request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "The pattern to look for in the request headers.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "CustomHTTPHeader": { - "description": "HTTP header.", - "additionalProperties": false, + "CookieMatchPattern": { + "description": "The pattern to look for in the request cookies.", "type": "object", "properties": { - "Value": { - "$ref": "#/definitions/CustomHTTPHeaderValue" + "All": { + "description": "Inspect all parts of the web request cookies.", + "type": "object", + "markdownDescription": "Inspect all parts of the web request cookies.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "Name": { - "$ref": "#/definitions/CustomHTTPHeaderName" - } - }, - "required": [ - "Name", - "Value" - ], - "markdownDescription": "HTTP header.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "RateLimitQueryString": { - "description": "Specifies the request's query string as an aggregate key for a rate-based rule.", - "additionalProperties": false, - "type": "object", - "properties": { - "TextTransformations": { + "IncludedCookies": { "type": "array", "items": { - "$ref": "#/definitions/TextTransformation" + "type": "string", + "minLength": 1, + "maxLength": 60, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 60 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" }, - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + "minItems": 1, + "maxItems": 199, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "ExcludedCookies": { + "type": "array", + "items": { + "type": "string", + "minLength": 1, + "maxLength": 60, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 60 \nPattern: .*\\S.* \nUpdate requires: No interruption\n" + }, + "minItems": 1, + "maxItems": 199, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" } }, - "required": [ - "TextTransformations" - ], - "markdownDescription": "Specifies the request's query string as an aggregate key for a rate-based rule.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "QueryString": { - "type": "object", - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "The pattern to look for in the request cookies.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" }, - "ResponseContentType": { - "description": "Valid values are TEXT_PLAIN, TEXT_HTML, and APPLICATION_JSON.", + "MapMatchScope": { + "description": "The parts of the request to match against using the MatchPattern.", "type": "string", "enum": [ - "TEXT_PLAIN", - "TEXT_HTML", - "APPLICATION_JSON" - ], - "markdownDescription": "Valid values are TEXT_PLAIN, TEXT_HTML, and APPLICATION_JSON.\n\n---\n\nRequired: No \nType: String \nAllowed Values: TEXT_PLAIN | TEXT_HTML | APPLICATION_JSON \nUpdate requires: No interruption\n" - }, - "TextTransformation": { - "description": "Text Transformation on the Search String before match.", - "additionalProperties": false, - "type": "object", - "properties": { - "Type": { - "$ref": "#/definitions/TextTransformationType" - }, - "Priority": { - "$ref": "#/definitions/TextTransformationPriority" - } - }, - "required": [ - "Priority", - "Type" + "ALL", + "KEY", + "VALUE" ], - "markdownDescription": "Text Transformation on the Search String before match.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + "markdownDescription": "The parts of the request to match against using the MatchPattern.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ALL | KEY | VALUE \nUpdate requires: No interruption\n" }, - "EntityId": { - "description": "Id of the WebACL", + "OversizeHandling": { + "description": "Handling of requests containing oversize fields", "type": "string", - "markdownDescription": "Id of the WebACL\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$ \nUpdate requires: No interruption\n" + "enum": [ + "CONTINUE", + "MATCH", + "NO_MATCH" + ], + "markdownDescription": "Handling of requests containing oversize fields\n\n---\n\nRequired: No \nType: String \nAllowed Values: CONTINUE | MATCH | NO_MATCH \nUpdate requires: No interruption\n" }, "SensitivityLevel": { "description": "Sensitivity Level current only used for sqli match statements.", @@ -2225,35 +2302,27 @@ ], "markdownDescription": "Sensitivity Level current only used for sqli match statements.\n\n---\n\nRequired: No \nType: String \nAllowed Values: LOW | HIGH \nUpdate requires: No interruption\n" }, - "Scope": { - "description": "Use CLOUDFRONT for CloudFront WebACL, use REGIONAL for Application Load Balancer and API Gateway.", - "type": "string", - "enum": [ - "CLOUDFRONT", - "REGIONAL" - ], - "markdownDescription": "Use CLOUDFRONT for CloudFront WebACL, use REGIONAL for Application Load Balancer and API Gateway.\n\n---\n\nRequired: No \nType: String \nAllowed Values: CLOUDFRONT | REGIONAL \nUpdate requires: No interruption\n" - }, - "CustomResponseBody": { - "description": "Custom response body.", - "additionalProperties": false, + "JA3Fingerprint": { + "description": "Includes the JA3 fingerprint of a web request.", "type": "object", "properties": { - "ContentType": { - "$ref": "#/definitions/ResponseContentType" - }, - "Content": { - "$ref": "#/definitions/ResponseContent" + "FallbackBehavior": { + "type": "string", + "enum": [ + "MATCH", + "NO_MATCH" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" } }, "required": [ - "ContentType", - "Content" + "FallbackBehavior" ], - "markdownDescription": "Custom response body.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "ForwardedIPConfiguration": { "additionalProperties": false, + "markdownDescription": "Includes the JA3 fingerprint of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "JA4Fingerprint": { + "description": "Includes the JA4 fingerprint of a web request.", "type": "object", "properties": { "FallbackBehavior": { @@ -2263,71 +2332,74 @@ "NO_MATCH" ], "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" - }, - "HeaderName": { - "type": "string", - "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-zA-Z0-9-]+{1,255}$ \nUpdate requires: No interruption\n" } }, "required": [ - "HeaderName", "FallbackBehavior" ], - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "CaptchaConfig": { "additionalProperties": false, + "markdownDescription": "Includes the JA4 fingerprint of a web request.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "UriFragment": { + "description": "The path component of the URI Fragment. This is the part of a web request that identifies a fragment uri, for example, /abcd#introduction", "type": "object", "properties": { - "ImmunityTimeProperty": { - "$ref": "#/definitions/ImmunityTimeProperty" + "FallbackBehavior": { + "type": "string", + "enum": [ + "MATCH", + "NO_MATCH" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: MATCH | NO_MATCH \nUpdate requires: No interruption\n" } }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "SingleHeader": { "additionalProperties": false, + "markdownDescription": "The path component of the URI Fragment. This is the part of a web request that identifies a fragment uri, for example, /abcd#introduction\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "OnSourceDDoSProtectionConfig": { + "description": "Configures the options for on-source DDoS protection provided by supported resource type.", "type": "object", "properties": { - "Name": { + "ALBLowReputationMode": { "type": "string", - "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + "enum": [ + "ACTIVE_UNDER_DDOS", + "ALWAYS_ON" + ], + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nAllowed Values: ACTIVE_UNDER_DDOS | ALWAYS_ON \nUpdate requires: No interruption\n" } }, - "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" - }, - "MapMatchScope": { - "description": "The parts of the request to match against using the MatchPattern.", - "type": "string", - "enum": [ - "ALL", - "KEY", - "VALUE" + "required": [ + "ALBLowReputationMode" ], - "markdownDescription": "The parts of the request to match against using the MatchPattern.\n\n---\n\nRequired: No \nType: String \nAllowed Values: ALL | KEY | VALUE \nUpdate requires: No interruption\n" + "additionalProperties": false, + "markdownDescription": "Configures the options for on-source DDoS protection provided by supported resource type.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" } }, - "required": [ - "DefaultAction", - "Scope", - "VisibilityConfig" - ], "properties": { + "Arn": { + "$ref": "#/definitions/ResourceArn" + }, + "Capacity": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + }, + "DefaultAction": { + "$ref": "#/definitions/DefaultAction" + }, "Description": { "$ref": "#/definitions/EntityDescription" }, - "AssociationConfig": { - "$ref": "#/definitions/AssociationConfig" + "Name": { + "$ref": "#/definitions/EntityName" }, - "ChallengeConfig": { - "$ref": "#/definitions/ChallengeConfig" + "Id": { + "$ref": "#/definitions/EntityId" }, - "DataProtectionConfig": { - "description": "Collection of dataProtects.", - "$ref": "#/definitions/DataProtectionConfig", - "markdownDescription": "Collection of dataProtects.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + "Scope": { + "$ref": "#/definitions/Scope" }, - "OnSourceDDoSProtectionConfig": {}, "Rules": { "description": "Collection of Rules.", "type": "array", @@ -2339,50 +2411,124 @@ "VisibilityConfig": { "$ref": "#/definitions/VisibilityConfig" }, + "DataProtectionConfig": { + "description": "Collection of dataProtects.", + "$ref": "#/definitions/DataProtectionConfig", + "markdownDescription": "Collection of dataProtects.\n\n---\n\nRequired: No \nType: \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "minItems": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "LabelNamespace": { "$ref": "#/definitions/LabelName" }, - "Name": { - "$ref": "#/definitions/EntityName" + "CustomResponseBodies": { + "$ref": "#/definitions/CustomResponseBodies" }, - "TokenDomains": { - "$ref": "#/definitions/TokenDomains" + "CaptchaConfig": { + "$ref": "#/definitions/CaptchaConfig" }, - "DefaultAction": { - "$ref": "#/definitions/DefaultAction" + "ChallengeConfig": { + "$ref": "#/definitions/ChallengeConfig" }, - "Scope": { - "$ref": "#/definitions/Scope" + "TokenDomains": { + "$ref": "#/definitions/TokenDomains" }, - "Capacity": { - "type": "integer", - "minimum": 0, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\nRead only property: Yes" + "AssociationConfig": { + "$ref": "#/definitions/AssociationConfig" }, - "CustomResponseBodies": { - "$ref": "#/definitions/CustomResponseBodies" + "OnSourceDDoSProtectionConfig": { + "$ref": "#/definitions/OnSourceDDoSProtectionConfig" + } + }, + "required": [ + "DefaultAction", + "Scope", + "VisibilityConfig" + ], + "primaryIdentifier": [ + "/properties/Name", + "/properties/Id", + "/properties/Scope" + ], + "createOnlyProperties": [ + "/properties/Name", + "/properties/Scope" + ], + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Capacity", + "/properties/Id", + "/properties/LabelNamespace" + ], + "additionalProperties": false, + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "wafv2:TagResource", + "wafv2:UntagResource", + "wafv2:ListTagsForResource" + ] + }, + "handlers": { + "create": { + "permissions": [ + "wafv2:CreateWebACL", + "wafv2:GetWebACL", + "wafv2:ListTagsForResource", + "wafv2:TagResource", + "wafv2:UntagResource" + ] }, - "Id": { - "$ref": "#/definitions/EntityId" + "delete": { + "permissions": [ + "wafv2:DeleteWebACL", + "wafv2:GetWebACL" + ] }, - "Arn": { - "$ref": "#/definitions/ResourceArn" + "read": { + "permissions": [ + "wafv2:GetWebACL", + "wafv2:ListTagsForResource" + ] }, - "CaptchaConfig": { - "$ref": "#/definitions/CaptchaConfig" + "update": { + "permissions": [ + "wafv2:UpdateWebACL", + "wafv2:GetWebACL", + "wafv2:ListTagsForResource", + "wafv2:TagResource", + "wafv2:UntagResource" + ] }, - "Tags": { - "minItems": 1, - "type": "array", - "items": { - "$ref": "#/definitions/Tag" - }, - "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + "list": { + "permissions": [ + "wafv2:listWebACLs" + ], + "handlerSchema": { + "properties": { + "Scope": { + "$ref": "resource-schema.json#/properties/Scope" + } + }, + "required": [ + "Scope" + ] + } } }, "attributes": { - "LabelNamespace": { - "$ref": "#/definitions/LabelName" + "Arn": { + "$ref": "#/definitions/ResourceArn" }, "Capacity": { "type": "integer", @@ -2392,8 +2538,8 @@ "Id": { "$ref": "#/definitions/EntityId" }, - "Arn": { - "$ref": "#/definitions/ResourceArn" + "LabelNamespace": { + "$ref": "#/definitions/LabelName" } } } \ No newline at end of file diff --git a/server/schema/resources/aws-wisdom-messagetemplate.json b/server/schema/resources/aws-wisdom-messagetemplate.json index aa7de470..85f42ca7 100644 --- a/server/schema/resources/aws-wisdom-messagetemplate.json +++ b/server/schema/resources/aws-wisdom-messagetemplate.json @@ -693,6 +693,42 @@ "maxLength": 2048, "markdownDescription": "The value that define the group of Amazon Q in Connect users.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" }, + "AttachmentUrl": { + "description": "The S3 Presigned URL for the attachment file. When generating the PreSignedUrl, please ensure that the expires-in time is set to 30 minutes. The URL can be generated through the AWS Console or through the AWS CLI (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ShareObjectPreSignedURL.html). ", + "type": "string", + "minLength": 1, + "markdownDescription": "The S3 Presigned URL for the attachment file. When generating the PreSignedUrl, please ensure that the expires-in time is set to 30 minutes. The URL can be generated through the AWS Console or through the AWS CLI (https://docs.aws.amazon.com/AmazonS3/latest/userguide/ShareObjectPreSignedURL.html). \n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" + }, + "AttachmentName": { + "description": "The name of the attachment file being uploaded. The name should include the file extension.", + "type": "string", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The name of the attachment file being uploaded. The name should include the file extension.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "MessageTemplateAttachment": { + "description": "", + "type": "object", + "properties": { + "AttachmentId": { + "type": "string", + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nUpdate requires: No interruption\n" + }, + "AttachmentName": { + "$ref": "#/definitions/AttachmentName" + }, + "S3PresignedUrl": { + "$ref": "#/definitions/AttachmentUrl" + } + }, + "additionalProperties": false, + "required": [ + "AttachmentName", + "S3PresignedUrl" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, "Tag": { "description": "A key-value pair to associate with a resource.", "type": "object", @@ -776,6 +812,15 @@ "maxLength": 64, "markdownDescription": "The content SHA256 of the message template.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nUpdate requires: No interruption\nRead only property: Yes" }, + "MessageTemplateAttachments": { + "description": "List of message template attachments", + "type": "array", + "insertionOrder": true, + "items": { + "$ref": "#/definitions/MessageTemplateAttachment" + }, + "markdownDescription": "List of message template attachments\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, "Tags": { "description": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.", "insertionOrder": false, @@ -796,7 +841,11 @@ "readOnlyProperties": [ "/properties/MessageTemplateId", "/properties/MessageTemplateArn", - "/properties/MessageTemplateContentSha256" + "/properties/MessageTemplateContentSha256", + "/properties/MessageTemplateAttachments/*/AttachmentId" + ], + "writeOnlyProperties": [ + "/properties/MessageTemplateAttachments/*/S3PresignedUrl" ], "createOnlyProperties": [ "/properties/KnowledgeBaseArn", @@ -825,7 +874,9 @@ "wisdom:GetMessageTemplate", "wisdom:TagResource", "connect:SearchRoutingProfiles", - "connect:DescribeRoutingProfile" + "connect:DescribeRoutingProfile", + "wisdom:CreateMessageTemplateAttachment", + "wisdom:DeleteMessageTemplateAttachment" ] }, "update": { @@ -836,13 +887,16 @@ "wisdom:TagResource", "wisdom:UntagResource", "connect:SearchRoutingProfiles", - "connect:DescribeRoutingProfile" + "connect:DescribeRoutingProfile", + "wisdom:CreateMessageTemplateAttachment", + "wisdom:DeleteMessageTemplateAttachment" ] }, "delete": { "permissions": [ "wisdom:DeleteMessageTemplate", - "wisdom:UntagResource" + "wisdom:UntagResource", + "wisdom:DeleteMessageTemplateAttachment" ] }, "list": { diff --git a/server/schema/resources/aws-wisdom-quickresponse.json b/server/schema/resources/aws-wisdom-quickresponse.json new file mode 100644 index 00000000..82722abc --- /dev/null +++ b/server/schema/resources/aws-wisdom-quickresponse.json @@ -0,0 +1,301 @@ +{ + "typeName": "AWS::Wisdom::QuickResponse", + "description": "Definition of AWS::Wisdom::QuickResponse Resource Type.", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-wisdom", + "definitions": { + "ChannelType": { + "type": "string", + "enum": [ + "Chat", + "Email" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Chat | Email \nUpdate requires: No interruption\n" + }, + "QuickResponseContentProvider": { + "description": "The container of quick response content.", + "type": "object", + "properties": { + "Content": { + "description": "The content of the quick response.", + "type": "string", + "minLength": 1, + "maxLength": 1024, + "markdownDescription": "The content of the quick response.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 1024 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "The container of quick response content.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "QuickResponseContents": { + "description": "The content of the quick response stored in different media types.", + "type": "object", + "properties": { + "Markdown": { + "$ref": "#/definitions/QuickResponseContentProvider" + }, + "PlainText": { + "$ref": "#/definitions/QuickResponseContentProvider" + } + }, + "additionalProperties": false, + "markdownDescription": "The content of the quick response stored in different media types.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "GroupingConfiguration": { + "description": "The configuration information of the user groups that the quick response is accessible to.", + "type": "object", + "properties": { + "Criteria": { + "description": "The criteria used for grouping Amazon Q in Connect users.", + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "The criteria used for grouping Amazon Q in Connect users.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nUpdate requires: No interruption\n" + }, + "Values": { + "description": "The list of values that define different groups of Amazon Q in Connect users.", + "type": "array", + "items": { + "$ref": "#/definitions/GroupingValue" + }, + "insertionOrder": true, + "uniqueItems": true, + "markdownDescription": "The list of values that define different groups of Amazon Q in Connect users.\n\n---\n\nRequired: Yes \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Criteria", + "Values" + ], + "additionalProperties": false, + "markdownDescription": "The configuration information of the user groups that the quick response is accessible to.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "GroupingValue": { + "description": "The value that define the group of Amazon Q in Connect users.", + "type": "string", + "minLength": 1, + "maxLength": 2048, + "markdownDescription": "The value that define the group of Amazon Q in Connect users.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 2048 \nUpdate requires: No interruption\n" + }, + "Status": { + "description": "The status of the quick response data.", + "type": "string", + "enum": [ + "CREATE_IN_PROGRESS", + "CREATE_FAILED", + "CREATED", + "DELETE_IN_PROGRESS", + "DELETE_FAILED", + "DELETED", + "UPDATE_IN_PROGRESS", + "UPDATE_FAILED" + ], + "markdownDescription": "The status of the quick response data.\n\n---\n\nRequired: No \nType: String \nAllowed Values: CREATE_IN_PROGRESS | CREATE_FAILED | CREATED | DELETE_IN_PROGRESS | DELETE_FAILED | DELETED | UPDATE_IN_PROGRESS | UPDATE_FAILED \nUpdate requires: No interruption\n" + }, + "Tag": { + "description": "A key-value pair to associate with a resource.", + "type": "object", + "properties": { + "Key": { + "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -", + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^(?!aws:)[a-zA-Z+-=._:/]+$ \nUpdate requires: No interruption\n" + }, + "Value": { + "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -", + "type": "string", + "minLength": 1, + "maxLength": 256, + "markdownDescription": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "A key-value pair to associate with a resource.\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "ContentType": { + "description": "The media type of the quick response content.\n- Use application/x.quickresponse;format=plain for quick response written in plain text.\n- Use application/x.quickresponse;format=markdown for quick response written in richtext.", + "type": "string", + "markdownDescription": "The media type of the quick response content.\n- Use application/x.quickresponse;format=plain for quick response written in plain text.\n- Use application/x.quickresponse;format=markdown for quick response written in richtext.\n\n---\n\nRequired: No \nType: String \nPattern: ^(application/x\\.quickresponse;format=(plain|markdown))$ \nUpdate requires: No interruption\n" + }, + "KnowledgeBaseArn": { + "description": "The Amazon Resource Name (ARN) of the knowledge base.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the knowledge base.\n\n---\n\nRequired: Yes \nType: String \nPattern: ^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}$ \nUpdate requires: Replacement\n" + }, + "Name": { + "description": "The name of the quick response.", + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "The name of the quick response.\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nUpdate requires: No interruption\n" + }, + "QuickResponseArn": { + "description": "The Amazon Resource Name (ARN) of the quick response.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the quick response.\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "QuickResponseId": { + "description": "The identifier of the quick response.", + "type": "string", + "markdownDescription": "The identifier of the quick response.\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Channels": { + "description": "The Amazon Connect contact channels this quick response applies to.", + "type": "array", + "items": { + "$ref": "#/definitions/ChannelType" + }, + "markdownDescription": "The Amazon Connect contact channels this quick response applies to.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "Content": { + "$ref": "#/definitions/QuickResponseContentProvider" + }, + "Contents": { + "$ref": "#/definitions/QuickResponseContents" + }, + "Description": { + "description": "The description of the quick response.", + "type": "string", + "minLength": 1, + "maxLength": 255, + "markdownDescription": "The description of the quick response.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "GroupingConfiguration": { + "$ref": "#/definitions/GroupingConfiguration" + }, + "IsActive": { + "description": "Whether the quick response is active.", + "type": "boolean", + "markdownDescription": "Whether the quick response is active.\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "Language": { + "description": "The language code value for the language in which the quick response is written. The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, ja_JP, ko_KR, pt_BR, zh_CN, zh_TW", + "type": "string", + "minLength": 2, + "maxLength": 5, + "markdownDescription": "The language code value for the language in which the quick response is written. The supported language codes include de_DE, en_US, es_ES, fr_FR, id_ID, it_IT, ja_JP, ko_KR, pt_BR, zh_CN, zh_TW\n\n---\n\nRequired: No \nType: String \nMinimum Length: 2 \nMaximum Length: 5 \nUpdate requires: No interruption\n" + }, + "ShortcutKey": { + "description": "The shortcut key of the quick response. The value should be unique across the knowledge base.", + "type": "string", + "minLength": 1, + "maxLength": 100, + "markdownDescription": "The shortcut key of the quick response. The value should be unique across the knowledge base.\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 100 \nUpdate requires: No interruption\n" + }, + "Status": { + "$ref": "#/definitions/Status" + }, + "Tags": { + "description": "An array of key-value pairs to apply to this resource.", + "type": "array", + "uniqueItems": true, + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "markdownDescription": "An array of key-value pairs to apply to this resource.\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "required": [ + "KnowledgeBaseArn", + "Content", + "Name" + ], + "readOnlyProperties": [ + "/properties/QuickResponseId", + "/properties/QuickResponseArn", + "/properties/Status", + "/properties/Contents" + ], + "primaryIdentifier": [ + "/properties/QuickResponseArn" + ], + "createOnlyProperties": [ + "/properties/KnowledgeBaseArn" + ], + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "wisdom:TagResource", + "wisdom:UntagResource" + ] + }, + "replacementStrategy": "create_then_delete", + "handlers": { + "create": { + "permissions": [ + "wisdom:CreateQuickResponse", + "wisdom:GetQuickResponse", + "wisdom:TagResource", + "connect:SearchRoutingProfiles", + "connect:DescribeRoutingProfile" + ] + }, + "update": { + "permissions": [ + "wisdom:UpdateQuickResponse", + "wisdom:GetQuickResponse", + "wisdom:TagResource", + "wisdom:UntagResource", + "connect:SearchRoutingProfiles", + "connect:DescribeRoutingProfile" + ] + }, + "delete": { + "permissions": [ + "wisdom:DeleteQuickResponse", + "wisdom:UntagResource" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "KnowledgeBaseArn": { + "$ref": "resource-schema.json#/properties/KnowledgeBaseArn" + } + }, + "required": [ + "KnowledgeBaseArn" + ] + }, + "permissions": [ + "wisdom:ListQuickResponses" + ] + }, + "read": { + "permissions": [ + "wisdom:GetQuickResponse" + ] + } + }, + "attributes": { + "QuickResponseArn": { + "description": "The Amazon Resource Name (ARN) of the quick response.", + "type": "string", + "markdownDescription": "The Amazon Resource Name (ARN) of the quick response.\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:[a-z-]*?:wisdom:[a-z0-9-]*?:[0-9]{12}:[a-z-]*?/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}(?:/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}){0,2}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "QuickResponseId": { + "description": "The identifier of the quick response.", + "type": "string", + "markdownDescription": "The identifier of the quick response.\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Contents": { + "$ref": "#/definitions/QuickResponseContents" + }, + "Status": { + "$ref": "#/definitions/Status" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-workspacesinstances-volume.json b/server/schema/resources/aws-workspacesinstances-volume.json new file mode 100644 index 00000000..23542d59 --- /dev/null +++ b/server/schema/resources/aws-workspacesinstances-volume.json @@ -0,0 +1,185 @@ +{ + "typeName": "AWS::WorkspacesInstances::Volume", + "description": "Resource Type definition for AWS::WorkspacesInstances::Volume - Manages WorkSpaces Volume resources", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-schema.git", + "definitions": { + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "description": "The key name of the tag", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "The key name of the tag\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "description": "The value for the tag", + "maxLength": 256, + "markdownDescription": "The value for the tag\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "TagSpecification": { + "type": "object", + "properties": { + "ResourceType": { + "type": "string", + "enum": [ + "instance", + "volume", + "spot-instances-request", + "network-interface" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: instance | volume | spot-instances-request | network-interface \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "description": "The tags to apply to the resource", + "markdownDescription": "The tags to apply to the resource\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "VolumeId": { + "type": "string", + "description": "Unique identifier for the volume", + "markdownDescription": "Unique identifier for the volume\n\n---\n\nRequired: No \nType: String \nPattern: ^vol-[0-9a-zA-Z]{1,63}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "AvailabilityZone": { + "type": "string", + "description": "The Availability Zone in which to create the volume", + "markdownDescription": "The Availability Zone in which to create the volume\n\n---\n\nRequired: Yes \nType: String \nPattern: ^[a-z]{2}-[a-z]+-\\d[a-z](-[a-z0-9]+)?$ \nUpdate requires: Replacement\n" + }, + "Encrypted": { + "type": "boolean", + "description": "Indicates whether the volume should be encrypted", + "markdownDescription": "Indicates whether the volume should be encrypted\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: Replacement\n" + }, + "Iops": { + "type": "integer", + "description": "The number of I/O operations per second (IOPS)", + "minimum": 0, + "markdownDescription": "The number of I/O operations per second (IOPS)\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "KmsKeyId": { + "type": "string", + "description": "The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption", + "maxLength": 128, + "markdownDescription": "The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: Replacement\n" + }, + "SizeInGB": { + "type": "integer", + "description": "The size of the volume, in GiBs", + "minimum": 0, + "markdownDescription": "The size of the volume, in GiBs\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "SnapshotId": { + "type": "string", + "description": "The snapshot from which to create the volume", + "markdownDescription": "The snapshot from which to create the volume\n\n---\n\nRequired: No \nType: String \nPattern: ^snap-[0-9a-zA-Z]{1,63}$ \nUpdate requires: Replacement\n" + }, + "Throughput": { + "type": "integer", + "description": "The throughput to provision for a volume, with a maximum of 1,000 MiB/s", + "minimum": 0, + "markdownDescription": "The throughput to provision for a volume, with a maximum of 1,000 MiB/s\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: Replacement\n" + }, + "VolumeType": { + "type": "string", + "description": "The volume type", + "enum": [ + "standard", + "io1", + "io2", + "gp2", + "sc1", + "st1", + "gp3" + ], + "markdownDescription": "The volume type\n\n---\n\nRequired: No \nType: String \nAllowed Values: standard | io1 | io2 | gp2 | sc1 | st1 | gp3 \nUpdate requires: Replacement\n" + }, + "TagSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/TagSpecification" + }, + "description": "The tags passed to EBS volume", + "maxItems": 30, + "markdownDescription": "The tags passed to EBS volume\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Replacement\n" + } + }, + "required": [ + "AvailabilityZone" + ], + "readOnlyProperties": [ + "/properties/VolumeId" + ], + "createOnlyProperties": [ + "/properties/AvailabilityZone", + "/properties/Encrypted", + "/properties/Iops", + "/properties/KmsKeyId", + "/properties/SizeInGB", + "/properties/SnapshotId", + "/properties/Throughput", + "/properties/VolumeType", + "/properties/TagSpecifications" + ], + "primaryIdentifier": [ + "/properties/VolumeId" + ], + "handlers": { + "create": { + "permissions": [ + "workspaces-instances:CreateVolume", + "ec2:CreateVolume", + "ec2:CreateTags" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeVolumes" + ] + }, + "delete": { + "permissions": [ + "workspaces-instances:DeleteVolume", + "ec2:DescribeVolumes", + "ec2:DeleteVolume" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeVolumes" + ] + } + }, + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "additionalProperties": false, + "attributes": { + "VolumeId": { + "type": "string", + "description": "Unique identifier for the volume", + "markdownDescription": "Unique identifier for the volume\n\n---\n\nRequired: No \nType: String \nPattern: ^vol-[0-9a-zA-Z]{1,63}$ \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-workspacesinstances-volumeassociation.json b/server/schema/resources/aws-workspacesinstances-volumeassociation.json new file mode 100644 index 00000000..6a4d33f5 --- /dev/null +++ b/server/schema/resources/aws-workspacesinstances-volumeassociation.json @@ -0,0 +1,88 @@ +{ + "typeName": "AWS::WorkspacesInstances::VolumeAssociation", + "description": "Resource Type definition for AWS::WorkspacesInstances::VolumeAssociation", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-schema.git", + "properties": { + "WorkspaceInstanceId": { + "type": "string", + "description": "ID of the workspace instance to associate with the volume", + "markdownDescription": "ID of the workspace instance to associate with the volume\n\n---\n\nRequired: Yes \nType: String \nPattern: ^wsinst-[0-9a-zA-Z]{8,63}$ \nUpdate requires: Replacement\n" + }, + "VolumeId": { + "type": "string", + "description": "ID of the volume to attach to the workspace instance", + "markdownDescription": "ID of the volume to attach to the workspace instance\n\n---\n\nRequired: Yes \nType: String \nPattern: ^vol-[0-9a-zA-Z]{1,63}$ \nUpdate requires: Replacement\n" + }, + "Device": { + "type": "string", + "description": "The device name for the volume attachment", + "maxLength": 32, + "markdownDescription": "The device name for the volume attachment\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 32 \nUpdate requires: Replacement\n" + }, + "DisassociateMode": { + "type": "string", + "description": "Mode to use when disassociating the volume", + "enum": [ + "FORCE", + "NO_FORCE" + ], + "markdownDescription": "Mode to use when disassociating the volume\n\n---\n\nRequired: No \nType: String \nAllowed Values: FORCE | NO_FORCE \nUpdate requires: No interruption\n" + } + }, + "required": [ + "WorkspaceInstanceId", + "VolumeId", + "Device" + ], + "createOnlyProperties": [ + "/properties/WorkspaceInstanceId", + "/properties/VolumeId", + "/properties/Device" + ], + "writeOnlyProperties": [ + "/properties/DisassociateMode" + ], + "primaryIdentifier": [ + "/properties/WorkspaceInstanceId", + "/properties/VolumeId", + "/properties/Device" + ], + "handlers": { + "create": { + "permissions": [ + "ec2:DescribeVolumes", + "ec2:AttachVolume", + "workspaces-instances:GetWorkspaceInstance", + "workspaces-instances:AssociateVolume" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeVolumes", + "workspaces-instances:GetWorkspaceInstance" + ] + }, + "delete": { + "permissions": [ + "ec2:DescribeVolumes", + "ec2:DetachVolume", + "workspaces-instances:GetWorkspaceInstance", + "workspaces-instances:DisassociateVolume" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeVolumes", + "workspaces-instances:ListWorkspaceInstances" + ] + } + }, + "tagging": { + "taggable": false, + "tagOnCreate": false, + "tagUpdatable": false, + "cloudFormationSystemTags": false + }, + "additionalProperties": false, + "attributes": {} +} \ No newline at end of file diff --git a/server/schema/resources/aws-workspacesinstances-workspaceinstance.json b/server/schema/resources/aws-workspacesinstances-workspaceinstance.json new file mode 100644 index 00000000..e6b0f1ac --- /dev/null +++ b/server/schema/resources/aws-workspacesinstances-workspaceinstance.json @@ -0,0 +1,784 @@ +{ + "typeName": "AWS::WorkspacesInstances::WorkspaceInstance", + "description": "Resource Type definition for AWS::WorkspacesInstances::WorkspaceInstance", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-schema.git", + "definitions": { + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "minLength": 1, + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "maxLength": 256, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 256 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "BlockDeviceMapping": { + "type": "object", + "properties": { + "DeviceName": { + "type": "string", + "maxLength": 32, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 32 \nUpdate requires: No interruption\n" + }, + "Ebs": { + "$ref": "#/definitions/EbsBlockDevice" + }, + "NoDevice": { + "type": "string", + "maxLength": 32, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 32 \nUpdate requires: No interruption\n" + }, + "VirtualName": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^ephemeral(0|[1-9][0-9]{0,2})$ \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EbsBlockDevice": { + "type": "object", + "properties": { + "VolumeType": { + "type": "string", + "enum": [ + "standard", + "io1", + "io2", + "gp2", + "sc1", + "st1", + "gp3" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: standard | io1 | io2 | gp2 | sc1 | st1 | gp3 \nUpdate requires: No interruption\n" + }, + "Encrypted": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "KmsKeyId": { + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Iops": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "Throughput": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "VolumeSize": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CapacityReservationSpecification": { + "type": "object", + "properties": { + "CapacityReservationPreference": { + "type": "string", + "enum": [ + "capacity-reservations-only", + "open", + "none" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: capacity-reservations-only | open | none \nUpdate requires: No interruption\n" + }, + "CapacityReservationTarget": { + "$ref": "#/definitions/CapacityReservationTarget" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CapacityReservationTarget": { + "type": "object", + "properties": { + "CapacityReservationId": { + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "CapacityReservationResourceGroupArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:.* \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CpuOptionsRequest": { + "type": "object", + "properties": { + "CoreCount": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "ThreadsPerCore": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "CreditSpecificationRequest": { + "type": "object", + "properties": { + "CpuCredits": { + "type": "string", + "enum": [ + "standard", + "unlimited" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: standard | unlimited \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EnclaveOptionsRequest": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "HibernationOptionsRequest": { + "type": "object", + "properties": { + "Configured": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "IamInstanceProfileSpecification": { + "type": "object", + "properties": { + "Name": { + "type": "string", + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 64 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InstanceMarketOptionsRequest": { + "type": "object", + "properties": { + "MarketType": { + "type": "string", + "enum": [ + "spot", + "capacity-block" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: spot | capacity-block \nUpdate requires: No interruption\n" + }, + "SpotOptions": { + "$ref": "#/definitions/SpotMarketOptions" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "SpotMarketOptions": { + "type": "object", + "properties": { + "BlockDurationMinutes": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "InstanceInterruptionBehavior": { + "type": "string", + "enum": [ + "hibernate", + "stop" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: hibernate | stop \nUpdate requires: No interruption\n" + }, + "MaxPrice": { + "type": "string", + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 64 \nUpdate requires: No interruption\n" + }, + "SpotInstanceType": { + "type": "string", + "enum": [ + "one-time", + "persistent" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: one-time | persistent \nUpdate requires: No interruption\n" + }, + "ValidUntilUtc": { + "type": "string", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "ConnectionTrackingSpecificationRequest": { + "type": "object", + "properties": { + "TcpEstablishedTimeout": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "UdpStreamTimeout": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "UdpTimeout": { + "type": "integer", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EnaSrdSpecificationRequest": { + "type": "object", + "properties": { + "EnaSrdEnabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "EnaSrdUdpSpecification": { + "$ref": "#/definitions/EnaSrdUdpSpecificationRequest" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EnaSrdUdpSpecificationRequest": { + "type": "object", + "properties": { + "EnaSrdUdpEnabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InstanceIpv6Address": { + "type": "object", + "properties": { + "Ipv6Address": { + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "IsPrimaryIpv6": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Ipv4PrefixSpecificationRequest": { + "type": "object", + "properties": { + "Ipv4Prefix": { + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Ipv6PrefixSpecificationRequest": { + "type": "object", + "properties": { + "Ipv6Prefix": { + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "PrivateIpAddressSpecification": { + "type": "object", + "properties": { + "PrivateIpAddress": { + "type": "string", + "maxLength": 128, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 128 \nUpdate requires: No interruption\n" + }, + "Primary": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "LicenseConfigurationRequest": { + "type": "object", + "properties": { + "LicenseConfigurationArn": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^arn:.* \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InstanceMaintenanceOptionsRequest": { + "type": "object", + "properties": { + "AutoRecovery": { + "type": "string", + "enum": [ + "disabled", + "default" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: disabled | default \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InstanceMetadataOptionsRequest": { + "type": "object", + "properties": { + "HttpEndpoint": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: enabled | disabled \nUpdate requires: No interruption\n" + }, + "HttpProtocolIpv6": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: enabled | disabled \nUpdate requires: No interruption\n" + }, + "HttpPutResponseHopLimit": { + "type": "integer", + "minimum": 1, + "maximum": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "HttpTokens": { + "type": "string", + "enum": [ + "optional", + "required" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: optional | required \nUpdate requires: No interruption\n" + }, + "InstanceMetadataTags": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: enabled | disabled \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "RunInstancesMonitoringEnabled": { + "type": "object", + "properties": { + "Enabled": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InstanceNetworkInterfaceSpecification": { + "type": "object", + "properties": { + "Description": { + "type": "string", + "maxLength": 1000, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 1000 \nPattern: ^[\\S\\s]*$ \nUpdate requires: No interruption\n" + }, + "DeviceIndex": { + "type": "integer", + "minimum": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Integer \nUpdate requires: No interruption\n" + }, + "Groups": { + "type": "array", + "items": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^sg-[0-9a-zA-Z]{1,63}$ \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "SubnetId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^subnet-[0-9a-zA-Z]{1,63}$ \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "InstanceNetworkPerformanceOptionsRequest": { + "type": "object", + "properties": { + "BandwidthWeighting": { + "type": "string", + "enum": [ + "default", + "vpc-1", + "ebs-1" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: default | vpc-1 | ebs-1 \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Placement": { + "type": "object", + "properties": { + "AvailabilityZone": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[a-z]{2}-[a-z]+-\\d[a-z](-[a-z0-9]+)?$ \nUpdate requires: No interruption\n" + }, + "GroupName": { + "type": "string", + "maxLength": 255, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 255 \nUpdate requires: No interruption\n" + }, + "Tenancy": { + "type": "string", + "enum": [ + "default", + "dedicated", + "host" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: default | dedicated | host \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "PrivateDnsNameOptionsRequest": { + "type": "object", + "properties": { + "HostnameType": { + "type": "string", + "enum": [ + "ip-name", + "resource-name" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: ip-name | resource-name \nUpdate requires: No interruption\n" + }, + "EnableResourceNameDnsARecord": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "EnableResourceNameDnsAAAARecord": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "EC2ManagedInstance": { + "type": "object", + "properties": { + "InstanceId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\nRead only property: Yes" + }, + "TagSpecification": { + "type": "object", + "properties": { + "ResourceType": { + "type": "string", + "enum": [ + "instance", + "volume", + "spot-instances-request", + "network-interface" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: instance | volume | spot-instances-request | network-interface \nUpdate requires: No interruption\n" + }, + "Tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 30, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "ManagedInstance": { + "type": "object", + "properties": { + "BlockDeviceMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/BlockDeviceMapping" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "CpuOptions": { + "$ref": "#/definitions/CpuOptionsRequest" + }, + "CreditSpecification": { + "$ref": "#/definitions/CreditSpecificationRequest" + }, + "DisableApiStop": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "EbsOptimized": { + "type": "boolean", + "markdownDescription": "\n\n---\n\nRequired: No \nType: Boolean \nUpdate requires: No interruption\n" + }, + "EnclaveOptions": { + "$ref": "#/definitions/EnclaveOptionsRequest" + }, + "HibernationOptions": { + "$ref": "#/definitions/HibernationOptionsRequest" + }, + "IamInstanceProfile": { + "$ref": "#/definitions/IamInstanceProfileSpecification" + }, + "ImageId": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^ami-[0-9a-zA-Z]{1,63}$ \nUpdate requires: No interruption\n" + }, + "InstanceType": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nPattern: ^([a-z0-9-]+)\\.([a-z0-9]+)$ \nUpdate requires: No interruption\n" + }, + "KeyName": { + "type": "string", + "maxLength": 64, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 64 \nUpdate requires: No interruption\n" + }, + "MaintenanceOptions": { + "$ref": "#/definitions/InstanceMaintenanceOptionsRequest" + }, + "MetadataOptions": { + "$ref": "#/definitions/InstanceMetadataOptionsRequest" + }, + "Monitoring": { + "$ref": "#/definitions/RunInstancesMonitoringEnabled" + }, + "NetworkInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceNetworkInterfaceSpecification" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "NetworkPerformanceOptions": { + "$ref": "#/definitions/InstanceNetworkPerformanceOptionsRequest" + }, + "Placement": { + "$ref": "#/definitions/Placement" + }, + "PrivateDnsNameOptions": { + "$ref": "#/definitions/PrivateDnsNameOptionsRequest" + }, + "TagSpecifications": { + "type": "array", + "maxItems": 30, + "items": { + "$ref": "#/definitions/TagSpecification" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + }, + "UserData": { + "type": "string", + "maxLength": 16000, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 16000 \nUpdate requires: No interruption\n" + } + }, + "required": [ + "ImageId", + "InstanceType" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: Replacement\n" + }, + "Tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 30, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: Some interruptions\n" + }, + "WorkspaceInstanceId": { + "type": "string", + "description": "Unique identifier for the workspace instance", + "markdownDescription": "Unique identifier for the workspace instance\n\n---\n\nRequired: No \nType: String \nPattern: ^wsinst-[0-9a-zA-Z]{8,63}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionState": { + "type": "string", + "description": "The current state of the workspace instance", + "enum": [ + "ALLOCATING", + "ALLOCATED", + "DEALLOCATING", + "DEALLOCATED", + "ERROR_ALLOCATING", + "ERROR_DEALLOCATING" + ], + "markdownDescription": "The current state of the workspace instance\n\n---\n\nRequired: No \nType: String \nAllowed Values: ALLOCATING | ALLOCATED | DEALLOCATING | DEALLOCATED | ERROR_ALLOCATING | ERROR_DEALLOCATING \nUpdate requires: No interruption\nRead only property: Yes" + }, + "EC2ManagedInstance": { + "$ref": "#/definitions/EC2ManagedInstance" + } + }, + "required": [], + "readOnlyProperties": [ + "/properties/WorkspaceInstanceId", + "/properties/ProvisionState", + "/properties/EC2ManagedInstance", + "/properties/EC2ManagedInstance/InstanceId" + ], + "writeOnlyProperties": [ + "/properties/ManagedInstance" + ], + "createOnlyProperties": [ + "/properties/ManagedInstance" + ], + "conditionalCreateOnlyProperties": [ + "/properties/Tags" + ], + "primaryIdentifier": [ + "/properties/WorkspaceInstanceId" + ], + "handlers": { + "create": { + "permissions": [ + "workspaces-instances:CreateWorkspaceInstance", + "workspaces-instances:GetWorkspaceInstance", + "workspaces-instances:TagResource", + "ec2:RunInstances", + "ec2:DescribeInstances", + "ec2:DescribeInstanceStatus", + "ec2:CreateTags", + "iam:PassRole" + ] + }, + "read": { + "permissions": [ + "workspaces-instances:GetWorkspaceInstance", + "workspaces-instances:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "workspaces-instances:TagResource", + "workspaces-instances:UntagResource", + "workspaces-instances:ListTagsForResource", + "workspaces-instances:GetWorkspaceInstance" + ] + }, + "delete": { + "permissions": [ + "workspaces-instances:DeleteWorkspaceInstance", + "workspaces-instances:GetWorkspaceInstance", + "ec2:TerminateInstances", + "ec2:DescribeInstances", + "ec2:DescribeInstanceStatus" + ] + }, + "list": { + "permissions": [ + "workspaces-instances:ListWorkspaceInstances" + ] + } + }, + "tagging": { + "taggable": true, + "tagOnCreate": true, + "tagUpdatable": true, + "cloudFormationSystemTags": true, + "tagProperty": "/properties/Tags", + "permissions": [ + "workspaces-instances:TagResource", + "workspaces-instances:UntagResource", + "workspaces-instances:ListTagsForResource" + ] + }, + "additionalProperties": false, + "attributes": { + "WorkspaceInstanceId": { + "type": "string", + "description": "Unique identifier for the workspace instance", + "markdownDescription": "Unique identifier for the workspace instance\n\n---\n\nRequired: No \nType: String \nPattern: ^wsinst-[0-9a-zA-Z]{8,63}$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "ProvisionState": { + "type": "string", + "description": "The current state of the workspace instance", + "enum": [ + "ALLOCATING", + "ALLOCATED", + "DEALLOCATING", + "DEALLOCATED", + "ERROR_ALLOCATING", + "ERROR_DEALLOCATING" + ], + "markdownDescription": "The current state of the workspace instance\n\n---\n\nRequired: No \nType: String \nAllowed Values: ALLOCATING | ALLOCATED | DEALLOCATING | DEALLOCATED | ERROR_ALLOCATING | ERROR_DEALLOCATING \nUpdate requires: No interruption\nRead only property: Yes" + }, + "EC2ManagedInstance": { + "$ref": "#/definitions/EC2ManagedInstance" + } + } +} \ No newline at end of file diff --git a/server/schema/resources/aws-workspacesweb-portal.json b/server/schema/resources/aws-workspacesweb-portal.json index fda225f5..821fd845 100644 --- a/server/schema/resources/aws-workspacesweb-portal.json +++ b/server/schema/resources/aws-workspacesweb-portal.json @@ -163,6 +163,12 @@ "minLength": 0, "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 204800 \nPattern: ^.*$ \nUpdate requires: No interruption\nRead only property: Yes" }, + "SessionLoggerArn": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$ \nUpdate requires: No interruption\n" + }, "StatusReason": { "type": "string", "maxLength": 1024, @@ -227,6 +233,7 @@ "workspaces-web:AssociateUserAccessLoggingSettings", "workspaces-web:AssociateUserSettings", "workspaces-web:AssociateDataProtectionSettings", + "workspaces-web:AssociateSessionLogger", "workspaces-web:List*", "workspaces-web:TagResource", "kms:DescribeKey", @@ -244,7 +251,8 @@ "kinesis:PutRecords", "kinesis:Describe*", "sso:CreateManagedApplicationInstance", - "sso:Describe*" + "sso:Describe*", + "s3:PutObject" ] }, "read": { @@ -266,6 +274,7 @@ "workspaces-web:AssociateUserAccessLoggingSettings", "workspaces-web:AssociateUserSettings", "workspaces-web:AssociateDataProtectionSettings", + "workspaces-web:AssociateSessionLogger", "workspaces-web:DisassociateBrowserSettings", "workspaces-web:DisassociateIpAccessSettings", "workspaces-web:DisassociateNetworkSettings", @@ -273,6 +282,7 @@ "workspaces-web:DisassociateUserAccessLoggingSettings", "workspaces-web:DisassociateUserSettings", "workspaces-web:DisassociateDataProtectionSettings", + "workspaces-web:DisassociateSessionLogger", "workspaces-web:List*", "workspaces-web:TagResource", "workspaces-web:UntagResource", @@ -293,7 +303,8 @@ "sso:DeleteManagedApplicationInstance", "sso:Describe*", "sso:GetApplicationInstance", - "sso:List*" + "sso:List*", + "s3:PutObject" ] }, "delete": { @@ -307,6 +318,7 @@ "workspaces-web:DisassociateUserAccessLoggingSettings", "workspaces-web:DisassociateUserSettings", "workspaces-web:DisassociateDataProtectionSettings", + "workspaces-web:DisassociateSessionLogger", "kms:Decrypt", "kms:DescribeKey", "sso:DeleteManagedApplicationInstance" diff --git a/server/schema/resources/aws-workspacesweb-sessionlogger.json b/server/schema/resources/aws-workspacesweb-sessionlogger.json new file mode 100644 index 00000000..48ba0730 --- /dev/null +++ b/server/schema/resources/aws-workspacesweb-sessionlogger.json @@ -0,0 +1,323 @@ +{ + "typeName": "AWS::WorkSpacesWeb::SessionLogger", + "description": "Definition of AWS::WorkSpacesWeb::SessionLogger Resource Type", + "definitions": { + "EncryptionContextMap": { + "type": "object", + "patternProperties": { + "^[\\s\\S]*$": { + "type": "string", + "maxLength": 131072, + "minLength": 0, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMaximum Length: 131072 \nPattern: ^[\\s\\S]*$ \nUpdate requires: No interruption\n" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Event": { + "type": "string", + "enum": [ + "WebsiteInteract", + "FileDownloadFromSecureBrowserToRemoteDisk", + "FileTransferFromRemoteToLocalDisk", + "FileTransferFromLocalToRemoteDisk", + "FileUploadFromRemoteDiskToSecureBrowser", + "ContentPasteToWebsite", + "ContentTransferFromLocalToRemoteClipboard", + "ContentCopyFromWebsite", + "UrlLoad", + "TabOpen", + "TabClose", + "PrintJobSubmit", + "SessionConnect", + "SessionStart", + "SessionDisconnect", + "SessionEnd", + "UrlBlockByContentFilter" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: WebsiteInteract | FileDownloadFromSecureBrowserToRemoteDisk | FileTransferFromRemoteToLocalDisk | FileTransferFromLocalToRemoteDisk | FileUploadFromRemoteDiskToSecureBrowser | ContentPasteToWebsite | ContentTransferFromLocalToRemoteClipboard | ContentCopyFromWebsite | UrlLoad | TabOpen | TabClose | PrintJobSubmit | SessionConnect | SessionStart | SessionDisconnect | SessionEnd | UrlBlockByContentFilter \nUpdate requires: No interruption\n" + }, + "EventFilter": { + "oneOf": [ + { + "type": "object", + "title": "All", + "properties": { + "All": { + "$ref": "#/definitions/Unit" + } + }, + "required": [ + "All" + ], + "additionalProperties": false + }, + { + "type": "object", + "title": "Include", + "properties": { + "Include": { + "type": "array", + "items": { + "$ref": "#/definitions/Event" + }, + "maxItems": 100, + "minItems": 1, + "uniqueItems": true + } + }, + "required": [ + "Include" + ], + "additionalProperties": false + } + ] + }, + "FolderStructure": { + "type": "string", + "enum": [ + "Flat", + "NestedByDate" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: Flat | NestedByDate \nUpdate requires: No interruption\n" + }, + "LogConfiguration": { + "type": "object", + "properties": { + "S3": { + "$ref": "#/definitions/S3LogConfiguration" + } + }, + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "LogFileFormat": { + "type": "string", + "enum": [ + "JSONLines", + "Json" + ], + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nAllowed Values: JSONLines | Json \nUpdate requires: No interruption\n" + }, + "S3LogConfiguration": { + "type": "object", + "properties": { + "Bucket": { + "type": "string", + "maxLength": 256, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[a-z0-9][\\.\\-a-z0-9]{1,61}[a-z0-9]$ \nUpdate requires: No interruption\n" + }, + "KeyPrefix": { + "type": "string", + "maxLength": 256, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 256 \nPattern: ^[\\d\\w\\-_/!().*']+$ \nUpdate requires: No interruption\n" + }, + "BucketOwner": { + "type": "string", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nPattern: ^[0-9]{12}$ \nUpdate requires: No interruption\n" + }, + "LogFileFormat": { + "$ref": "#/definitions/LogFileFormat" + }, + "FolderStructure": { + "$ref": "#/definitions/FolderStructure" + } + }, + "required": [ + "Bucket", + "FolderStructure", + "LogFileFormat" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string", + "maxLength": 128, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMinimum Length: 1 \nMaximum Length: 128 \nPattern: ^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$ \nUpdate requires: No interruption\n" + }, + "Value": { + "type": "string", + "maxLength": 256, + "minLength": 0, + "markdownDescription": "\n\n---\n\nRequired: Yes \nType: String \nMaximum Length: 256 \nPattern: ^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$ \nUpdate requires: No interruption\n" + } + }, + "required": [ + "Key", + "Value" + ], + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + }, + "Unit": { + "type": "object", + "additionalProperties": false, + "markdownDescription": "\n\n---\n\nRequired: No \nUpdate requires: No interruption\n" + } + }, + "properties": { + "AdditionalEncryptionContext": { + "$ref": "#/definitions/EncryptionContextMap" + }, + "AssociatedPortalArns": { + "type": "array", + "items": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$ \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationDate": { + "type": "string", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CustomerManagedKey": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^arn:[\\w+=\\/,.@-]+:kms:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:key\\/[a-zA-Z0-9-]+$ \nUpdate requires: Replacement\n" + }, + "DisplayName": { + "type": "string", + "maxLength": 64, + "minLength": 1, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 1 \nMaximum Length: 64 \nPattern: ^[ _\\-\\d\\w]+$ \nUpdate requires: No interruption\n" + }, + "EventFilter": { + "$ref": "#/definitions/EventFilter" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "SessionLoggerArn": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$ \nUpdate requires: No interruption\nRead only property: Yes" + }, + "Tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "insertionOrder": false, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\n" + } + }, + "required": [ + "EventFilter", + "LogConfiguration" + ], + "readOnlyProperties": [ + "/properties/AssociatedPortalArns", + "/properties/CreationDate", + "/properties/SessionLoggerArn" + ], + "createOnlyProperties": [ + "/properties/AdditionalEncryptionContext", + "/properties/CustomerManagedKey" + ], + "primaryIdentifier": [ + "/properties/SessionLoggerArn" + ], + "handlers": { + "create": { + "permissions": [ + "workspaces-web:CreateSessionLogger", + "workspaces-web:GetSessionLogger", + "workspaces-web:ListSessionLoggers", + "workspaces-web:ListTagsForResource", + "workspaces-web:TagResource", + "s3:PutObject", + "kms:DescribeKey", + "kms:GenerateDataKey", + "kms:Decrypt", + "kms:GenerateDataKeyWithoutPlaintext", + "kms:ReEncryptTo", + "kms:ReEncryptFrom" + ] + }, + "read": { + "permissions": [ + "workspaces-web:GetSessionLogger", + "workspaces-web:ListTagsForResource", + "kms:Decrypt" + ] + }, + "update": { + "permissions": [ + "workspaces-web:UpdateSessionLogger", + "workspaces-web:GetSessionLogger", + "workspaces-web:ListSessionLoggers", + "workspaces-web:TagResource", + "workspaces-web:UntagResource", + "workspaces-web:ListTagsForResource", + "s3:PutObject", + "kms:GenerateDataKey", + "kms:Decrypt" + ] + }, + "delete": { + "permissions": [ + "workspaces-web:GetSessionLogger", + "workspaces-web:DeleteSessionLogger", + "kms:Decrypt" + ] + }, + "list": { + "permissions": [ + "workspaces-web:ListSessionLoggers", + "kms:Decrypt" + ] + } + }, + "tagging": { + "cloudFormationSystemTags": false, + "permissions": [ + "workspaces-web:ListTagsForResource", + "workspaces-web:TagResource", + "workspaces-web:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "additionalProperties": false, + "attributes": { + "AssociatedPortalArns": { + "type": "array", + "items": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$ \nUpdate requires: No interruption\n" + }, + "markdownDescription": "\n\n---\n\nRequired: No \nType: Array \nUpdate requires: No interruption\nRead only property: Yes" + }, + "CreationDate": { + "type": "string", + "format": "date-time", + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nUpdate requires: No interruption\nRead only property: Yes" + }, + "SessionLoggerArn": { + "type": "string", + "maxLength": 2048, + "minLength": 20, + "markdownDescription": "\n\n---\n\nRequired: No \nType: String \nMinimum Length: 20 \nMaximum Length: 2048 \nPattern: ^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$ \nUpdate requires: No interruption\nRead only property: Yes" + } + } +} \ No newline at end of file