AWS Lambda

2019/05/13 - AWS Lambda - 13 updated api methods

Changes  AWS Lambda now supports Node.js v10

CreateFunction (updated) Link ¶
Changes (both)
{'Runtime': {'nodejs10.x'}}

Creates a Lambda function. To create a function, you need a deployment package and an execution role. The deployment package contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.

A function has an unpublished version, and can have published versions and aliases. The unpublished version changes when you update your function's code and configuration. A published version is a snapshot of your function code and configuration that can't be changed. An alias is a named resource that maps to a version, and can be changed to map to a different version. Use the Publish parameter to create version 1 of your function from its initial configuration.

The other parameters let you configure version-specific and function-level settings. You can modify version-specific settings later with UpdateFunctionConfiguration. Function-level settings apply to both the unpublished and published versions of the function, and include tags ( TagResource ) and per-function concurrency limits ( PutFunctionConcurrency ).

If another account or an AWS service invokes your function, use AddPermission to grant permission by creating a resource-based IAM policy. You can grant permissions at the function level, on a version, or on an alias.

To invoke your function directly, use Invoke. To invoke your function in response to events in other AWS services, create an event source mapping ( CreateEventSourceMapping ), or configure a function trigger in the other service. For more information, see Invoking Functions.

See also: AWS API Documentation

Request Syntax

client.create_function(
    FunctionName='string',
    Runtime='nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    Role='string',
    Handler='string',
    Code={
        'ZipFile': b'bytes',
        'S3Bucket': 'string',
        'S3Key': 'string',
        'S3ObjectVersion': 'string'
    },
    Description='string',
    Timeout=123,
    MemorySize=123,
    Publish=True|False,
    VpcConfig={
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ]
    },
    DeadLetterConfig={
        'TargetArn': 'string'
    },
    Environment={
        'Variables': {
            'string': 'string'
        }
    },
    KMSKeyArn='string',
    TracingConfig={
        'Mode': 'Active'|'PassThrough'
    },
    Tags={
        'string': 'string'
    },
    Layers=[
        'string',
    ]
)
type FunctionName

string

param FunctionName

[REQUIRED]

The name 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.

type Runtime

string

param Runtime

[REQUIRED]

The identifier of the function's runtime.

type Role

string

param Role

[REQUIRED]

The Amazon Resource Name (ARN) of the function's execution role.

type Handler

string

param Handler

[REQUIRED]

The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see Programming Model.

type Code

dict

param Code

[REQUIRED]

The code for the function.

  • ZipFile (bytes) --

    The base64-encoded contents of the deployment package. AWS SDK and AWS CLI clients handle the encoding for you.

  • S3Bucket (string) --

    An Amazon S3 bucket in the same AWS Region as your function. The bucket can be in a different AWS account.

  • S3Key (string) --

    The Amazon S3 key of the deployment package.

  • S3ObjectVersion (string) --

    For versioned objects, the version of the deployment package object to use.

type Description

string

param Description

A description of the function.

type Timeout

integer

param Timeout

The amount of time that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds.

type MemorySize

integer

param MemorySize

The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB.

type Publish

boolean

param Publish

Set to true to publish the first version of the function during creation.

type VpcConfig

dict

param VpcConfig

For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC. When you connect a function to a VPC, it can only access resources and the internet through that VPC. For more information, see VPC Settings.

  • SubnetIds (list) --

    A list of VPC subnet IDs.

    • (string) --

  • SecurityGroupIds (list) --

    A list of VPC security groups IDs.

    • (string) --

type DeadLetterConfig

dict

param DeadLetterConfig

A dead letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. For more information, see Dead Letter Queues.

  • TargetArn (string) --

    The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

type Environment

dict

param Environment

Environment variables that are accessible from function code during execution.

  • Variables (dict) --

    Environment variable key-value pairs.

    • (string) --

      • (string) --

type KMSKeyArn

string

param KMSKeyArn

The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt your function's environment variables. If it's not provided, AWS Lambda uses a default service key.

type TracingConfig

dict

param TracingConfig

Set Mode to Active to sample and trace a subset of incoming requests with AWS X-Ray.

  • Mode (string) --

    The tracing mode.

type Tags

dict

param Tags

A list of tags to apply to the function.

  • (string) --

    • (string) --

type Layers

list

param Layers

A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    'Role': 'string',
    'Handler': 'string',
    'CodeSize': 123,
    'Description': 'string',
    'Timeout': 123,
    'MemorySize': 123,
    'LastModified': 'string',
    'CodeSha256': 'string',
    'Version': 'string',
    'VpcConfig': {
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ],
        'VpcId': 'string'
    },
    'DeadLetterConfig': {
        'TargetArn': 'string'
    },
    'Environment': {
        'Variables': {
            'string': 'string'
        },
        'Error': {
            'ErrorCode': 'string',
            'Message': 'string'
        }
    },
    'KMSKeyArn': 'string',
    'TracingConfig': {
        'Mode': 'Active'|'PassThrough'
    },
    'MasterArn': 'string',
    'RevisionId': 'string',
    'Layers': [
        {
            'Arn': 'string',
            'CodeSize': 123
        },
    ]
}

Response Structure

  • (dict) --

    Details about a function's configuration.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name (ARN).

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function that Lambda calls to begin executing your function.

    • CodeSize (integer) --

      The size of the function's deployment package, in bytes.

    • Description (string) --

      The function's description.

    • Timeout (integer) --

      The amount of time that Lambda allows a function to run before stopping it.

    • MemorySize (integer) --

      The memory that's allocated to the function.

    • LastModified (string) --

      The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • CodeSha256 (string) --

      The SHA256 hash of the function's deployment package.

    • Version (string) --

      The version of the Lambda function.

    • VpcConfig (dict) --

      The function's networking configuration.

      • SubnetIds (list) --

        A list of VPC subnet IDs.

        • (string) --

      • SecurityGroupIds (list) --

        A list of VPC security groups IDs.

        • (string) --

      • VpcId (string) --

        The ID of the VPC.

    • DeadLetterConfig (dict) --

      The function's dead letter queue.

      • TargetArn (string) --

        The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

    • Environment (dict) --

      The function's environment variables.

      • Variables (dict) --

        Environment variable key-value pairs.

        • (string) --

          • (string) --

      • Error (dict) --

        Error messages for environment variables that couldn't be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

    • TracingConfig (dict) --

      The function's AWS X-Ray tracing configuration.

      • Mode (string) --

        The tracing mode.

    • MasterArn (string) --

      For Lambda@Edge functions, the ARN of the master function.

    • RevisionId (string) --

      The latest updated revision of the function or alias.

    • Layers (list) --

      The function's layers.

      • (dict) --

        An AWS Lambda layer.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the function layer.

        • CodeSize (integer) --

          The size of the layer archive in bytes.

GetFunction (updated) Link ¶
Changes (response)
{'Configuration': {'Runtime': {'nodejs10.x'}}}

Returns information about the function or function version, with a link to download the deployment package that's valid for 10 minutes. If you specify a function version, only details that are specific to that version are returned.

See also: AWS API Documentation

Request Syntax

client.get_function(
    FunctionName='string',
    Qualifier='string'
)
type FunctionName

string

param FunctionName

[REQUIRED]

The name of the Lambda function, version, or alias.

Name formats

  • Function name - my-function (name-only), my-function:v1 (with alias).

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function .

  • Partial ARN - 123456789012:function:my-function .

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

type Qualifier

string

param Qualifier

Specify a version or alias to get details about a published version of the function.

rtype

dict

returns

Response Syntax

{
    'Configuration': {
        'FunctionName': 'string',
        'FunctionArn': 'string',
        'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
        'Role': 'string',
        'Handler': 'string',
        'CodeSize': 123,
        'Description': 'string',
        'Timeout': 123,
        'MemorySize': 123,
        'LastModified': 'string',
        'CodeSha256': 'string',
        'Version': 'string',
        'VpcConfig': {
            'SubnetIds': [
                'string',
            ],
            'SecurityGroupIds': [
                'string',
            ],
            'VpcId': 'string'
        },
        'DeadLetterConfig': {
            'TargetArn': 'string'
        },
        'Environment': {
            'Variables': {
                'string': 'string'
            },
            'Error': {
                'ErrorCode': 'string',
                'Message': 'string'
            }
        },
        'KMSKeyArn': 'string',
        'TracingConfig': {
            'Mode': 'Active'|'PassThrough'
        },
        'MasterArn': 'string',
        'RevisionId': 'string',
        'Layers': [
            {
                'Arn': 'string',
                'CodeSize': 123
            },
        ]
    },
    'Code': {
        'RepositoryType': 'string',
        'Location': 'string'
    },
    'Tags': {
        'string': 'string'
    },
    'Concurrency': {
        'ReservedConcurrentExecutions': 123
    }
}

Response Structure

  • (dict) --

    • Configuration (dict) --

      The configuration of the function or version.

      • FunctionName (string) --

        The name of the function.

      • FunctionArn (string) --

        The function's Amazon Resource Name (ARN).

      • Runtime (string) --

        The runtime environment for the Lambda function.

      • Role (string) --

        The function's execution role.

      • Handler (string) --

        The function that Lambda calls to begin executing your function.

      • CodeSize (integer) --

        The size of the function's deployment package, in bytes.

      • Description (string) --

        The function's description.

      • Timeout (integer) --

        The amount of time that Lambda allows a function to run before stopping it.

      • MemorySize (integer) --

        The memory that's allocated to the function.

      • LastModified (string) --

        The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

      • CodeSha256 (string) --

        The SHA256 hash of the function's deployment package.

      • Version (string) --

        The version of the Lambda function.

      • VpcConfig (dict) --

        The function's networking configuration.

        • SubnetIds (list) --

          A list of VPC subnet IDs.

          • (string) --

        • SecurityGroupIds (list) --

          A list of VPC security groups IDs.

          • (string) --

        • VpcId (string) --

          The ID of the VPC.

      • DeadLetterConfig (dict) --

        The function's dead letter queue.

        • TargetArn (string) --

          The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

      • Environment (dict) --

        The function's environment variables.

        • Variables (dict) --

          Environment variable key-value pairs.

          • (string) --

            • (string) --

        • Error (dict) --

          Error messages for environment variables that couldn't be applied.

          • ErrorCode (string) --

            The error code.

          • Message (string) --

            The error message.

      • KMSKeyArn (string) --

        The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

      • TracingConfig (dict) --

        The function's AWS X-Ray tracing configuration.

        • Mode (string) --

          The tracing mode.

      • MasterArn (string) --

        For Lambda@Edge functions, the ARN of the master function.

      • RevisionId (string) --

        The latest updated revision of the function or alias.

      • Layers (list) --

        The function's layers.

        • (dict) --

          An AWS Lambda layer.

          • Arn (string) --

            The Amazon Resource Name (ARN) of the function layer.

          • CodeSize (integer) --

            The size of the layer archive in bytes.

    • Code (dict) --

      The deployment package of the function or version.

      • RepositoryType (string) --

        The service that's hosting the file.

      • Location (string) --

        A presigned URL that you can use to download the deployment package.

    • Tags (dict) --

      The function's tags.

      • (string) --

        • (string) --

    • Concurrency (dict) --

      The function's reserved concurrency.

      • ReservedConcurrentExecutions (integer) --

        The number of concurrent executions that are reserved for this function. For more information, see Managing Concurrency.

GetFunctionConfiguration (updated) Link ¶
Changes (response)
{'Runtime': {'nodejs10.x'}}

Returns the version-specific settings of a Lambda function or version. The output includes only options that can vary between versions of a function. To modify these settings, use UpdateFunctionConfiguration.

To get all of a function's details, including function-level settings, use GetFunction.

See also: AWS API Documentation

Request Syntax

client.get_function_configuration(
    FunctionName='string',
    Qualifier='string'
)
type FunctionName

string

param FunctionName

[REQUIRED]

The name of the Lambda function, version, or alias.

Name formats

  • Function name - my-function (name-only), my-function:v1 (with alias).

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:my-function .

  • Partial ARN - 123456789012:function:my-function .

You can append a version number or alias to any of the formats. The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

type Qualifier

string

param Qualifier

Specify a version or alias to get details about a published version of the function.

rtype

dict

returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    'Role': 'string',
    'Handler': 'string',
    'CodeSize': 123,
    'Description': 'string',
    'Timeout': 123,
    'MemorySize': 123,
    'LastModified': 'string',
    'CodeSha256': 'string',
    'Version': 'string',
    'VpcConfig': {
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ],
        'VpcId': 'string'
    },
    'DeadLetterConfig': {
        'TargetArn': 'string'
    },
    'Environment': {
        'Variables': {
            'string': 'string'
        },
        'Error': {
            'ErrorCode': 'string',
            'Message': 'string'
        }
    },
    'KMSKeyArn': 'string',
    'TracingConfig': {
        'Mode': 'Active'|'PassThrough'
    },
    'MasterArn': 'string',
    'RevisionId': 'string',
    'Layers': [
        {
            'Arn': 'string',
            'CodeSize': 123
        },
    ]
}

Response Structure

  • (dict) --

    Details about a function's configuration.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name (ARN).

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function that Lambda calls to begin executing your function.

    • CodeSize (integer) --

      The size of the function's deployment package, in bytes.

    • Description (string) --

      The function's description.

    • Timeout (integer) --

      The amount of time that Lambda allows a function to run before stopping it.

    • MemorySize (integer) --

      The memory that's allocated to the function.

    • LastModified (string) --

      The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • CodeSha256 (string) --

      The SHA256 hash of the function's deployment package.

    • Version (string) --

      The version of the Lambda function.

    • VpcConfig (dict) --

      The function's networking configuration.

      • SubnetIds (list) --

        A list of VPC subnet IDs.

        • (string) --

      • SecurityGroupIds (list) --

        A list of VPC security groups IDs.

        • (string) --

      • VpcId (string) --

        The ID of the VPC.

    • DeadLetterConfig (dict) --

      The function's dead letter queue.

      • TargetArn (string) --

        The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

    • Environment (dict) --

      The function's environment variables.

      • Variables (dict) --

        Environment variable key-value pairs.

        • (string) --

          • (string) --

      • Error (dict) --

        Error messages for environment variables that couldn't be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

    • TracingConfig (dict) --

      The function's AWS X-Ray tracing configuration.

      • Mode (string) --

        The tracing mode.

    • MasterArn (string) --

      For Lambda@Edge functions, the ARN of the master function.

    • RevisionId (string) --

      The latest updated revision of the function or alias.

    • Layers (list) --

      The function's layers.

      • (dict) --

        An AWS Lambda layer.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the function layer.

        • CodeSize (integer) --

          The size of the layer archive in bytes.

GetLayerVersion (updated) Link ¶
Changes (response)
{'CompatibleRuntimes': {'nodejs10.x'}}

Returns information about a version of an AWS Lambda layer, with a link to download the layer archive that's valid for 10 minutes.

See also: AWS API Documentation

Request Syntax

client.get_layer_version(
    LayerName='string',
    VersionNumber=123
)
type LayerName

string

param LayerName

[REQUIRED]

The name or Amazon Resource Name (ARN) of the layer.

type VersionNumber

integer

param VersionNumber

[REQUIRED]

The version number.

rtype

dict

returns

Response Syntax

{
    'Content': {
        'Location': 'string',
        'CodeSha256': 'string',
        'CodeSize': 123
    },
    'LayerArn': 'string',
    'LayerVersionArn': 'string',
    'Description': 'string',
    'CreatedDate': 'string',
    'Version': 123,
    'CompatibleRuntimes': [
        'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    ],
    'LicenseInfo': 'string'
}

Response Structure

  • (dict) --

    • Content (dict) --

      Details about the layer version.

      • Location (string) --

        A link to the layer archive in Amazon S3 that is valid for 10 minutes.

      • CodeSha256 (string) --

        The SHA-256 hash of the layer archive.

      • CodeSize (integer) --

        The size of the layer archive in bytes.

    • LayerArn (string) --

      The ARN of the layer.

    • LayerVersionArn (string) --

      The ARN of the layer version.

    • Description (string) --

      The description of the version.

    • CreatedDate (string) --

      The date that the layer version was created, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • Version (integer) --

      The version number.

    • CompatibleRuntimes (list) --

      The layer's compatible runtimes.

      • (string) --

    • LicenseInfo (string) --

      The layer's software license.

GetLayerVersionByArn (updated) Link ¶
Changes (response)
{'CompatibleRuntimes': {'nodejs10.x'}}

Returns information about a version of an AWS Lambda layer, with a link to download the layer archive that's valid for 10 minutes.

See also: AWS API Documentation

Request Syntax

client.get_layer_version_by_arn(
    Arn='string'
)
type Arn

string

param Arn

[REQUIRED]

The ARN of the layer version.

rtype

dict

returns

Response Syntax

{
    'Content': {
        'Location': 'string',
        'CodeSha256': 'string',
        'CodeSize': 123
    },
    'LayerArn': 'string',
    'LayerVersionArn': 'string',
    'Description': 'string',
    'CreatedDate': 'string',
    'Version': 123,
    'CompatibleRuntimes': [
        'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    ],
    'LicenseInfo': 'string'
}

Response Structure

  • (dict) --

    • Content (dict) --

      Details about the layer version.

      • Location (string) --

        A link to the layer archive in Amazon S3 that is valid for 10 minutes.

      • CodeSha256 (string) --

        The SHA-256 hash of the layer archive.

      • CodeSize (integer) --

        The size of the layer archive in bytes.

    • LayerArn (string) --

      The ARN of the layer.

    • LayerVersionArn (string) --

      The ARN of the layer version.

    • Description (string) --

      The description of the version.

    • CreatedDate (string) --

      The date that the layer version was created, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • Version (integer) --

      The version number.

    • CompatibleRuntimes (list) --

      The layer's compatible runtimes.

      • (string) --

    • LicenseInfo (string) --

      The layer's software license.

ListFunctions (updated) Link ¶
Changes (response)
{'Functions': {'Runtime': {'nodejs10.x'}}}

Returns a list of Lambda functions, with the version-specific configuration of each.

Set FunctionVersion to ALL to include all published versions of each function in addition to the unpublished version. To get more information about a function or version, use GetFunction.

See also: AWS API Documentation

Request Syntax

client.list_functions(
    MasterRegion='string',
    FunctionVersion='ALL',
    Marker='string',
    MaxItems=123
)
type MasterRegion

string

param MasterRegion

For Lambda@Edge functions, the AWS Region of the master function. For example, us-east-2 or ALL . If specified, you must set FunctionVersion to ALL .

type FunctionVersion

string

param FunctionVersion

Set to ALL to include entries for all published versions of each function.

type Marker

string

param Marker

Specify the pagination token that's returned by a previous request to retrieve the next page of results.

type MaxItems

integer

param MaxItems

Specify a value between 1 and 50 to limit the number of functions in the response.

rtype

dict

returns

Response Syntax

{
    'NextMarker': 'string',
    'Functions': [
        {
            'FunctionName': 'string',
            'FunctionArn': 'string',
            'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
            'Role': 'string',
            'Handler': 'string',
            'CodeSize': 123,
            'Description': 'string',
            'Timeout': 123,
            'MemorySize': 123,
            'LastModified': 'string',
            'CodeSha256': 'string',
            'Version': 'string',
            'VpcConfig': {
                'SubnetIds': [
                    'string',
                ],
                'SecurityGroupIds': [
                    'string',
                ],
                'VpcId': 'string'
            },
            'DeadLetterConfig': {
                'TargetArn': 'string'
            },
            'Environment': {
                'Variables': {
                    'string': 'string'
                },
                'Error': {
                    'ErrorCode': 'string',
                    'Message': 'string'
                }
            },
            'KMSKeyArn': 'string',
            'TracingConfig': {
                'Mode': 'Active'|'PassThrough'
            },
            'MasterArn': 'string',
            'RevisionId': 'string',
            'Layers': [
                {
                    'Arn': 'string',
                    'CodeSize': 123
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    A list of Lambda functions.

    • NextMarker (string) --

      The pagination token that's included if more results are available.

    • Functions (list) --

      A list of Lambda functions.

      • (dict) --

        Details about a function's configuration.

        • FunctionName (string) --

          The name of the function.

        • FunctionArn (string) --

          The function's Amazon Resource Name (ARN).

        • Runtime (string) --

          The runtime environment for the Lambda function.

        • Role (string) --

          The function's execution role.

        • Handler (string) --

          The function that Lambda calls to begin executing your function.

        • CodeSize (integer) --

          The size of the function's deployment package, in bytes.

        • Description (string) --

          The function's description.

        • Timeout (integer) --

          The amount of time that Lambda allows a function to run before stopping it.

        • MemorySize (integer) --

          The memory that's allocated to the function.

        • LastModified (string) --

          The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

        • CodeSha256 (string) --

          The SHA256 hash of the function's deployment package.

        • Version (string) --

          The version of the Lambda function.

        • VpcConfig (dict) --

          The function's networking configuration.

          • SubnetIds (list) --

            A list of VPC subnet IDs.

            • (string) --

          • SecurityGroupIds (list) --

            A list of VPC security groups IDs.

            • (string) --

          • VpcId (string) --

            The ID of the VPC.

        • DeadLetterConfig (dict) --

          The function's dead letter queue.

          • TargetArn (string) --

            The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

        • Environment (dict) --

          The function's environment variables.

          • Variables (dict) --

            Environment variable key-value pairs.

            • (string) --

              • (string) --

          • Error (dict) --

            Error messages for environment variables that couldn't be applied.

            • ErrorCode (string) --

              The error code.

            • Message (string) --

              The error message.

        • KMSKeyArn (string) --

          The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

        • TracingConfig (dict) --

          The function's AWS X-Ray tracing configuration.

          • Mode (string) --

            The tracing mode.

        • MasterArn (string) --

          For Lambda@Edge functions, the ARN of the master function.

        • RevisionId (string) --

          The latest updated revision of the function or alias.

        • Layers (list) --

          The function's layers.

          • (dict) --

            An AWS Lambda layer.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the function layer.

            • CodeSize (integer) --

              The size of the layer archive in bytes.

ListLayerVersions (updated) Link ¶
Changes (request, response)
Request
{'CompatibleRuntime': {'nodejs10.x'}}
Response
{'LayerVersions': {'CompatibleRuntimes': {'nodejs10.x'}}}

Lists the versions of an AWS Lambda layer. Versions that have been deleted aren't listed. Specify a runtime identifier to list only versions that indicate that they're compatible with that runtime.

See also: AWS API Documentation

Request Syntax

client.list_layer_versions(
    CompatibleRuntime='nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    LayerName='string',
    Marker='string',
    MaxItems=123
)
type CompatibleRuntime

string

param CompatibleRuntime

A runtime identifier. For example, go1.x .

type LayerName

string

param LayerName

[REQUIRED]

The name or Amazon Resource Name (ARN) of the layer.

type Marker

string

param Marker

A pagination token returned by a previous call.

type MaxItems

integer

param MaxItems

The maximum number of versions to return.

rtype

dict

returns

Response Syntax

{
    'NextMarker': 'string',
    'LayerVersions': [
        {
            'LayerVersionArn': 'string',
            'Version': 123,
            'Description': 'string',
            'CreatedDate': 'string',
            'CompatibleRuntimes': [
                'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
            ],
            'LicenseInfo': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextMarker (string) --

      A pagination token returned when the response doesn't contain all versions.

    • LayerVersions (list) --

      A list of versions.

      • (dict) --

        Details about a version of an AWS Lambda layer.

        • LayerVersionArn (string) --

          The ARN of the layer version.

        • Version (integer) --

          The version number.

        • Description (string) --

          The description of the version.

        • CreatedDate (string) --

          The date that the version was created, in ISO 8601 format. For example, 2018-11-27T15:10:45.123+0000 .

        • CompatibleRuntimes (list) --

          The layer's compatible runtimes.

          • (string) --

        • LicenseInfo (string) --

          The layer's open-source license.

ListLayers (updated) Link ¶
Changes (request, response)
Request
{'CompatibleRuntime': {'nodejs10.x'}}
Response
{'Layers': {'LatestMatchingVersion': {'CompatibleRuntimes': {'nodejs10.x'}}}}

Lists AWS Lambda layers and shows information about the latest version of each. Specify a runtime identifier to list only layers that indicate that they're compatible with that runtime.

See also: AWS API Documentation

Request Syntax

client.list_layers(
    CompatibleRuntime='nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    Marker='string',
    MaxItems=123
)
type CompatibleRuntime

string

param CompatibleRuntime

A runtime identifier. For example, go1.x .

type Marker

string

param Marker

A pagination token returned by a previous call.

type MaxItems

integer

param MaxItems

The maximum number of layers to return.

rtype

dict

returns

Response Syntax

{
    'NextMarker': 'string',
    'Layers': [
        {
            'LayerName': 'string',
            'LayerArn': 'string',
            'LatestMatchingVersion': {
                'LayerVersionArn': 'string',
                'Version': 123,
                'Description': 'string',
                'CreatedDate': 'string',
                'CompatibleRuntimes': [
                    'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
                ],
                'LicenseInfo': 'string'
            }
        },
    ]
}

Response Structure

  • (dict) --

    • NextMarker (string) --

      A pagination token returned when the response doesn't contain all layers.

    • Layers (list) --

      A list of function layers.

      • (dict) --

        Details about an AWS Lambda layer.

        • LayerName (string) --

          The name of the layer.

        • LayerArn (string) --

          The Amazon Resource Name (ARN) of the function layer.

        • LatestMatchingVersion (dict) --

          The newest version of the layer.

          • LayerVersionArn (string) --

            The ARN of the layer version.

          • Version (integer) --

            The version number.

          • Description (string) --

            The description of the version.

          • CreatedDate (string) --

            The date that the version was created, in ISO 8601 format. For example, 2018-11-27T15:10:45.123+0000 .

          • CompatibleRuntimes (list) --

            The layer's compatible runtimes.

            • (string) --

          • LicenseInfo (string) --

            The layer's open-source license.

ListVersionsByFunction (updated) Link ¶
Changes (response)
{'Versions': {'Runtime': {'nodejs10.x'}}}

Returns a list of versions, with the version-specific configuration of each.

See also: AWS API Documentation

Request Syntax

client.list_versions_by_function(
    FunctionName='string',
    Marker='string',
    MaxItems=123
)
type FunctionName

string

param FunctionName

[REQUIRED]

The name of the Lambda function.

Name formats

  • Function name - MyFunction .

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction .

  • Partial ARN - 123456789012:function:MyFunction .

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

type Marker

string

param Marker

Specify the pagination token that's returned by a previous request to retrieve the next page of results.

type MaxItems

integer

param MaxItems

Limit the number of versions that are returned.

rtype

dict

returns

Response Syntax

{
    'NextMarker': 'string',
    'Versions': [
        {
            'FunctionName': 'string',
            'FunctionArn': 'string',
            'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
            'Role': 'string',
            'Handler': 'string',
            'CodeSize': 123,
            'Description': 'string',
            'Timeout': 123,
            'MemorySize': 123,
            'LastModified': 'string',
            'CodeSha256': 'string',
            'Version': 'string',
            'VpcConfig': {
                'SubnetIds': [
                    'string',
                ],
                'SecurityGroupIds': [
                    'string',
                ],
                'VpcId': 'string'
            },
            'DeadLetterConfig': {
                'TargetArn': 'string'
            },
            'Environment': {
                'Variables': {
                    'string': 'string'
                },
                'Error': {
                    'ErrorCode': 'string',
                    'Message': 'string'
                }
            },
            'KMSKeyArn': 'string',
            'TracingConfig': {
                'Mode': 'Active'|'PassThrough'
            },
            'MasterArn': 'string',
            'RevisionId': 'string',
            'Layers': [
                {
                    'Arn': 'string',
                    'CodeSize': 123
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    • NextMarker (string) --

      The pagination token that's included if more results are available.

    • Versions (list) --

      A list of Lambda function versions.

      • (dict) --

        Details about a function's configuration.

        • FunctionName (string) --

          The name of the function.

        • FunctionArn (string) --

          The function's Amazon Resource Name (ARN).

        • Runtime (string) --

          The runtime environment for the Lambda function.

        • Role (string) --

          The function's execution role.

        • Handler (string) --

          The function that Lambda calls to begin executing your function.

        • CodeSize (integer) --

          The size of the function's deployment package, in bytes.

        • Description (string) --

          The function's description.

        • Timeout (integer) --

          The amount of time that Lambda allows a function to run before stopping it.

        • MemorySize (integer) --

          The memory that's allocated to the function.

        • LastModified (string) --

          The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

        • CodeSha256 (string) --

          The SHA256 hash of the function's deployment package.

        • Version (string) --

          The version of the Lambda function.

        • VpcConfig (dict) --

          The function's networking configuration.

          • SubnetIds (list) --

            A list of VPC subnet IDs.

            • (string) --

          • SecurityGroupIds (list) --

            A list of VPC security groups IDs.

            • (string) --

          • VpcId (string) --

            The ID of the VPC.

        • DeadLetterConfig (dict) --

          The function's dead letter queue.

          • TargetArn (string) --

            The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

        • Environment (dict) --

          The function's environment variables.

          • Variables (dict) --

            Environment variable key-value pairs.

            • (string) --

              • (string) --

          • Error (dict) --

            Error messages for environment variables that couldn't be applied.

            • ErrorCode (string) --

              The error code.

            • Message (string) --

              The error message.

        • KMSKeyArn (string) --

          The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

        • TracingConfig (dict) --

          The function's AWS X-Ray tracing configuration.

          • Mode (string) --

            The tracing mode.

        • MasterArn (string) --

          For Lambda@Edge functions, the ARN of the master function.

        • RevisionId (string) --

          The latest updated revision of the function or alias.

        • Layers (list) --

          The function's layers.

          • (dict) --

            An AWS Lambda layer.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the function layer.

            • CodeSize (integer) --

              The size of the layer archive in bytes.

PublishLayerVersion (updated) Link ¶
Changes (both)
{'CompatibleRuntimes': {'nodejs10.x'}}

Creates an AWS Lambda layer from a ZIP archive. Each time you call PublishLayerVersion with the same version name, a new version is created.

Add layers to your function with CreateFunction or UpdateFunctionConfiguration.

See also: AWS API Documentation

Request Syntax

client.publish_layer_version(
    LayerName='string',
    Description='string',
    Content={
        'S3Bucket': 'string',
        'S3Key': 'string',
        'S3ObjectVersion': 'string',
        'ZipFile': b'bytes'
    },
    CompatibleRuntimes=[
        'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    ],
    LicenseInfo='string'
)
type LayerName

string

param LayerName

[REQUIRED]

The name or Amazon Resource Name (ARN) of the layer.

type Description

string

param Description

The description of the version.

type Content

dict

param Content

[REQUIRED]

The function layer archive.

  • S3Bucket (string) --

    The Amazon S3 bucket of the layer archive.

  • S3Key (string) --

    The Amazon S3 key of the layer archive.

  • S3ObjectVersion (string) --

    For versioned objects, the version of the layer archive object to use.

  • ZipFile (bytes) --

    The base64-encoded contents of the layer archive. AWS SDK and AWS CLI clients handle the encoding for you.

type CompatibleRuntimes

list

param CompatibleRuntimes

A list of compatible function runtimes. Used for filtering with ListLayers and ListLayerVersions.

  • (string) --

type LicenseInfo

string

param LicenseInfo

The layer's software license. It can be any of the following:

  • An SPDX license identifier. For example, MIT .

  • The URL of a license hosted on the internet. For example, https://opensource.org/licenses/MIT .

  • The full text of the license.

rtype

dict

returns

Response Syntax

{
    'Content': {
        'Location': 'string',
        'CodeSha256': 'string',
        'CodeSize': 123
    },
    'LayerArn': 'string',
    'LayerVersionArn': 'string',
    'Description': 'string',
    'CreatedDate': 'string',
    'Version': 123,
    'CompatibleRuntimes': [
        'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    ],
    'LicenseInfo': 'string'
}

Response Structure

  • (dict) --

    • Content (dict) --

      Details about the layer version.

      • Location (string) --

        A link to the layer archive in Amazon S3 that is valid for 10 minutes.

      • CodeSha256 (string) --

        The SHA-256 hash of the layer archive.

      • CodeSize (integer) --

        The size of the layer archive in bytes.

    • LayerArn (string) --

      The ARN of the layer.

    • LayerVersionArn (string) --

      The ARN of the layer version.

    • Description (string) --

      The description of the version.

    • CreatedDate (string) --

      The date that the layer version was created, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • Version (integer) --

      The version number.

    • CompatibleRuntimes (list) --

      The layer's compatible runtimes.

      • (string) --

    • LicenseInfo (string) --

      The layer's software license.

PublishVersion (updated) Link ¶
Changes (response)
{'Runtime': {'nodejs10.x'}}

Creates a version from the current code and configuration of a function. Use versions to create a snapshot of your function code and configuration that doesn't change.

AWS Lambda doesn't publish a version if the function's configuration and code haven't changed since the last version. Use UpdateFunctionCode or UpdateFunctionConfiguration to update the function before publishing a version.

Clients can invoke versions directly or with an alias. To create an alias, use CreateAlias.

See also: AWS API Documentation

Request Syntax

client.publish_version(
    FunctionName='string',
    CodeSha256='string',
    Description='string',
    RevisionId='string'
)
type FunctionName

string

param FunctionName

[REQUIRED]

The name of the Lambda function.

Name formats

  • Function name - MyFunction .

  • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction .

  • Partial ARN - 123456789012:function:MyFunction .

The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.

type CodeSha256

string

param CodeSha256

Only publish a version if the hash value matches the value that's specified. Use this option to avoid publishing a version if the function code has changed since you last updated it. You can get the hash for the version that you uploaded from the output of UpdateFunctionCode.

type Description

string

param Description

A description for the version to override the description in the function configuration.

type RevisionId

string

param RevisionId

Only update the function if the revision ID matches the ID that's specified. Use this option to avoid publishing a version if the function configuration has changed since you last updated it.

rtype

dict

returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    'Role': 'string',
    'Handler': 'string',
    'CodeSize': 123,
    'Description': 'string',
    'Timeout': 123,
    'MemorySize': 123,
    'LastModified': 'string',
    'CodeSha256': 'string',
    'Version': 'string',
    'VpcConfig': {
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ],
        'VpcId': 'string'
    },
    'DeadLetterConfig': {
        'TargetArn': 'string'
    },
    'Environment': {
        'Variables': {
            'string': 'string'
        },
        'Error': {
            'ErrorCode': 'string',
            'Message': 'string'
        }
    },
    'KMSKeyArn': 'string',
    'TracingConfig': {
        'Mode': 'Active'|'PassThrough'
    },
    'MasterArn': 'string',
    'RevisionId': 'string',
    'Layers': [
        {
            'Arn': 'string',
            'CodeSize': 123
        },
    ]
}

Response Structure

  • (dict) --

    Details about a function's configuration.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name (ARN).

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function that Lambda calls to begin executing your function.

    • CodeSize (integer) --

      The size of the function's deployment package, in bytes.

    • Description (string) --

      The function's description.

    • Timeout (integer) --

      The amount of time that Lambda allows a function to run before stopping it.

    • MemorySize (integer) --

      The memory that's allocated to the function.

    • LastModified (string) --

      The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • CodeSha256 (string) --

      The SHA256 hash of the function's deployment package.

    • Version (string) --

      The version of the Lambda function.

    • VpcConfig (dict) --

      The function's networking configuration.

      • SubnetIds (list) --

        A list of VPC subnet IDs.

        • (string) --

      • SecurityGroupIds (list) --

        A list of VPC security groups IDs.

        • (string) --

      • VpcId (string) --

        The ID of the VPC.

    • DeadLetterConfig (dict) --

      The function's dead letter queue.

      • TargetArn (string) --

        The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

    • Environment (dict) --

      The function's environment variables.

      • Variables (dict) --

        Environment variable key-value pairs.

        • (string) --

          • (string) --

      • Error (dict) --

        Error messages for environment variables that couldn't be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

    • TracingConfig (dict) --

      The function's AWS X-Ray tracing configuration.

      • Mode (string) --

        The tracing mode.

    • MasterArn (string) --

      For Lambda@Edge functions, the ARN of the master function.

    • RevisionId (string) --

      The latest updated revision of the function or alias.

    • Layers (list) --

      The function's layers.

      • (dict) --

        An AWS Lambda layer.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the function layer.

        • CodeSize (integer) --

          The size of the layer archive in bytes.

UpdateFunctionCode (updated) Link ¶
Changes (response)
{'Runtime': {'nodejs10.x'}}

Updates a Lambda function's code.

The function's code is locked when you publish a version. You can't modify the code of a published version, only the unpublished version.

See also: AWS API Documentation

Request Syntax

client.update_function_code(
    FunctionName='string',
    ZipFile=b'bytes',
    S3Bucket='string',
    S3Key='string',
    S3ObjectVersion='string',
    Publish=True|False,
    DryRun=True|False,
    RevisionId='string'
)
type FunctionName

string

param FunctionName

[REQUIRED]

The name 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.

type ZipFile

bytes

param ZipFile

The base64-encoded contents of the deployment package. AWS SDK and AWS CLI clients handle the encoding for you.

type S3Bucket

string

param S3Bucket

An Amazon S3 bucket in the same AWS Region as your function. The bucket can be in a different AWS account.

type S3Key

string

param S3Key

The Amazon S3 key of the deployment package.

type S3ObjectVersion

string

param S3ObjectVersion

For versioned objects, the version of the deployment package object to use.

type Publish

boolean

param Publish

Set to true to publish a new version of the function after updating the code. This has the same effect as calling PublishVersion separately.

type DryRun

boolean

param DryRun

Set to true to validate the request parameters and access permissions without modifying the function code.

type RevisionId

string

param RevisionId

Only update the function if the revision ID matches the ID that's specified. Use this option to avoid modifying a function that has changed since you last read it.

rtype

dict

returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    'Role': 'string',
    'Handler': 'string',
    'CodeSize': 123,
    'Description': 'string',
    'Timeout': 123,
    'MemorySize': 123,
    'LastModified': 'string',
    'CodeSha256': 'string',
    'Version': 'string',
    'VpcConfig': {
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ],
        'VpcId': 'string'
    },
    'DeadLetterConfig': {
        'TargetArn': 'string'
    },
    'Environment': {
        'Variables': {
            'string': 'string'
        },
        'Error': {
            'ErrorCode': 'string',
            'Message': 'string'
        }
    },
    'KMSKeyArn': 'string',
    'TracingConfig': {
        'Mode': 'Active'|'PassThrough'
    },
    'MasterArn': 'string',
    'RevisionId': 'string',
    'Layers': [
        {
            'Arn': 'string',
            'CodeSize': 123
        },
    ]
}

Response Structure

  • (dict) --

    Details about a function's configuration.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name (ARN).

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function that Lambda calls to begin executing your function.

    • CodeSize (integer) --

      The size of the function's deployment package, in bytes.

    • Description (string) --

      The function's description.

    • Timeout (integer) --

      The amount of time that Lambda allows a function to run before stopping it.

    • MemorySize (integer) --

      The memory that's allocated to the function.

    • LastModified (string) --

      The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • CodeSha256 (string) --

      The SHA256 hash of the function's deployment package.

    • Version (string) --

      The version of the Lambda function.

    • VpcConfig (dict) --

      The function's networking configuration.

      • SubnetIds (list) --

        A list of VPC subnet IDs.

        • (string) --

      • SecurityGroupIds (list) --

        A list of VPC security groups IDs.

        • (string) --

      • VpcId (string) --

        The ID of the VPC.

    • DeadLetterConfig (dict) --

      The function's dead letter queue.

      • TargetArn (string) --

        The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

    • Environment (dict) --

      The function's environment variables.

      • Variables (dict) --

        Environment variable key-value pairs.

        • (string) --

          • (string) --

      • Error (dict) --

        Error messages for environment variables that couldn't be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

    • TracingConfig (dict) --

      The function's AWS X-Ray tracing configuration.

      • Mode (string) --

        The tracing mode.

    • MasterArn (string) --

      For Lambda@Edge functions, the ARN of the master function.

    • RevisionId (string) --

      The latest updated revision of the function or alias.

    • Layers (list) --

      The function's layers.

      • (dict) --

        An AWS Lambda layer.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the function layer.

        • CodeSize (integer) --

          The size of the layer archive in bytes.

UpdateFunctionConfiguration (updated) Link ¶
Changes (both)
{'Runtime': {'nodejs10.x'}}

Modify the version-specific settings of a Lambda function.

These settings can vary between versions of a function and are locked when you publish a version. You can't modify the configuration of a published version, only the unpublished version.

To configure function concurrency, use PutFunctionConcurrency. To grant invoke permissions to an account or AWS service, use AddPermission.

See also: AWS API Documentation

Request Syntax

client.update_function_configuration(
    FunctionName='string',
    Role='string',
    Handler='string',
    Description='string',
    Timeout=123,
    MemorySize=123,
    VpcConfig={
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ]
    },
    Environment={
        'Variables': {
            'string': 'string'
        }
    },
    Runtime='nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    DeadLetterConfig={
        'TargetArn': 'string'
    },
    KMSKeyArn='string',
    TracingConfig={
        'Mode': 'Active'|'PassThrough'
    },
    RevisionId='string',
    Layers=[
        'string',
    ]
)
type FunctionName

string

param FunctionName

[REQUIRED]

The name 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.

type Role

string

param Role

The Amazon Resource Name (ARN) of the function's execution role.

type Handler

string

param Handler

The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see Programming Model.

type Description

string

param Description

A description of the function.

type Timeout

integer

param Timeout

The amount of time that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds.

type MemorySize

integer

param MemorySize

The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB.

type VpcConfig

dict

param VpcConfig

For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC. When you connect a function to a VPC, it can only access resources and the internet through that VPC. For more information, see VPC Settings.

  • SubnetIds (list) --

    A list of VPC subnet IDs.

    • (string) --

  • SecurityGroupIds (list) --

    A list of VPC security groups IDs.

    • (string) --

type Environment

dict

param Environment

Environment variables that are accessible from function code during execution.

  • Variables (dict) --

    Environment variable key-value pairs.

    • (string) --

      • (string) --

type Runtime

string

param Runtime

The identifier of the function's runtime.

type DeadLetterConfig

dict

param DeadLetterConfig

A dead letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. For more information, see Dead Letter Queues.

  • TargetArn (string) --

    The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

type KMSKeyArn

string

param KMSKeyArn

The ARN of the AWS Key Management Service (AWS KMS) key that's used to encrypt your function's environment variables. If it's not provided, AWS Lambda uses a default service key.

type TracingConfig

dict

param TracingConfig

Set Mode to Active to sample and trace a subset of incoming requests with AWS X-Ray.

  • Mode (string) --

    The tracing mode.

type RevisionId

string

param RevisionId

Only update the function if the revision ID matches the ID that's specified. Use this option to avoid modifying a function that has changed since you last read it.

type Layers

list

param Layers

A list of function layers to add to the function's execution environment. Specify each layer by its ARN, including the version.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'nodejs10.x'|'java8'|'python2.7'|'python3.6'|'python3.7'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x'|'ruby2.5'|'provided',
    'Role': 'string',
    'Handler': 'string',
    'CodeSize': 123,
    'Description': 'string',
    'Timeout': 123,
    'MemorySize': 123,
    'LastModified': 'string',
    'CodeSha256': 'string',
    'Version': 'string',
    'VpcConfig': {
        'SubnetIds': [
            'string',
        ],
        'SecurityGroupIds': [
            'string',
        ],
        'VpcId': 'string'
    },
    'DeadLetterConfig': {
        'TargetArn': 'string'
    },
    'Environment': {
        'Variables': {
            'string': 'string'
        },
        'Error': {
            'ErrorCode': 'string',
            'Message': 'string'
        }
    },
    'KMSKeyArn': 'string',
    'TracingConfig': {
        'Mode': 'Active'|'PassThrough'
    },
    'MasterArn': 'string',
    'RevisionId': 'string',
    'Layers': [
        {
            'Arn': 'string',
            'CodeSize': 123
        },
    ]
}

Response Structure

  • (dict) --

    Details about a function's configuration.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name (ARN).

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function that Lambda calls to begin executing your function.

    • CodeSize (integer) --

      The size of the function's deployment package, in bytes.

    • Description (string) --

      The function's description.

    • Timeout (integer) --

      The amount of time that Lambda allows a function to run before stopping it.

    • MemorySize (integer) --

      The memory that's allocated to the function.

    • LastModified (string) --

      The date and time that the function was last updated, in ISO-8601 format (YYYY-MM-DDThh:mm:ss.sTZD).

    • CodeSha256 (string) --

      The SHA256 hash of the function's deployment package.

    • Version (string) --

      The version of the Lambda function.

    • VpcConfig (dict) --

      The function's networking configuration.

      • SubnetIds (list) --

        A list of VPC subnet IDs.

        • (string) --

      • SecurityGroupIds (list) --

        A list of VPC security groups IDs.

        • (string) --

      • VpcId (string) --

        The ID of the VPC.

    • DeadLetterConfig (dict) --

      The function's dead letter queue.

      • TargetArn (string) --

        The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.

    • Environment (dict) --

      The function's environment variables.

      • Variables (dict) --

        Environment variable key-value pairs.

        • (string) --

          • (string) --

      • Error (dict) --

        Error messages for environment variables that couldn't be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key that's used to encrypt the function's environment variables. This key is only returned if you've configured a customer-managed CMK.

    • TracingConfig (dict) --

      The function's AWS X-Ray tracing configuration.

      • Mode (string) --

        The tracing mode.

    • MasterArn (string) --

      For Lambda@Edge functions, the ARN of the master function.

    • RevisionId (string) --

      The latest updated revision of the function or alias.

    • Layers (list) --

      The function's layers.

      • (dict) --

        An AWS Lambda layer.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the function layer.

        • CodeSize (integer) --

          The size of the layer archive in bytes.