create_function_url_config

Lambda.Client.create_function_url_config(**kwargs)

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.

See also: AWS API Documentation

Request Syntax

response = client.create_function_url_config(
    FunctionName='string',
    Qualifier='string',
    AuthType='NONE'|'AWS_IAM',
    Cors={
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    }
)
Parameters
  • FunctionName (string) --

    [REQUIRED]

    The name of the Lambda function.

    Name formats
    • Function namemy-function .
    • Function ARNarn:aws:lambda:us-west-2:123456789012:function:my-function .
    • Partial ARN123456789012: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.

  • Qualifier (string) -- The alias name.
  • AuthType (string) --

    [REQUIRED]

    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.

  • Cors (dict) --

    The cross-origin resource sharing (CORS) settings for your function URL.

    • AllowCredentials (boolean) --

      Whether to allow cookies or other credentials in requests to your function URL. The default is false .

    • AllowHeaders (list) --

      The HTTP headers that origins can include in requests to your function URL. For example: Date , Keep-Alive , X-Custom-Header .

      • (string) --
    • AllowMethods (list) --

      The HTTP methods that are allowed when calling your function URL. For example: GET , POST , DELETE , or the wildcard character ( * ).

      • (string) --
    • AllowOrigins (list) --

      The origins that can access your function URL. You can list any number of specific origins, separated by a comma. For example: https://www.example.com , http://localhost:60905 .

      Alternatively, you can grant access to all origins using the wildcard character ( * ).

      • (string) --
    • ExposeHeaders (list) --

      The HTTP headers in your function response that you want to expose to origins that call your function URL. For example: Date , Keep-Alive , X-Custom-Header .

      • (string) --
    • MaxAge (integer) --

      The maximum amount of time, in seconds, that web browsers can cache results of a preflight request. By default, this is set to 0 , which means that the browser doesn't cache results.

Return type

dict

Returns

Response Syntax

{
    'FunctionUrl': 'string',
    'FunctionArn': 'string',
    'AuthType': 'NONE'|'AWS_IAM',
    'Cors': {
        'AllowCredentials': True|False,
        'AllowHeaders': [
            'string',
        ],
        'AllowMethods': [
            'string',
        ],
        'AllowOrigins': [
            'string',
        ],
        'ExposeHeaders': [
            'string',
        ],
        'MaxAge': 123
    },
    'CreationTime': 'string'
}

Response Structure

  • (dict) --

    • FunctionUrl (string) --

      The HTTP URL endpoint for your function.

    • FunctionArn (string) --

      The Amazon Resource Name (ARN) of your function.

    • AuthType (string) --

      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.

    • Cors (dict) --

      The cross-origin resource sharing (CORS) settings for your function URL.

      • AllowCredentials (boolean) --

        Whether to allow cookies or other credentials in requests to your function URL. The default is false .

      • AllowHeaders (list) --

        The HTTP headers that origins can include in requests to your function URL. For example: Date , Keep-Alive , X-Custom-Header .

        • (string) --
      • AllowMethods (list) --

        The HTTP methods that are allowed when calling your function URL. For example: GET , POST , DELETE , or the wildcard character ( * ).

        • (string) --
      • AllowOrigins (list) --

        The origins that can access your function URL. You can list any number of specific origins, separated by a comma. For example: https://www.example.com , http://localhost:60905 .

        Alternatively, you can grant access to all origins using the wildcard character ( * ).

        • (string) --
      • ExposeHeaders (list) --

        The HTTP headers in your function response that you want to expose to origins that call your function URL. For example: Date , Keep-Alive , X-Custom-Header .

        • (string) --
      • MaxAge (integer) --

        The maximum amount of time, in seconds, that web browsers can cache results of a preflight request. By default, this is set to 0 , which means that the browser doesn't cache results.

    • CreationTime (string) --

      When the function URL was created, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

Exceptions

  • Lambda.Client.exceptions.ResourceConflictException
  • Lambda.Client.exceptions.ResourceNotFoundException
  • Lambda.Client.exceptions.InvalidParameterValueException
  • Lambda.Client.exceptions.ServiceException
  • Lambda.Client.exceptions.TooManyRequestsException