From 782f751381a294f94490f07691d2b7ff9a715207 Mon Sep 17 00:00:00 2001 From: dryrun Date: Tue, 13 Oct 2026 10:32:42 -0700 Subject: [PATCH] docs(webfunction): add sam-docs descriptions for AWS::Serverless::WebFunction and NetworkConnector ComputeTypes Adds a sam-resource-webfunction stem (23 properties, including EgressNetworkConnectorArn) to sam-docs.json and switches aws_serverless_webfunction.py to get_prop, so every WebFunction property has a markdownDescription in the generated schema. For AWS::Serverless::NetworkConnector, documents ComputeTypes (keeping its min/max item constraints) and updates VpcConfig: AssociatedComputeResourceTypes now comes from ComputeTypes instead of always being [MicroVm]. Descriptions are parsed from the AWS SAM Developer Guide pages for these resources, with relative links made absolute. Property types and required fields are unchanged. --- .../aws_serverless_networkconnector.py | 9 ++- .../aws_serverless_webfunction.py | 51 +++++++------ .../internal/schema_source/sam-docs.json | 30 +++++++- samtranslator/schema/schema.json | 72 ++++++++++++------- schema_source/sam.schema.json | 72 ++++++++++++------- 5 files changed, 158 insertions(+), 76 deletions(-) diff --git a/samtranslator/internal/schema_source/aws_serverless_networkconnector.py b/samtranslator/internal/schema_source/aws_serverless_networkconnector.py index 4dec075b6..86a18c657 100644 --- a/samtranslator/internal/schema_source/aws_serverless_networkconnector.py +++ b/samtranslator/internal/schema_source/aws_serverless_networkconnector.py @@ -28,10 +28,13 @@ class Properties(BaseModel): Name: SamIntrinsicable[str] | None = properties("Name") VpcConfig: VpcConfig = properties("VpcConfig") # The single compute type a connector serves. Constrained here (exactly one item; enum values) so - # `sam validate --lint` surfaces the same rules as the transform. Plain field (no doc stem) to avoid - # churning sam-docs.json; intrinsics still validate via SamIntrinsicable. + # `sam validate --lint` surfaces the same rules as the transform; intrinsics still validate via SamIntrinsicable. ComputeTypes: list[SamIntrinsicable[Literal["MicroVm", "WebFunction"]]] | None = pydantic.Field( - default=None, min_items=1, max_items=1 + default=None, + min_items=1, + max_items=1, + title="ComputeTypes", + markdownDescription=properties("ComputeTypes").extra["markdownDescription"], ) OperatorRole: SamIntrinsicable[str] | None = properties("OperatorRole") Tags: DictStrAny | None = properties("Tags") diff --git a/samtranslator/internal/schema_source/aws_serverless_webfunction.py b/samtranslator/internal/schema_source/aws_serverless_webfunction.py index d58a93648..8de3a7077 100644 --- a/samtranslator/internal/schema_source/aws_serverless_webfunction.py +++ b/samtranslator/internal/schema_source/aws_serverless_webfunction.py @@ -6,33 +6,38 @@ BaseModel, ResourceAttributes, SamIntrinsicable, + get_prop, ) +PROPERTIES_STEM = "sam-resource-webfunction" + +properties = get_prop(PROPERTIES_STEM) + class Properties(BaseModel): - Runtime: SamIntrinsicable[str] - CodeUri: Any | None = None - FunctionName: SamIntrinsicable[str] | None = None - Timeout: SamIntrinsicable[int] | None = None - EnvironmentVariables: dict[str, Any] | None = None - ExecutionRoleArn: Any | None = None - EndpointName: SamIntrinsicable[str] | None = None - EndpointType: SamIntrinsicable[str] | None = None - EndpointDescription: SamIntrinsicable[str] | None = None - AuthType: SamIntrinsicable[str] - AutoDeploymentMode: SamIntrinsicable[str] | None = None - RevisionWeights: dict[str, Any] | None = None - ReplicaRegions: Any | None = None - RevisionDescription: SamIntrinsicable[str] | None = None - KmsKeyArn: SamIntrinsicable[str] | None = None - LoggingConfig: dict[str, Any] | None = None - ScalingConfig: dict[str, Any] | None = None - ThrottleConfig: dict[str, Any] | None = None - MaxConcurrencyPerEnvironment: SamIntrinsicable[int] | None = None - EgressNetworkConnectorArn: SamIntrinsicable[str] | None = None - EntryPoint: SamIntrinsicable[str] | None = None - InlineCode: str | None = None - Tags: dict[str, Any] | None = None + Runtime: SamIntrinsicable[str] = properties("Runtime") + CodeUri: Any | None = properties("CodeUri") + FunctionName: SamIntrinsicable[str] | None = properties("FunctionName") + Timeout: SamIntrinsicable[int] | None = properties("Timeout") + EnvironmentVariables: dict[str, Any] | None = properties("EnvironmentVariables") + ExecutionRoleArn: Any | None = properties("ExecutionRoleArn") + EndpointName: SamIntrinsicable[str] | None = properties("EndpointName") + EndpointType: SamIntrinsicable[str] | None = properties("EndpointType") + EndpointDescription: SamIntrinsicable[str] | None = properties("EndpointDescription") + AuthType: SamIntrinsicable[str] = properties("AuthType") + AutoDeploymentMode: SamIntrinsicable[str] | None = properties("AutoDeploymentMode") + RevisionWeights: dict[str, Any] | None = properties("RevisionWeights") + ReplicaRegions: Any | None = properties("ReplicaRegions") + RevisionDescription: SamIntrinsicable[str] | None = properties("RevisionDescription") + KmsKeyArn: SamIntrinsicable[str] | None = properties("KmsKeyArn") + LoggingConfig: dict[str, Any] | None = properties("LoggingConfig") + ScalingConfig: dict[str, Any] | None = properties("ScalingConfig") + ThrottleConfig: dict[str, Any] | None = properties("ThrottleConfig") + MaxConcurrencyPerEnvironment: SamIntrinsicable[int] | None = properties("MaxConcurrencyPerEnvironment") + EgressNetworkConnectorArn: SamIntrinsicable[str] | None = properties("EgressNetworkConnectorArn") + EntryPoint: SamIntrinsicable[str] | None = properties("EntryPoint") + InlineCode: str | None = properties("InlineCode") + Tags: dict[str, Any] | None = properties("Tags") class Resource(ResourceAttributes): diff --git a/samtranslator/internal/schema_source/sam-docs.json b/samtranslator/internal/schema_source/sam-docs.json index f1629137b..5cc070e18 100644 --- a/samtranslator/internal/schema_source/sam-docs.json +++ b/samtranslator/internal/schema_source/sam-docs.json @@ -967,6 +967,31 @@ "Type": "The type of the state machine\\. \n*Valid values*: `STANDARD` or `EXPRESS` \n*Type*: String \n*Required*: No \n*Default*: `STANDARD` \n*AWS CloudFormation compatibility*: This property is passed directly to the [`StateMachineType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-statemachinetype) property of an `AWS::StepFunctions::StateMachine` resource\\.", "UseAliasAsEventTarget": "Indicate whether or not to pass the alias, created by using the `AutoPublishAlias` property, to the events source's target defined with [Events](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/#sam-statemachine-events.html#sam-statemachine-events)\\. \nSpecify `True` to use the alias as the events' target\\. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*AWS CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an AWS CloudFormation equivalent\\." }, + "sam-resource-webfunction": { + "AuthType": "How the endpoint authorizes requests. \n+ `IamAuth`: Lambda authorizes requests with Signature Version 4 and IAM. Callers need the `lambda:InvokeWebFunctionEndpoint` permission, granted through a resource-based policy on the function.\n+ `ApplicationManaged`: the endpoint is public. Your function must authorize every request itself.\n*Valid values*: `IamAuth`, `ApplicationManaged` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`AuthType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-authtype) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "AutoDeploymentMode": "How the endpoint routes traffic across revisions. \n+ `LatestRevision`: sends 100% of traffic to the revision that this deployment creates.\n+ `Disabled`: routes traffic according to [RevisionWeights](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-revisionweights).\nWhich values you can use, and whether `RevisionWeights` is required, depends on [EndpointType](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-endpointtype): \n+ `HomeRegion`: use either value. With `Disabled`, `RevisionWeights` is required.\n+ `MultiRegion` or `PerRegion`: use `Disabled`. If you omit `RevisionWeights`, the endpoint routes 100% of traffic to the revision created in the same stack, so you can create the endpoint in a single deployment. Traffic doesn't move to revisions that later deployments create.\nThe value must resolve when AWS SAM transforms the template. A `Ref` to a parameter is supported. Other intrinsic functions are not supported. \n*Valid values*: `LatestRevision`, `Disabled` \n*Type*: String \n*Required*: No \n*Default*: `LatestRevision` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "CodeUri": "The Amazon S3 location of the deployment package. Specify an `s3://bucket/key` URI or an object with `Bucket`, `Key`, and optional `Version` keys. The bucket must have versioning enabled and a bucket policy that grants `lambda.amazonaws.com` the `s3:GetObject` and `s3:GetObjectVersion` permissions. If the object is encrypted with SSE-KMS, use a customer managed key whose key policy allows `lambda.amazonaws.com` to call `kms:Decrypt`. The AWS managed key for Amazon S3 (`aws/s3`) isn't supported. For details, see [AWS::Serverless::WebFunction](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html). \n*Type*: String \\| [CodeUri](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-codeuri.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`BuildConfig.CodeConfig.S3Object`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-s3object.html) property of an `AWS::Lambda::WebFunctionRevision` resource. AWS SAM converts an `s3://` URI into `Bucket`, `Key`, and `VersionId`.", + "EgressNetworkConnectorArn": "The version-qualified ARN of a network connector that routes the function's outbound traffic through your VPC. The ARN must end in a version number, for example `arn:aws:lambda:us-east-1:123456789012:network-connector:my-connector:1`. To use the latest version of a connector in the same template, specify `!GetAtt MyConnector.LatestVersionArn`. The connector's [ComputeTypes](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-networkconnector.html#sam-networkconnector-computetypes) must be `WebFunction`. \nIf you specify a literal string, AWS SAM checks that it's a version-qualified network connector ARN. Intrinsic functions are passed through and validated by the service. Changing this value creates a new revision. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.EgressNetworkConnectorArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "EndpointDescription": "A description of the endpoint. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-description) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "EndpointName": "The name of the endpoint. Changing the name replaces the endpoint. Changing `EndpointType` also replaces the endpoint, so change `EndpointName` at the same time. CloudFormation can't replace a custom-named resource without a new name. \n*Type*: String \n*Required*: No \n*Default*: `prod` \n*CloudFormation compatibility*: This property is passed directly to the [`EndpointName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointname) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "EndpointType": "Where the endpoint serves traffic. \n+ `HomeRegion`: serves from the stack's Region.\n+ `MultiRegion`: replicates the function to the Regions in [ReplicaRegions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-replicaregions) and routes each request to the nearest Region.\n+ `PerRegion`: exposes a separate endpoint in each replica Region.\n`MultiRegion` and `PerRegion` require `AutoDeploymentMode: Disabled`. \n*Valid values*: `HomeRegion`, `MultiRegion`, `PerRegion` \n*Type*: String \n*Required*: No \n*Default*: `HomeRegion` \n*CloudFormation compatibility*: This property is passed directly to the [`EndpointType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointtype) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "EntryPoint": "The file that the runtime runs, relative to the root of the deployment package. AWS SAM passes it to the runtime in the reserved `AWS_LAMBDA_NODEJS_ENTRYPOINT` environment variable. \nYou can't use this property when `EnvironmentVariables` is an intrinsic function. \n*Type*: String \n*Required*: No \n*Default*: `index.js` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "EnvironmentVariables": "Key-value pairs to set as environment variables for the revision. \n+ Keys must start with a letter and contain only letters, numbers, and underscores.\n+ Values must be non-empty and at most 4,096 characters.\n+ AWS SAM converts number and Boolean values to strings.\n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.EnvironmentVariables`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-environmentvariables) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "ExecutionRoleArn": "The ARN of the IAM role that the function assumes when it runs. If you don't specify a role, AWS SAM creates one with the `AWSLambdaBasicExecutionRole` managed policy and a logical ID of `Role`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.ExecutionRoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-executionrolearn) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "FunctionName": "The name of the function. Function names must be unique within an account across all Regions. If you don't specify a name, AWS SAM generates one from the logical ID and the stack ID, at most 64 characters. Changing the name replaces the function, its revision, and its endpoint. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-functionname) property of the `AWS::Lambda::WebFunction`, `AWS::Lambda::WebFunctionRevision`, and `AWS::Lambda::WebFunctionEndpoint` resources.", + "InlineCode": "Not supported for `AWS::Serverless::WebFunction`. Use [CodeUri](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-codeuri). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "KmsKeyArn": "The ARN of the AWS KMS key used to encrypt the revision's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-kmskeyarn) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "LoggingConfig": "The logging configuration for the revision, such as the log group and log levels. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.TelemetryConfig.LoggingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-telemetryconfig.html#cfn-lambda-webfunctionrevision-telemetryconfig-loggingconfig) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "MaxConcurrencyPerEnvironment": "The maximum number of concurrent requests that each execution environment handles. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.MaxConcurrencyPerEnvironment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-maxconcurrencyperenvironment) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "ReplicaRegions": "The Regions to replicate the function to. Use this property with `MultiRegion` and `PerRegion` endpoints. Specify a list of Region codes and Region groups, or an object with `IncludeRegions` and optional `ExcludeRegions`. \n*Type*: List \\| [ReplicaRegions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-replicaregions.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Regions`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-regions) property of an `AWS::Lambda::WebFunctionEndpoint` resource. AWS SAM expands Region groups and applies `ExcludeRegions` to produce the Region list.", + "RevisionDescription": "A description of the revision that this deployment creates. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-description) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "RevisionWeights": "A map of revision IDs to traffic weights. Use this property when `AutoDeploymentMode` is `Disabled`. Specify up to two revisions. Each weight is an integer from 1 to 100, and the weights must add up to 100. \n*Type*: [RevisionWeights](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-revisionweights.html) \n*Required*: Conditional. Required when `AutoDeploymentMode` is `Disabled` and `EndpointType` is `HomeRegion`. \n*CloudFormation compatibility*: This property is similar to the [`RevisionWeights`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-revisionweights) property of an `AWS::Lambda::WebFunctionEndpoint` resource. AWS SAM converts the map into a list of `RevisionId` and `Weight` objects.", + "Runtime": "The runtime for the function, for example `nodejs24.x`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`BuildConfig.RuntimeConfig.Runtime`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-runtimeconfig.html#cfn-lambda-webfunctionrevision-runtimeconfig-runtime) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "ScalingConfig": "The scaling configuration for the endpoint, such as the maximum number of execution environments. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-scalingconfig) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "Tags": "A map of key-value pairs that specifies the tags added to the function and to the execution role that AWS SAM generates. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-tags) property of an `AWS::Lambda::WebFunction` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of `Tag` objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to the function and to the default role that is generated for it.", + "ThrottleConfig": "The throttling configuration for the endpoint, such as the maximum request rate. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ThrottleConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-throttleconfig) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "Timeout": "The maximum time, in seconds, that the function can run per request. Valid values are from 3 to 900. \n*Type*: Integer \n*Required*: No \n*Default*: `30` \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.TimeoutSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-timeoutseconds) property of an `AWS::Lambda::WebFunctionRevision` resource." + }, "sam-resource-websocketapi": { "ApiKeySelectionExpression": "An API key selection expression. For more information, see [API Key Selection Expressions](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions) in the *API Gateway Developer Guide*. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ApiKeySelectionExpression`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-api.html#cfn-apigatewayv2-api-apikeyselectionexpression) property of an `AWS::ApiGatewayV2::Api` resource.", "AccessLogSettings": "The settings for access logging in a stage. \n*Type*: [AccessLogSettings](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings) \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`AccessLogSettings`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigatewayv2-stage.html#cfn-apigatewayv2-stage-accesslogsettings) property of an `AWS::ApiGatewayV2::Stage` resource.", @@ -989,10 +1014,11 @@ }, "sam-resource-networkconnector": { "Name": "The name of the network connector. The name must be unique within your account and Region. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Name`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-networkconnector.html#cfn-lambda-networkconnector-name) property of an `AWS::Lambda::NetworkConnector` resource.", - "VpcConfig": "The VPC egress configuration for the network connector, including the subnets, security groups, and network protocol for elastic network interface (ENI) provisioning. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-networkconnector-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is transformed to the [`Configuration.VpcEgressConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-networkconnector.html#cfn-lambda-networkconnector-configuration) property of an `AWS::Lambda::NetworkConnector` resource. AWS SAM also injects `AssociatedComputeResourceTypes: [MicroVm]` automatically.", + "VpcConfig": "The VPC egress configuration for the network connector. Specifies the subnets, security groups, and network protocol for routing outbound traffic through your VPC. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-networkconnector-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is transformed to the [`Configuration.VpcEgressConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-networkconnector-vpcegressconfiguration.html) property of an `AWS::Lambda::NetworkConnector` resource. AWS SAM sets `AssociatedComputeResourceTypes` from the [ComputeTypes](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-networkconnector.html#sam-networkconnector-computetypes) property.", "OperatorRole": "The ARN of the IAM role that the network connector service assumes to create and manage elastic network interfaces (ENIs). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`OperatorRole`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-networkconnector.html#cfn-lambda-networkconnector-operatorrole) property of an `AWS::Lambda::NetworkConnector` resource. This is required in CloudFormation but not in AWS SAM. If you don't specify a role, AWS SAM creates one with a logical ID of `OperatorRole`.", "Tags": "A map of key-value pairs that specifies the tags added to this network connector. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-networkconnector.html#cfn-lambda-networkconnector-tags) property of an `AWS::Lambda::NetworkConnector` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of `Tag` objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to this network connector, and to the default roles that are generated for it.", - "PropagateTags": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have a CloudFormation equivalent." + "PropagateTags": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "ComputeTypes": "The type of Lambda compute resource that can use this network connector. Specify exactly one of the following values: \n+ `MicroVm`: The connector is used by MicroVM compute resources.\n+ `WebFunction`: The connector is used by [AWS::Serverless::WebFunction](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html) resources through their `EgressNetworkConnectorArn` property.\n*Type*: List \n*Required*: No \n*Default*: `[MicroVm]` \n*CloudFormation compatibility*: This property is passed directly to the [`Configuration.VpcEgressConfiguration.AssociatedComputeResourceTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-networkconnector-vpcegressconfiguration.html#cfn-lambda-networkconnector-vpcegressconfiguration-associatedcomputeresourcetypes) property of an `AWS::Lambda::NetworkConnector` resource." }, "sam-property-networkconnector-vpcconfig": { "SubnetIds": "A list of subnet IDs where the service provisions ENIs for VPC egress connectivity. \n*Type*: List \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`SubnetIds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-networkconnector-vpcegressconfiguration.html#cfn-lambda-networkconnector-vpcegressconfiguration-subnetids) property of `Configuration.VpcEgressConfiguration` of an `AWS::Lambda::NetworkConnector` resource.", diff --git a/samtranslator/schema/schema.json b/samtranslator/schema/schema.json index a6ad7bed1..aba09809f 100644 --- a/samtranslator/schema/schema.json +++ b/samtranslator/schema/schema.json @@ -435881,7 +435881,7 @@ "title": "OperatorRole" }, "PropagateTags": { - "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have a CloudFormation equivalent.", + "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, @@ -435912,9 +435912,10 @@ } ] }, + "markdownDescription": "The type of Lambda compute resource that can use this network connector. Specify exactly one of the following values: \n+ `MicroVm`: The connector is used by MicroVM compute resources.\n+ `WebFunction`: The connector is used by [AWS::Serverless::WebFunction](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html) resources through their `EgressNetworkConnectorArn` property.\n*Type*: List \n*Required*: No \n*Default*: `[MicroVm]` \n*CloudFormation compatibility*: This property is passed directly to the [`Configuration.VpcEgressConfiguration.AssociatedComputeResourceTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-networkconnector-vpcegressconfiguration.html#cfn-lambda-networkconnector-vpcegressconfiguration-associatedcomputeresourcetypes) property of an `AWS::Lambda::NetworkConnector` resource.", "maxItems": 1, "minItems": 1, - "title": "Computetypes", + "title": "ComputeTypes", "type": "array" }, "Name": { @@ -435942,7 +435943,7 @@ "title": "OperatorRole" }, "PropagateTags": { - "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have a CloudFormation equivalent.", + "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, @@ -435957,7 +435958,7 @@ "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_networkconnector__VpcConfig" } ], - "markdownDescription": "The VPC egress configuration for the network connector, including the subnets, security groups, and network protocol for elastic network interface (ENI) provisioning. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-networkconnector-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is transformed to the [`Configuration.VpcEgressConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-networkconnector.html#cfn-lambda-networkconnector-configuration) property of an `AWS::Lambda::NetworkConnector` resource. AWS SAM also injects `AssociatedComputeResourceTypes: [MicroVm]` automatically.", + "markdownDescription": "The VPC egress configuration for the network connector. Specifies the subnets, security groups, and network protocol for routing outbound traffic through your VPC. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-networkconnector-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is transformed to the [`Configuration.VpcEgressConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-networkconnector-vpcegressconfiguration.html) property of an `AWS::Lambda::NetworkConnector` resource. AWS SAM sets `AssociatedComputeResourceTypes` from the [ComputeTypes](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-networkconnector.html#sam-networkconnector-computetypes) property.", "title": "VpcConfig" } }, @@ -437141,7 +437142,8 @@ "type": "string" } ], - "title": "Authtype" + "markdownDescription": "How the endpoint authorizes requests. \n+ `IamAuth`: Lambda authorizes requests with Signature Version 4 and IAM. Callers need the `lambda:InvokeWebFunctionEndpoint` permission, granted through a resource-based policy on the function.\n+ `ApplicationManaged`: the endpoint is public. Your function must authorize every request itself.\n*Valid values*: `IamAuth`, `ApplicationManaged` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`AuthType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-authtype) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "AuthType" }, "AutoDeploymentMode": { "anyOf": [ @@ -437152,10 +437154,12 @@ "type": "string" } ], - "title": "Autodeploymentmode" + "markdownDescription": "How the endpoint routes traffic across revisions. \n+ `LatestRevision`: sends 100% of traffic to the revision that this deployment creates.\n+ `Disabled`: routes traffic according to [RevisionWeights](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-revisionweights).\nWhich values you can use, and whether `RevisionWeights` is required, depends on [EndpointType](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-endpointtype): \n+ `HomeRegion`: use either value. With `Disabled`, `RevisionWeights` is required.\n+ `MultiRegion` or `PerRegion`: use `Disabled`. If you omit `RevisionWeights`, the endpoint routes 100% of traffic to the revision created in the same stack, so you can create the endpoint in a single deployment. Traffic doesn't move to revisions that later deployments create.\nThe value must resolve when AWS SAM transforms the template. A `Ref` to a parameter is supported. Other intrinsic functions are not supported. \n*Valid values*: `LatestRevision`, `Disabled` \n*Type*: String \n*Required*: No \n*Default*: `LatestRevision` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "title": "AutoDeploymentMode" }, "CodeUri": { - "title": "Codeuri" + "markdownDescription": "The Amazon S3 location of the deployment package. Specify an `s3://bucket/key` URI or an object with `Bucket`, `Key`, and optional `Version` keys. The bucket must have versioning enabled and a bucket policy that grants `lambda.amazonaws.com` the `s3:GetObject` and `s3:GetObjectVersion` permissions. If the object is encrypted with SSE-KMS, use a customer managed key whose key policy allows `lambda.amazonaws.com` to call `kms:Decrypt`. The AWS managed key for Amazon S3 (`aws/s3`) isn't supported. For details, see [AWS::Serverless::WebFunction](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html). \n*Type*: String \\| [CodeUri](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-codeuri.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`BuildConfig.CodeConfig.S3Object`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-s3object.html) property of an `AWS::Lambda::WebFunctionRevision` resource. AWS SAM converts an `s3://` URI into `Bucket`, `Key`, and `VersionId`.", + "title": "CodeUri" }, "EgressNetworkConnectorArn": { "anyOf": [ @@ -437166,7 +437170,8 @@ "type": "string" } ], - "title": "Egressnetworkconnectorarn" + "markdownDescription": "The version-qualified ARN of a network connector that routes the function's outbound traffic through your VPC. The ARN must end in a version number, for example `arn:aws:lambda:us-east-1:123456789012:network-connector:my-connector:1`. To use the latest version of a connector in the same template, specify `!GetAtt MyConnector.LatestVersionArn`. The connector's [ComputeTypes](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-networkconnector.html#sam-networkconnector-computetypes) must be `WebFunction`. \nIf you specify a literal string, AWS SAM checks that it's a version-qualified network connector ARN. Intrinsic functions are passed through and validated by the service. Changing this value creates a new revision. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.EgressNetworkConnectorArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "EgressNetworkConnectorArn" }, "EndpointDescription": { "anyOf": [ @@ -437177,7 +437182,8 @@ "type": "string" } ], - "title": "Endpointdescription" + "markdownDescription": "A description of the endpoint. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-description) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "EndpointDescription" }, "EndpointName": { "anyOf": [ @@ -437188,7 +437194,8 @@ "type": "string" } ], - "title": "Endpointname" + "markdownDescription": "The name of the endpoint. Changing the name replaces the endpoint. Changing `EndpointType` also replaces the endpoint, so change `EndpointName` at the same time. CloudFormation can't replace a custom-named resource without a new name. \n*Type*: String \n*Required*: No \n*Default*: `prod` \n*CloudFormation compatibility*: This property is passed directly to the [`EndpointName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointname) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "EndpointName" }, "EndpointType": { "anyOf": [ @@ -437199,7 +437206,8 @@ "type": "string" } ], - "title": "Endpointtype" + "markdownDescription": "Where the endpoint serves traffic. \n+ `HomeRegion`: serves from the stack's Region.\n+ `MultiRegion`: replicates the function to the Regions in [ReplicaRegions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-replicaregions) and routes each request to the nearest Region.\n+ `PerRegion`: exposes a separate endpoint in each replica Region.\n`MultiRegion` and `PerRegion` require `AutoDeploymentMode: Disabled`. \n*Valid values*: `HomeRegion`, `MultiRegion`, `PerRegion` \n*Type*: String \n*Required*: No \n*Default*: `HomeRegion` \n*CloudFormation compatibility*: This property is passed directly to the [`EndpointType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointtype) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "EndpointType" }, "EntryPoint": { "anyOf": [ @@ -437210,14 +437218,17 @@ "type": "string" } ], - "title": "Entrypoint" + "markdownDescription": "The file that the runtime runs, relative to the root of the deployment package. AWS SAM passes it to the runtime in the reserved `AWS_LAMBDA_NODEJS_ENTRYPOINT` environment variable. \nYou can't use this property when `EnvironmentVariables` is an intrinsic function. \n*Type*: String \n*Required*: No \n*Default*: `index.js` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "title": "EntryPoint" }, "EnvironmentVariables": { - "title": "Environmentvariables", + "markdownDescription": "Key-value pairs to set as environment variables for the revision. \n+ Keys must start with a letter and contain only letters, numbers, and underscores.\n+ Values must be non-empty and at most 4,096 characters.\n+ AWS SAM converts number and Boolean values to strings.\n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.EnvironmentVariables`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-environmentvariables) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "EnvironmentVariables", "type": "object" }, "ExecutionRoleArn": { - "title": "Executionrolearn" + "markdownDescription": "The ARN of the IAM role that the function assumes when it runs. If you don't specify a role, AWS SAM creates one with the `AWSLambdaBasicExecutionRole` managed policy and a logical ID of `Role`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.ExecutionRoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-executionrolearn) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "ExecutionRoleArn" }, "FunctionName": { "anyOf": [ @@ -437228,10 +437239,12 @@ "type": "string" } ], - "title": "Functionname" + "markdownDescription": "The name of the function. Function names must be unique within an account across all Regions. If you don't specify a name, AWS SAM generates one from the logical ID and the stack ID, at most 64 characters. Changing the name replaces the function, its revision, and its endpoint. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-functionname) property of the `AWS::Lambda::WebFunction`, `AWS::Lambda::WebFunctionRevision`, and `AWS::Lambda::WebFunctionEndpoint` resources.", + "title": "FunctionName" }, "InlineCode": { - "title": "Inlinecode", + "markdownDescription": "Not supported for `AWS::Serverless::WebFunction`. Use [CodeUri](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-codeuri). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "title": "InlineCode", "type": "string" }, "KmsKeyArn": { @@ -437243,10 +437256,12 @@ "type": "string" } ], - "title": "Kmskeyarn" + "markdownDescription": "The ARN of the AWS KMS key used to encrypt the revision's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-kmskeyarn) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "KmsKeyArn" }, "LoggingConfig": { - "title": "Loggingconfig", + "markdownDescription": "The logging configuration for the revision, such as the log group and log levels. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.TelemetryConfig.LoggingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-telemetryconfig.html#cfn-lambda-webfunctionrevision-telemetryconfig-loggingconfig) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "LoggingConfig", "type": "object" }, "MaxConcurrencyPerEnvironment": { @@ -437258,10 +437273,12 @@ "type": "integer" } ], - "title": "Maxconcurrencyperenvironment" + "markdownDescription": "The maximum number of concurrent requests that each execution environment handles. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.MaxConcurrencyPerEnvironment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-maxconcurrencyperenvironment) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "MaxConcurrencyPerEnvironment" }, "ReplicaRegions": { - "title": "Replicaregions" + "markdownDescription": "The Regions to replicate the function to. Use this property with `MultiRegion` and `PerRegion` endpoints. Specify a list of Region codes and Region groups, or an object with `IncludeRegions` and optional `ExcludeRegions`. \n*Type*: List \\| [ReplicaRegions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-replicaregions.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Regions`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-regions) property of an `AWS::Lambda::WebFunctionEndpoint` resource. AWS SAM expands Region groups and applies `ExcludeRegions` to produce the Region list.", + "title": "ReplicaRegions" }, "RevisionDescription": { "anyOf": [ @@ -437272,10 +437289,12 @@ "type": "string" } ], - "title": "Revisiondescription" + "markdownDescription": "A description of the revision that this deployment creates. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-description) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "RevisionDescription" }, "RevisionWeights": { - "title": "Revisionweights", + "markdownDescription": "A map of revision IDs to traffic weights. Use this property when `AutoDeploymentMode` is `Disabled`. Specify up to two revisions. Each weight is an integer from 1 to 100, and the weights must add up to 100. \n*Type*: [RevisionWeights](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-revisionweights.html) \n*Required*: Conditional. Required when `AutoDeploymentMode` is `Disabled` and `EndpointType` is `HomeRegion`. \n*CloudFormation compatibility*: This property is similar to the [`RevisionWeights`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-revisionweights) property of an `AWS::Lambda::WebFunctionEndpoint` resource. AWS SAM converts the map into a list of `RevisionId` and `Weight` objects.", + "title": "RevisionWeights", "type": "object" }, "Runtime": { @@ -437287,18 +437306,22 @@ "type": "string" } ], + "markdownDescription": "The runtime for the function, for example `nodejs24.x`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`BuildConfig.RuntimeConfig.Runtime`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-runtimeconfig.html#cfn-lambda-webfunctionrevision-runtimeconfig-runtime) property of an `AWS::Lambda::WebFunctionRevision` resource.", "title": "Runtime" }, "ScalingConfig": { - "title": "Scalingconfig", + "markdownDescription": "The scaling configuration for the endpoint, such as the maximum number of execution environments. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-scalingconfig) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "ScalingConfig", "type": "object" }, "Tags": { + "markdownDescription": "A map of key-value pairs that specifies the tags added to the function and to the execution role that AWS SAM generates. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-tags) property of an `AWS::Lambda::WebFunction` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of `Tag` objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to the function and to the default role that is generated for it.", "title": "Tags", "type": "object" }, "ThrottleConfig": { - "title": "Throttleconfig", + "markdownDescription": "The throttling configuration for the endpoint, such as the maximum request rate. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ThrottleConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-throttleconfig) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "ThrottleConfig", "type": "object" }, "Timeout": { @@ -437310,6 +437333,7 @@ "type": "integer" } ], + "markdownDescription": "The maximum time, in seconds, that the function can run per request. Valid values are from 3 to 900. \n*Type*: Integer \n*Required*: No \n*Default*: `30` \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.TimeoutSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-timeoutseconds) property of an `AWS::Lambda::WebFunctionRevision` resource.", "title": "Timeout" } }, diff --git a/schema_source/sam.schema.json b/schema_source/sam.schema.json index 6e0c694b4..70435ed8f 100644 --- a/schema_source/sam.schema.json +++ b/schema_source/sam.schema.json @@ -9900,7 +9900,7 @@ "title": "OperatorRole" }, "PropagateTags": { - "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have a CloudFormation equivalent.", + "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, @@ -9931,9 +9931,10 @@ } ] }, + "markdownDescription": "The type of Lambda compute resource that can use this network connector. Specify exactly one of the following values: \n+ `MicroVm`: The connector is used by MicroVM compute resources.\n+ `WebFunction`: The connector is used by [AWS::Serverless::WebFunction](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html) resources through their `EgressNetworkConnectorArn` property.\n*Type*: List \n*Required*: No \n*Default*: `[MicroVm]` \n*CloudFormation compatibility*: This property is passed directly to the [`Configuration.VpcEgressConfiguration.AssociatedComputeResourceTypes`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-networkconnector-vpcegressconfiguration.html#cfn-lambda-networkconnector-vpcegressconfiguration-associatedcomputeresourcetypes) property of an `AWS::Lambda::NetworkConnector` resource.", "maxItems": 1, "minItems": 1, - "title": "Computetypes", + "title": "ComputeTypes", "type": "array" }, "Name": { @@ -9961,7 +9962,7 @@ "title": "OperatorRole" }, "PropagateTags": { - "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have a CloudFormation equivalent.", + "markdownDescription": "Specifies whether to pass tags from the `Tags` property to generated resources, such as the auto-generated operator role. \n*Type*: Boolean \n*Required*: No \n*Default*: `False` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", "title": "PropagateTags", "type": "boolean" }, @@ -9976,7 +9977,7 @@ "$ref": "#/definitions/samtranslator__internal__schema_source__aws_serverless_networkconnector__VpcConfig" } ], - "markdownDescription": "The VPC egress configuration for the network connector, including the subnets, security groups, and network protocol for elastic network interface (ENI) provisioning. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-networkconnector-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is transformed to the [`Configuration.VpcEgressConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-networkconnector.html#cfn-lambda-networkconnector-configuration) property of an `AWS::Lambda::NetworkConnector` resource. AWS SAM also injects `AssociatedComputeResourceTypes: [MicroVm]` automatically.", + "markdownDescription": "The VPC egress configuration for the network connector. Specifies the subnets, security groups, and network protocol for routing outbound traffic through your VPC. \n*Type*: [VpcConfig](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-networkconnector-vpcconfig.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is transformed to the [`Configuration.VpcEgressConfiguration`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-networkconnector-vpcegressconfiguration.html) property of an `AWS::Lambda::NetworkConnector` resource. AWS SAM sets `AssociatedComputeResourceTypes` from the [ComputeTypes](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-networkconnector.html#sam-networkconnector-computetypes) property.", "title": "VpcConfig" } }, @@ -11242,7 +11243,8 @@ "type": "string" } ], - "title": "Authtype" + "markdownDescription": "How the endpoint authorizes requests. \n+ `IamAuth`: Lambda authorizes requests with Signature Version 4 and IAM. Callers need the `lambda:InvokeWebFunctionEndpoint` permission, granted through a resource-based policy on the function.\n+ `ApplicationManaged`: the endpoint is public. Your function must authorize every request itself.\n*Valid values*: `IamAuth`, `ApplicationManaged` \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`AuthType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-authtype) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "AuthType" }, "AutoDeploymentMode": { "anyOf": [ @@ -11253,10 +11255,12 @@ "type": "string" } ], - "title": "Autodeploymentmode" + "markdownDescription": "How the endpoint routes traffic across revisions. \n+ `LatestRevision`: sends 100% of traffic to the revision that this deployment creates.\n+ `Disabled`: routes traffic according to [RevisionWeights](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-revisionweights).\nWhich values you can use, and whether `RevisionWeights` is required, depends on [EndpointType](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-endpointtype): \n+ `HomeRegion`: use either value. With `Disabled`, `RevisionWeights` is required.\n+ `MultiRegion` or `PerRegion`: use `Disabled`. If you omit `RevisionWeights`, the endpoint routes 100% of traffic to the revision created in the same stack, so you can create the endpoint in a single deployment. Traffic doesn't move to revisions that later deployments create.\nThe value must resolve when AWS SAM transforms the template. A `Ref` to a parameter is supported. Other intrinsic functions are not supported. \n*Valid values*: `LatestRevision`, `Disabled` \n*Type*: String \n*Required*: No \n*Default*: `LatestRevision` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "title": "AutoDeploymentMode" }, "CodeUri": { - "title": "Codeuri" + "markdownDescription": "The Amazon S3 location of the deployment package. Specify an `s3://bucket/key` URI or an object with `Bucket`, `Key`, and optional `Version` keys. The bucket must have versioning enabled and a bucket policy that grants `lambda.amazonaws.com` the `s3:GetObject` and `s3:GetObjectVersion` permissions. If the object is encrypted with SSE-KMS, use a customer managed key whose key policy allows `lambda.amazonaws.com` to call `kms:Decrypt`. The AWS managed key for Amazon S3 (`aws/s3`) isn't supported. For details, see [AWS::Serverless::WebFunction](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html). \n*Type*: String \\| [CodeUri](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-codeuri.html) \n*Required*: Yes \n*CloudFormation compatibility*: This property is similar to the [`BuildConfig.CodeConfig.S3Object`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-s3object.html) property of an `AWS::Lambda::WebFunctionRevision` resource. AWS SAM converts an `s3://` URI into `Bucket`, `Key`, and `VersionId`.", + "title": "CodeUri" }, "EgressNetworkConnectorArn": { "anyOf": [ @@ -11267,7 +11271,8 @@ "type": "string" } ], - "title": "Egressnetworkconnectorarn" + "markdownDescription": "The version-qualified ARN of a network connector that routes the function's outbound traffic through your VPC. The ARN must end in a version number, for example `arn:aws:lambda:us-east-1:123456789012:network-connector:my-connector:1`. To use the latest version of a connector in the same template, specify `!GetAtt MyConnector.LatestVersionArn`. The connector's [ComputeTypes](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-networkconnector.html#sam-networkconnector-computetypes) must be `WebFunction`. \nIf you specify a literal string, AWS SAM checks that it's a version-qualified network connector ARN. Intrinsic functions are passed through and validated by the service. Changing this value creates a new revision. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.EgressNetworkConnectorArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "EgressNetworkConnectorArn" }, "EndpointDescription": { "anyOf": [ @@ -11278,7 +11283,8 @@ "type": "string" } ], - "title": "Endpointdescription" + "markdownDescription": "A description of the endpoint. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-description) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "EndpointDescription" }, "EndpointName": { "anyOf": [ @@ -11289,7 +11295,8 @@ "type": "string" } ], - "title": "Endpointname" + "markdownDescription": "The name of the endpoint. Changing the name replaces the endpoint. Changing `EndpointType` also replaces the endpoint, so change `EndpointName` at the same time. CloudFormation can't replace a custom-named resource without a new name. \n*Type*: String \n*Required*: No \n*Default*: `prod` \n*CloudFormation compatibility*: This property is passed directly to the [`EndpointName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointname) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "EndpointName" }, "EndpointType": { "anyOf": [ @@ -11300,7 +11307,8 @@ "type": "string" } ], - "title": "Endpointtype" + "markdownDescription": "Where the endpoint serves traffic. \n+ `HomeRegion`: serves from the stack's Region.\n+ `MultiRegion`: replicates the function to the Regions in [ReplicaRegions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-replicaregions) and routes each request to the nearest Region.\n+ `PerRegion`: exposes a separate endpoint in each replica Region.\n`MultiRegion` and `PerRegion` require `AutoDeploymentMode: Disabled`. \n*Valid values*: `HomeRegion`, `MultiRegion`, `PerRegion` \n*Type*: String \n*Required*: No \n*Default*: `HomeRegion` \n*CloudFormation compatibility*: This property is passed directly to the [`EndpointType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-endpointtype) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "EndpointType" }, "EntryPoint": { "anyOf": [ @@ -11311,14 +11319,17 @@ "type": "string" } ], - "title": "Entrypoint" + "markdownDescription": "The file that the runtime runs, relative to the root of the deployment package. AWS SAM passes it to the runtime in the reserved `AWS_LAMBDA_NODEJS_ENTRYPOINT` environment variable. \nYou can't use this property when `EnvironmentVariables` is an intrinsic function. \n*Type*: String \n*Required*: No \n*Default*: `index.js` \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "title": "EntryPoint" }, "EnvironmentVariables": { - "title": "Environmentvariables", + "markdownDescription": "Key-value pairs to set as environment variables for the revision. \n+ Keys must start with a letter and contain only letters, numbers, and underscores.\n+ Values must be non-empty and at most 4,096 characters.\n+ AWS SAM converts number and Boolean values to strings.\n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.EnvironmentVariables`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-environmentvariables) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "EnvironmentVariables", "type": "object" }, "ExecutionRoleArn": { - "title": "Executionrolearn" + "markdownDescription": "The ARN of the IAM role that the function assumes when it runs. If you don't specify a role, AWS SAM creates one with the `AWSLambdaBasicExecutionRole` managed policy and a logical ID of `Role`. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.ExecutionRoleArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-executionrolearn) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "ExecutionRoleArn" }, "FunctionName": { "anyOf": [ @@ -11329,10 +11340,12 @@ "type": "string" } ], - "title": "Functionname" + "markdownDescription": "The name of the function. Function names must be unique within an account across all Regions. If you don't specify a name, AWS SAM generates one from the logical ID and the stack ID, at most 64 characters. Changing the name replaces the function, its revision, and its endpoint. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`FunctionName`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-functionname) property of the `AWS::Lambda::WebFunction`, `AWS::Lambda::WebFunctionRevision`, and `AWS::Lambda::WebFunctionEndpoint` resources.", + "title": "FunctionName" }, "InlineCode": { - "title": "Inlinecode", + "markdownDescription": "Not supported for `AWS::Serverless::WebFunction`. Use [CodeUri](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-webfunction.html#sam-webfunction-codeuri). \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is unique to AWS SAM and doesn't have an CloudFormation equivalent.", + "title": "InlineCode", "type": "string" }, "KmsKeyArn": { @@ -11344,10 +11357,12 @@ "type": "string" } ], - "title": "Kmskeyarn" + "markdownDescription": "The ARN of the AWS KMS key used to encrypt the revision's environment variables. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`KmsKeyArn`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-kmskeyarn) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "KmsKeyArn" }, "LoggingConfig": { - "title": "Loggingconfig", + "markdownDescription": "The logging configuration for the revision, such as the log group and log levels. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.TelemetryConfig.LoggingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-telemetryconfig.html#cfn-lambda-webfunctionrevision-telemetryconfig-loggingconfig) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "LoggingConfig", "type": "object" }, "MaxConcurrencyPerEnvironment": { @@ -11359,10 +11374,12 @@ "type": "integer" } ], - "title": "Maxconcurrencyperenvironment" + "markdownDescription": "The maximum number of concurrent requests that each execution environment handles. \n*Type*: Integer \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.MaxConcurrencyPerEnvironment`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-maxconcurrencyperenvironment) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "MaxConcurrencyPerEnvironment" }, "ReplicaRegions": { - "title": "Replicaregions" + "markdownDescription": "The Regions to replicate the function to. Use this property with `MultiRegion` and `PerRegion` endpoints. Specify a list of Region codes and Region groups, or an object with `IncludeRegions` and optional `ExcludeRegions`. \n*Type*: List \\| [ReplicaRegions](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-replicaregions.html) \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Regions`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-regions) property of an `AWS::Lambda::WebFunctionEndpoint` resource. AWS SAM expands Region groups and applies `ExcludeRegions` to produce the Region list.", + "title": "ReplicaRegions" }, "RevisionDescription": { "anyOf": [ @@ -11373,10 +11390,12 @@ "type": "string" } ], - "title": "Revisiondescription" + "markdownDescription": "A description of the revision that this deployment creates. \n*Type*: String \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`Description`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionrevision.html#cfn-lambda-webfunctionrevision-description) property of an `AWS::Lambda::WebFunctionRevision` resource.", + "title": "RevisionDescription" }, "RevisionWeights": { - "title": "Revisionweights", + "markdownDescription": "A map of revision IDs to traffic weights. Use this property when `AutoDeploymentMode` is `Disabled`. Specify up to two revisions. Each weight is an integer from 1 to 100, and the weights must add up to 100. \n*Type*: [RevisionWeights](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-webfunction-revisionweights.html) \n*Required*: Conditional. Required when `AutoDeploymentMode` is `Disabled` and `EndpointType` is `HomeRegion`. \n*CloudFormation compatibility*: This property is similar to the [`RevisionWeights`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-revisionweights) property of an `AWS::Lambda::WebFunctionEndpoint` resource. AWS SAM converts the map into a list of `RevisionId` and `Weight` objects.", + "title": "RevisionWeights", "type": "object" }, "Runtime": { @@ -11388,18 +11407,22 @@ "type": "string" } ], + "markdownDescription": "The runtime for the function, for example `nodejs24.x`. \n*Type*: String \n*Required*: Yes \n*CloudFormation compatibility*: This property is passed directly to the [`BuildConfig.RuntimeConfig.Runtime`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-runtimeconfig.html#cfn-lambda-webfunctionrevision-runtimeconfig-runtime) property of an `AWS::Lambda::WebFunctionRevision` resource.", "title": "Runtime" }, "ScalingConfig": { - "title": "Scalingconfig", + "markdownDescription": "The scaling configuration for the endpoint, such as the maximum number of execution environments. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ScalingConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-scalingconfig) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "ScalingConfig", "type": "object" }, "Tags": { + "markdownDescription": "A map of key-value pairs that specifies the tags added to the function and to the execution role that AWS SAM generates. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is similar to the [`Tags`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunction.html#cfn-lambda-webfunction-tags) property of an `AWS::Lambda::WebFunction` resource. The `Tags` property in AWS SAM consists of key-value pairs (whereas in CloudFormation this property consists of a list of `Tag` objects). Also, AWS SAM automatically adds a `lambda:createdBy:SAM` tag to the function and to the default role that is generated for it.", "title": "Tags", "type": "object" }, "ThrottleConfig": { - "title": "Throttleconfig", + "markdownDescription": "The throttling configuration for the endpoint, such as the maximum request rate. \n*Type*: Map \n*Required*: No \n*CloudFormation compatibility*: This property is passed directly to the [`ThrottleConfig`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-lambda-webfunctionendpoint.html#cfn-lambda-webfunctionendpoint-throttleconfig) property of an `AWS::Lambda::WebFunctionEndpoint` resource.", + "title": "ThrottleConfig", "type": "object" }, "Timeout": { @@ -11411,6 +11434,7 @@ "type": "integer" } ], + "markdownDescription": "The maximum time, in seconds, that the function can run per request. Valid values are from 3 to 900. \n*Type*: Integer \n*Required*: No \n*Default*: `30` \n*CloudFormation compatibility*: This property is passed directly to the [`ServiceConfig.TimeoutSeconds`](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-properties-lambda-webfunctionrevision-serviceconfig.html#cfn-lambda-webfunctionrevision-serviceconfig-timeoutseconds) property of an `AWS::Lambda::WebFunctionRevision` resource.", "title": "Timeout" } },