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:
String
Cors:Cors
InvokeMode:String
Qualifier:String
TargetFunctionArn:String
Properties
AuthType
-
The type of authentication that your function URL uses. Set to
AWS_IAM
if you want to restrict access to authenticated users only. Set toNONE
if 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 | NONE
Update 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 theInvoke
API 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 theInvokeWithResponseStream
API operation. The maximum response payload size is 20 MB, however, you can request a quota increase.
Required: No
Type: String
Allowed values:
BUFFERED | RESPONSE_STREAM
Update requires: No interruption
-
Qualifier
-
The alias name.
Required: No
Type: String
Pattern:
((?!^[0-9]+$)([a-zA-Z0-9-_]+))
Minimum:
1
Maximum:
128
Update 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.