This is the new AWS CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.
AWS::Lambda::Url
The AWS::Lambda::Url resource creates a function URL with the specified configuration parameters. A function URL is a dedicated HTTP(S) endpoint that
you can use to invoke your function.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::Lambda::Url", "Properties" : { "AuthType" :String, "Cors" :Cors, "InvokeMode" :String, "Qualifier" :String, "TargetFunctionArn" :String} }
YAML
Type: AWS::Lambda::Url Properties: AuthType:StringCors:CorsInvokeMode:StringQualifier:StringTargetFunctionArn:String
Properties
AuthType-
The type of authentication that your function URL uses. Set to
AWS_IAMif you want to restrict access to authenticated users only. Set toNONEif you want to bypass IAM authentication to create a public endpoint. For more information, see Security and auth model for Lambda function URLs.Required: Yes
Type: String
Allowed values:
AWS_IAM | NONEUpdate requires: No interruption
Cors-
The Cross-Origin Resource Sharing (CORS)
settings for your function URL. Required: No
Type: Cors
Update requires: No interruption
InvokeMode-
Use one of the following options:
-
BUFFERED– This is the default option. Lambda invokes your function using theInvokeAPI operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB. -
RESPONSE_STREAM– Your function streams payload results as they become available. Lambda invokes your function using theInvokeWithResponseStreamAPI operation. The maximum response payload size is 200 MB.
Required: No
Type: String
Allowed values:
BUFFERED | RESPONSE_STREAMUpdate requires: No interruption
-
Qualifier-
The alias name.
Required: No
Type: String
Pattern:
((?!^[0-9]+$)([a-zA-Z0-9-_]+))Minimum:
1Maximum:
128Update requires: Replacement
TargetFunctionArn-
The name of the Lambda function.
Name formats
-
Function name -
my-function. -
Function ARN -
arn:aws:lambda:us-east-2:123456789012:function:my-function. -
Partial ARN -
123456789012:function:my-function.
The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
Required: Yes
Type: String
Pattern:
^(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:((?!\d+)[0-9a-zA-Z-_]+))?$Update requires: Replacement
-
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns the resource name.
For more information about using the Ref function, see Ref.
Fn::GetAtt
The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.
FunctionArn-
The Amazon Resource Name (ARN) of the function.
FunctionUrl-
The HTTP URL endpoint for your function.