CreateFunctionUrlConfig - AWS Lambda (original) (raw)
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.
Name formats
- 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)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?
Required: Yes
The alias name.
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern: (^\$LATEST$)|((?!^[0-9]+$)([a-zA-Z0-9-_]+))
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 Security and auth model for Lambda function URLs.
Type: String
Valid Values: NONE | AWS_IAM
Required: Yes
The cross-origin resource sharing (CORS) settings for your function URL.
Type: Cors object
Required: No
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.
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 Security and auth model for Lambda function URLs.
Type: String
Valid Values: NONE | AWS_IAM
The cross-origin resource sharing (CORS) settings for your function URL.
Type: Cors object
When the function URL was created, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).
Type: String
The Amazon Resource Name (ARN) of your function.
Type: String
Pattern: arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?
The HTTP URL endpoint for your function.
Type: String
Length Constraints: Minimum length of 40. Maximum length of 100.
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.
Type: String
Valid Values: BUFFERED | RESPONSE_STREAM
Errors
For information about the errors that are common to all actions, see Common Errors.
InvalidParameterValueException
One of the parameters in the request is not valid.
HTTP Status Code: 400
ResourceConflictException
The resource already exists, or another operation is in progress.
HTTP Status Code: 409
ResourceNotFoundException
The resource specified in the request does not exist.
HTTP Status Code: 404
ServiceException
The AWS Lambda service encountered an internal error.
HTTP Status Code: 500
TooManyRequestsException
The request throughput limit was exceeded. For more information, see Lambda quotas.
HTTP Status Code: 429
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: