CreateFunctionUrlConfig
Creates a Lambda function URL with the specified configuration parameters. A function URL is a dedicated HTTP(S) endpoint that you can use to invoke your function.
Request Syntax
POST /2021-10-31/functions/FunctionName/url?Qualifier=Qualifier HTTP/1.1 Content-type: application/json { "AuthType": "string", "Cors": { "AllowCredentials": boolean, "AllowHeaders": [ "string" ], "AllowMethods": [ "string" ], "AllowOrigins": [ "string" ], "ExposeHeaders": [ "string" ], "MaxAge": number }, "InvokeMode": "string" }URI Request Parameters
The request uses the following URI parameters.
The name or ARN of the Lambda function.
-
Function name – my-function.
-
Function ARN – arn:aws:lambda:us-west-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.
Length Constraints: Minimum length of 1. Maximum length of 140.
Pattern: (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-_]+))?
Required: Yes
QualifierThe alias name.
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern: ((?!^\d+$)^[0-9a-zA-Z-_]+$)
Request Body
The request accepts the following data in JSON format.
The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Control access to Lambda function URLs.
Type: String
Valid Values: NONE | AWS_IAM
Required: Yes
CorsThe cross-origin resource sharing (CORS) settings for your function URL.
Type: Cors object
Required: No
InvokeModeUse one of the following options:
-
BUFFERED – This is the default option. Lambda invokes your function using the Invoke 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 the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.
Type: String
Valid Values: BUFFERED | RESPONSE_STREAM
Required: No
Response Syntax
HTTP/1.1 201 Content-type: application/json { "AuthType": "string", "Cors": { "AllowCredentials": boolean, "AllowHeaders": [ "string" ], "AllowMethods": [ "string" ], "AllowOrigins": [ "string" ], "ExposeHeaders": [ "string" ], "MaxAge": number }, "CreationTime": "string", "FunctionArn": "string", "FunctionUrl": "string", "InvokeMode": "string" }Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in JSON format by the service.
The type of authentication that your function URL uses. Set to AWS_IAM if you want to restrict access to authenticated users only. Set to NONE if you want to bypass IAM authentication to create a public endpoint. For more information, see Control access to Lambda function URLs.
Type: String
Valid Values: NONE | AWS_IAM
CorsThe cross-origin resource sharing (CORS) settings for your function URL.
Type: Cors object
CreationTimeWhen the function URL was created, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).
Type: String
FunctionArnThe Amazon Resource Name (ARN) of your function.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 10000.
Pattern: 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-_]+))?
FunctionUrlThe HTTP URL endpoint for your function.
Type: String
Length Constraints: Minimum length of 40. Maximum length of 100.
InvokeModeUse one of the following options:
-
BUFFERED – This is the default option. Lambda invokes your function using the Invoke 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 the InvokeWithResponseStream API operation. The maximum response payload size is 200 MB.
Type: String
Valid Values: BUFFERED | RESPONSE_STREAM
Errors
For information about the errors that are common to all actions, see Common Error Types.
One of the parameters in the request is not valid.
The exception message.
TypeThe exception type.
HTTP Status Code: 400
ResourceConflictExceptionThe resource already exists, or another operation is in progress.
The exception message.
TypeThe exception type.
HTTP Status Code: 409
ResourceNotFoundExceptionThe resource specified in the request does not exist.
HTTP Status Code: 404
ServiceExceptionThe AWS Lambda service encountered an internal error.
HTTP Status Code: 500
TooManyRequestsExceptionThe request throughput limit was exceeded. For more information, see Lambda quotas.
The number of seconds the caller should wait before retrying.
HTTP Status Code: 429
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
Javascript is disabled or is unavailable in your browser.
To use the Amazon Web Services Documentation, Javascript must be enabled. Please refer to your browser's Help pages for instructions.