Lambda

Table of Contents

Client

class Lambda.Client

A low-level client representing AWS Lambda:

import boto3

client = boto3.client('lambda')

These are the available methods:

add_permission(**kwargs)

Adds a permission to the resource policy associated with the specified AWS Lambda function. You use resource policies to grant permissions to event sources that use the push model. In a push model, event sources (such as Amazon S3 and custom applications) invoke your Lambda function. Each permission you add to the resource policy allows an event source permission to invoke the Lambda function.

Permissions apply to the Amazon Resource Name (ARN) used to invoke the function, which can be unqualified (the unpublished version of the function), or include a version or alias. If a client uses a version or alias to invoke a function, use the Qualifier parameter to apply permissions to that ARN. For more information about versioning, see AWS Lambda Function Versioning and Aliases .

This operation requires permission for the lambda:AddPermission action.

See also: AWS API Documentation

Request Syntax

response = client.add_permission(
    FunctionName='string',
    StatementId='string',
    Action='string',
    Principal='string',
    SourceArn='string',
    SourceAccount='string',
    EventSourceToken='string',
    Qualifier='string',
    RevisionId='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • StatementId (string) --

    [REQUIRED]

    A unique statement identifier.

  • Action (string) --

    [REQUIRED]

    The AWS Lambda action you want to allow in this statement. Each Lambda action is a string starting with lambda: followed by the API name . For example, lambda:CreateFunction . You can use wildcard (lambda:* ) to grant permission for all AWS Lambda actions.

  • Principal (string) --

    [REQUIRED]

    The principal who is getting this permission. The principal can be an AWS service (e.g. s3.amazonaws.com or sns.amazonaws.com ) for service triggers, or an account ID for cross-account access. If you specify a service as a principal, use the SourceArn parameter to limit who can invoke the function through that service.

  • SourceArn (string) --

    The Amazon Resource Name of the invoker.

    Warning

    If you add a permission to a service principal without providing the source ARN, any AWS account that creates a mapping to your function ARN can invoke your Lambda function.

  • SourceAccount (string) -- This parameter is used for S3 and SES. The AWS account ID (without a hyphen) of the source owner. For example, if the SourceArn identifies a bucket, then this is the bucket owner's account ID. You can use this additional condition to ensure the bucket you specify is owned by a specific account (it is possible the bucket owner deleted the bucket and some other AWS account created the bucket). You can also use this condition to specify all sources (that is, you don't specify the SourceArn ) owned by a specific account.
  • EventSourceToken (string) -- A unique token that must be supplied by the principal invoking the function. This is currently only used for Alexa Smart Home functions.
  • Qualifier (string) -- Specify a version or alias to add permissions to a published version of the function.
  • RevisionId (string) -- An optional value you can use to ensure you are updating the latest update of the function version or alias. If the RevisionID you pass doesn't match the latest RevisionId of the function or alias, it will fail with an error message, advising you to retrieve the latest function version or alias RevisionID using either GetFunction or GetAlias
Return type

dict

Returns

Response Syntax

{
    'Statement': 'string'
}

Response Structure

  • (dict) --

    • Statement (string) --

      The permission statement you specified in the request. The response returns the same as a string using a backslash ("") as an escape character in the JSON.

Examples

This example adds a permission for an S3 bucket to invoke a Lambda function.

response = client.add_permission(
    Action='lambda:InvokeFunction',
    FunctionName='MyFunction',
    Principal='s3.amazonaws.com',
    SourceAccount='123456789012',
    SourceArn='arn:aws:s3:::examplebucket/*',
    StatementId='ID-1',
)

print(response)

Expected Output:

{
    'Statement': 'ID-1',
    'ResponseMetadata': {
        '...': '...',
    },
}
can_paginate(operation_name)

Check if an operation can be paginated.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Returns
True if the operation can be paginated, False otherwise.
create_alias(**kwargs)

Creates an alias that points to the specified Lambda function version. For more information, see Introduction to AWS Lambda Aliases .

Alias names are unique for a given function. This requires permission for the lambda:CreateAlias action.

See also: AWS API Documentation

Request Syntax

response = client.create_alias(
    FunctionName='string',
    Name='string',
    FunctionVersion='string',
    Description='string',
    RoutingConfig={
        'AdditionalVersionWeights': {
            'string': 123.0
        }
    }
)
Parameters
  • FunctionName (string) --

    [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.

  • Name (string) --

    [REQUIRED]

    Name for the alias you are creating.

  • FunctionVersion (string) --

    [REQUIRED]

    Lambda function version for which you are creating the alias.

  • Description (string) -- Description of the alias.
  • RoutingConfig (dict) --

    Specifies an additional version your alias can point to, allowing you to dictate what percentage of traffic will invoke each version. For more information, see Traffic Shifting Using Aliases .

    • AdditionalVersionWeights (dict) --

      The name of the second alias, and the percentage of traffic that is routed to it.

      • (string) --
        • (float) --
Return type

dict

Returns

Response Syntax

{
    'AliasArn': 'string',
    'Name': 'string',
    'FunctionVersion': 'string',
    'Description': 'string',
    'RoutingConfig': {
        'AdditionalVersionWeights': {
            'string': 123.0
        }
    },
    'RevisionId': 'string'
}

Response Structure

  • (dict) --

    Provides configuration information about a Lambda function version alias.

    • AliasArn (string) --

      Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias called BETA that points to a helloworld function version, the ARN is arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA .

    • Name (string) --

      Alias name.

    • FunctionVersion (string) --

      Function version to which the alias points.

    • Description (string) --

      Alias description.

    • RoutingConfig (dict) --

      Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic will invoke each version.

      • AdditionalVersionWeights (dict) --

        The name of the second alias, and the percentage of traffic that is routed to it.

        • (string) --
          • (float) --
    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

create_event_source_mapping(**kwargs)

Identifies a poll-based event source for a Lambda function. It can be either an Amazon Kinesis or DynamoDB stream. AWS Lambda invokes the specified function when records are posted to the event source.

This association between a poll-based source and a Lambda function is called the event source mapping.

You provide mapping information (for example, which stream or SQS queue to read from and which Lambda function to invoke) in the request body.

Amazon Kinesis or DynamoDB stream event sources can be associated with multiple AWS Lambda functions and a given Lambda function can be associated with multiple AWS event sources. For Amazon SQS, you can configure multiple queues as event sources for a single Lambda function, but an SQS queue can be mapped only to a single Lambda function.

You can configure an SQS queue in an account separate from your Lambda function's account. Also the queue needs to reside in the same AWS region as your function.

If you are using versioning, you can specify a specific function version or an alias via the function name parameter. For more information about versioning, see AWS Lambda Function Versioning and Aliases .

This operation requires permission for the lambda:CreateEventSourceMapping action.

See also: AWS API Documentation

Request Syntax

response = client.create_event_source_mapping(
    EventSourceArn='string',
    FunctionName='string',
    Enabled=True|False,
    BatchSize=123,
    StartingPosition='TRIM_HORIZON'|'LATEST'|'AT_TIMESTAMP',
    StartingPositionTimestamp=datetime(2015, 1, 1)
)
Parameters
  • EventSourceArn (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) of the event source.

  • FunctionName (string) --

    [REQUIRED]

    The name of the lambda function.

    Name formats
    • Function name - MyFunction .
    • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction .
    • Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD .
    • 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.

  • Enabled (boolean) -- Set to false to disable the event source upon creation.
  • BatchSize (integer) -- The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records. The default for Amazon Kinesis and Amazon DynamoDB is 100 records. Both the default and maximum for Amazon SQS are 10 messages.
  • StartingPosition (string) -- The position in the DynamoDB or Kinesis stream where AWS Lambda should start reading. For more information, see GetShardIterator in the Amazon Kinesis API Reference Guide or GetShardIterator in the Amazon DynamoDB API Reference Guide . The AT_TIMESTAMP value is supported only for Kinesis streams .
  • StartingPositionTimestamp (datetime) -- The timestamp of the data record from which to start reading. Used with shard iterator type AT_TIMESTAMP. If a record with this exact timestamp does not exist, the iterator returned is for the next (later) record. If the timestamp is older than the current trim horizon, the iterator returned is for the oldest untrimmed data record (TRIM_HORIZON). Valid only for Kinesis streams .
Return type

dict

Returns

Response Syntax

{
    'UUID': 'string',
    'BatchSize': 123,
    'EventSourceArn': 'string',
    'FunctionArn': 'string',
    'LastModified': datetime(2015, 1, 1),
    'LastProcessingResult': 'string',
    'State': 'string',
    'StateTransitionReason': 'string'
}

Response Structure

  • (dict) --

    Describes mapping between an Amazon Kinesis or DynamoDB stream and a Lambda function.

    • UUID (string) --

      The AWS Lambda assigned opaque identifier for the mapping.

    • BatchSize (integer) --

      The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.

    • EventSourceArn (string) --

      The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream that is the source of events.

    • FunctionArn (string) --

      The Lambda function to invoke when AWS Lambda detects an event on the poll-based source.

    • LastModified (datetime) --

      The UTC time string indicating the last time the event mapping was updated.

    • LastProcessingResult (string) --

      The result of the last AWS Lambda invocation of your Lambda function. This value will be null if an SQS queue is the event source.

    • State (string) --

      The state of the event source mapping. It can be Creating , Enabled , Disabled , Enabling , Disabling , Updating , or Deleting .

    • StateTransitionReason (string) --

      The reason the event source mapping is in its current state. It is either user-requested or an AWS Lambda-initiated state transition.

create_function(**kwargs)

Creates a new Lambda function. The function configuration is created from the request parameters, and the code for the function is provided by a .zip file. The function name is case-sensitive.

This operation requires permission for the lambda:CreateFunction action.

See also: AWS API Documentation

Request Syntax

response = client.create_function(
    FunctionName='string',
    Runtime='nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
    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'
    }
)
Parameters
  • FunctionName (string) --

    [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.

  • Runtime (string) --

    [REQUIRED]

    The runtime version for the function.

  • Role (string) --

    [REQUIRED]

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

  • Handler (string) --

    [REQUIRED]

    The name of the method within your code that Lambda calls to execute your function. For more information, see Programming Model .

  • Code (dict) --

    [REQUIRED]

    The code for the function.

    • ZipFile (bytes) --

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

    • S3Bucket (string) --

      An Amazon S3 bucket in the same region as your function.

    • S3Key (string) --

      The Amazon S3 key of the deployment package.

    • S3ObjectVersion (string) --

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

  • Description (string) -- A description of the function.
  • Timeout (integer) -- The amount of time that Lambda allows a function to run before terminating it. The default is 3 seconds. The maximum allowed value is 900 seconds.
  • MemorySize (integer) -- The amount of memory that your function has access to. Increasing the function's memory also increases it's CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB.
  • Publish (boolean) -- Set to true to publish the first version of the function during creation.
  • VpcConfig (dict) --

    If your Lambda function accesses resources in a VPC, you provide this parameter identifying the list of security group IDs and subnet IDs. These must belong to the same VPC. You must provide at least one security group and one subnet ID.

    • SubnetIds (list) --

      A list of VPC subnet IDs.

      • (string) --
    • SecurityGroupIds (list) --

      A list of VPC security groups IDs.

      • (string) --
  • DeadLetterConfig (dict) --

    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.

  • Environment (dict) --

    Environment variables that are accessible from function code during execution.

    • Variables (dict) --

      Environment variable key-value pairs.

      • (string) --
        • (string) --
  • KMSKeyArn (string) -- The ARN of the KMS key used to encrypt your function's environment variables. If not provided, AWS Lambda will use a default service key.
  • TracingConfig (dict) --

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

    • Mode (string) --

      The tracing mode.

  • Tags (dict) --

    The list of tags (key-value pairs) assigned to the new function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

    • (string) --
      • (string) --
Return type

dict

Returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
    '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'
}

Response Structure

  • (dict) --

    A Lambda function's configuration settings.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name.

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function 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 terminating it.

    • MemorySize (integer) --

      The memory allocated to the function

    • LastModified (string) --

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

    • 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 could not be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key used to encrypt the function's environment variables. 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) --

      The ARN of the master function.

    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This example creates a Lambda function.

response = client.create_function(
    Code={
    },
    Description='',
    FunctionName='MyFunction',
    # is of the form of the name of your source file and then name of your function handler
    Handler='souce_file.handler_name',
    MemorySize=128,
    Publish=True,
    # replace with the actual arn of the execution role you created
    Role='arn:aws:iam::123456789012:role/service-role/role-name',
    Runtime='nodejs4.3',
    Timeout=15,
    VpcConfig={
    },
)

print(response)

Expected Output:

{
    'CodeSha256': '',
    'CodeSize': 123,
    'Description': '',
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:MyFunction',
    'FunctionName': 'MyFunction',
    'Handler': 'source_file.handler_name',
    'LastModified': '2016-11-21T19:49:20.006+0000',
    'MemorySize': 128,
    'Role': 'arn:aws:iam::123456789012:role/service-role/role-name',
    'Runtime': 'nodejs4.3',
    'Timeout': 123,
    'Version': '1',
    'VpcConfig': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}
delete_alias(**kwargs)

Deletes the specified Lambda function alias. For more information, see Introduction to AWS Lambda Aliases .

This requires permission for the lambda:DeleteAlias action.

See also: AWS API Documentation

Request Syntax

response = client.delete_alias(
    FunctionName='string',
    Name='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Name (string) --

    [REQUIRED]

    Name of the alias to delete.

Returns

None

Examples

This operation deletes a Lambda function alias

response = client.delete_alias(
    FunctionName='myFunction',
    Name='alias',
)

print(response)

Expected Output:

{
    'ResponseMetadata': {
        '...': '...',
    },
}
delete_event_source_mapping(**kwargs)

Removes an event source mapping. This means AWS Lambda will no longer invoke the function for events in the associated source.

This operation requires permission for the lambda:DeleteEventSourceMapping action.

See also: AWS API Documentation

Request Syntax

response = client.delete_event_source_mapping(
    UUID='string'
)
Parameters
UUID (string) --

[REQUIRED]

The event source mapping ID.

Return type
dict
Returns
Response Syntax
{
    'UUID': 'string',
    'BatchSize': 123,
    'EventSourceArn': 'string',
    'FunctionArn': 'string',
    'LastModified': datetime(2015, 1, 1),
    'LastProcessingResult': 'string',
    'State': 'string',
    'StateTransitionReason': 'string'
}

Response Structure

  • (dict) --

    Describes mapping between an Amazon Kinesis or DynamoDB stream and a Lambda function.

    • UUID (string) --

      The AWS Lambda assigned opaque identifier for the mapping.

    • BatchSize (integer) --

      The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.

    • EventSourceArn (string) --

      The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream that is the source of events.

    • FunctionArn (string) --

      The Lambda function to invoke when AWS Lambda detects an event on the poll-based source.

    • LastModified (datetime) --

      The UTC time string indicating the last time the event mapping was updated.

    • LastProcessingResult (string) --

      The result of the last AWS Lambda invocation of your Lambda function. This value will be null if an SQS queue is the event source.

    • State (string) --

      The state of the event source mapping. It can be Creating , Enabled , Disabled , Enabling , Disabling , Updating , or Deleting .

    • StateTransitionReason (string) --

      The reason the event source mapping is in its current state. It is either user-requested or an AWS Lambda-initiated state transition.

Examples

This operation deletes a Lambda function event source mapping

response = client.delete_event_source_mapping(
    UUID='12345kxodurf3443',
)

print(response)

Expected Output:

{
    'BatchSize': 123,
    'EventSourceArn': 'arn:aws:s3:::examplebucket/*',
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction',
    'LastModified': datetime(2016, 11, 21, 19, 49, 20, 0, 326, 0),
    'LastProcessingResult': '',
    'State': '',
    'StateTransitionReason': '',
    'UUID': '12345kxodurf3443',
    'ResponseMetadata': {
        '...': '...',
    },
}
delete_function(**kwargs)

Deletes a Lambda function. To delete a specific function version, use the Qualifier parameter. Otherwise, all versions and aliases are deleted. Event source mappings are not deleted.

This operation requires permission for the lambda:DeleteFunction action.

See also: AWS API Documentation

Request Syntax

response = client.delete_function(
    FunctionName='string',
    Qualifier='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Qualifier (string) -- Specify a version to delete. You cannot delete a version that is referenced by an alias.
Returns

None

Examples

This operation deletes a Lambda function

response = client.delete_function(
    FunctionName='myFunction',
    Qualifier='1',
)

print(response)

Expected Output:

{
    'ResponseMetadata': {
        '...': '...',
    },
}
delete_function_concurrency(**kwargs)

Removes concurrent execution limits from this function. For more information, see Managing Concurrency .

See also: AWS API Documentation

Request Syntax

response = client.delete_function_concurrency(
    FunctionName='string'
)
Parameters
FunctionName (string) --

[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.

Returns
None
generate_presigned_url(ClientMethod, Params=None, ExpiresIn=3600, HttpMethod=None)

Generate a presigned url given a client, its method, and arguments

Parameters
  • ClientMethod (string) -- The client method to presign for
  • Params (dict) -- The parameters normally passed to ClientMethod.
  • ExpiresIn (int) -- The number of seconds the presigned url is valid for. By default it expires in an hour (3600 seconds)
  • HttpMethod (string) -- The http method to use on the generated url. By default, the http method is whatever is used in the method's model.
Returns

The presigned url

get_account_settings()

Retrieves details about your account's limits and usage in a region.

See also: AWS API Documentation

Request Syntax

response = client.get_account_settings()
Return type
dict
Returns
Response Syntax
{
    'AccountLimit': {
        'TotalCodeSize': 123,
        'CodeSizeUnzipped': 123,
        'CodeSizeZipped': 123,
        'ConcurrentExecutions': 123,
        'UnreservedConcurrentExecutions': 123
    },
    'AccountUsage': {
        'TotalCodeSize': 123,
        'FunctionCount': 123
    }
}

Response Structure

  • (dict) --
    • AccountLimit (dict) --

      Limits related to concurrency and code storage.

      • TotalCodeSize (integer) --

        Maximum size, in bytes, of a code package you can upload per region. The default size is 75 GB.

      • CodeSizeUnzipped (integer) --

        Size, in bytes, of code/dependencies that you can zip into a deployment package (uncompressed zip/jar size) for uploading. The default limit is 250 MB.

      • CodeSizeZipped (integer) --

        Size, in bytes, of a single zipped code/dependencies package you can upload for your Lambda function(.zip/.jar file). Try using Amazon S3 for uploading larger files. Default limit is 50 MB.

      • ConcurrentExecutions (integer) --

        Number of simultaneous executions of your function per region. The default limit is 1000.

      • UnreservedConcurrentExecutions (integer) --

        The number of concurrent executions available to functions that do not have concurrency limits set. For more information, see Managing Concurrency .

    • AccountUsage (dict) --

      The number of functions and amount of storage in use.

      • TotalCodeSize (integer) --

        Total size, in bytes, of the account's deployment packages per region.

      • FunctionCount (integer) --

        The number of your account's existing functions per region.

Examples

This operation retrieves a Lambda customer's account settings

response = client.get_account_settings(
)

print(response)

Expected Output:

{
    'AccountLimit': {
    },
    'AccountUsage': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}
get_alias(**kwargs)

Returns the specified alias information such as the alias ARN, description, and function version it is pointing to. For more information, see Introduction to AWS Lambda Aliases .

This requires permission for the lambda:GetAlias action.

See also: AWS API Documentation

Request Syntax

response = client.get_alias(
    FunctionName='string',
    Name='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Name (string) --

    [REQUIRED]

    Name of the alias for which you want to retrieve information.

Return type

dict

Returns

Response Syntax

{
    'AliasArn': 'string',
    'Name': 'string',
    'FunctionVersion': 'string',
    'Description': 'string',
    'RoutingConfig': {
        'AdditionalVersionWeights': {
            'string': 123.0
        }
    },
    'RevisionId': 'string'
}

Response Structure

  • (dict) --

    Provides configuration information about a Lambda function version alias.

    • AliasArn (string) --

      Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias called BETA that points to a helloworld function version, the ARN is arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA .

    • Name (string) --

      Alias name.

    • FunctionVersion (string) --

      Function version to which the alias points.

    • Description (string) --

      Alias description.

    • RoutingConfig (dict) --

      Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic will invoke each version.

      • AdditionalVersionWeights (dict) --

        The name of the second alias, and the percentage of traffic that is routed to it.

        • (string) --
          • (float) --
    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This operation retrieves a Lambda function alias

response = client.get_alias(
    FunctionName='myFunction',
    Name='myFunctionAlias',
)

print(response)

Expected Output:

{
    'AliasArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunctionAlias',
    'Description': '',
    'FunctionVersion': '1',
    'Name': 'myFunctionAlias',
    'ResponseMetadata': {
        '...': '...',
    },
}
get_event_source_mapping(**kwargs)

Returns configuration information for the specified event source mapping (see CreateEventSourceMapping ).

This operation requires permission for the lambda:GetEventSourceMapping action.

See also: AWS API Documentation

Request Syntax

response = client.get_event_source_mapping(
    UUID='string'
)
Parameters
UUID (string) --

[REQUIRED]

The AWS Lambda assigned ID of the event source mapping.

Return type
dict
Returns
Response Syntax
{
    'UUID': 'string',
    'BatchSize': 123,
    'EventSourceArn': 'string',
    'FunctionArn': 'string',
    'LastModified': datetime(2015, 1, 1),
    'LastProcessingResult': 'string',
    'State': 'string',
    'StateTransitionReason': 'string'
}

Response Structure

  • (dict) --

    Describes mapping between an Amazon Kinesis or DynamoDB stream and a Lambda function.

    • UUID (string) --

      The AWS Lambda assigned opaque identifier for the mapping.

    • BatchSize (integer) --

      The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.

    • EventSourceArn (string) --

      The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream that is the source of events.

    • FunctionArn (string) --

      The Lambda function to invoke when AWS Lambda detects an event on the poll-based source.

    • LastModified (datetime) --

      The UTC time string indicating the last time the event mapping was updated.

    • LastProcessingResult (string) --

      The result of the last AWS Lambda invocation of your Lambda function. This value will be null if an SQS queue is the event source.

    • State (string) --

      The state of the event source mapping. It can be Creating , Enabled , Disabled , Enabling , Disabling , Updating , or Deleting .

    • StateTransitionReason (string) --

      The reason the event source mapping is in its current state. It is either user-requested or an AWS Lambda-initiated state transition.

Examples

This operation retrieves a Lambda function's event source mapping

response = client.get_event_source_mapping(
    UUID='123489-xxxxx-kdla8d89d7',
)

print(response)

Expected Output:

{
    'BatchSize': 123,
    'EventSourceArn': 'arn:aws:iam::123456789012:eventsource',
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction',
    'LastModified': datetime(2016, 11, 21, 19, 49, 20, 0, 326, 0),
    'LastProcessingResult': '',
    'State': '',
    'StateTransitionReason': '',
    'UUID': '123489-xxxxx-kdla8d89d7',
    'ResponseMetadata': {
        '...': '...',
    },
}
get_function(**kwargs)

Returns the configuration information of the Lambda function and a presigned URL link to the .zip file you uploaded with CreateFunction so you can download the .zip file. Note that the URL is valid for up to 10 minutes. The configuration information is the same information you provided as parameters when uploading the function.

Use the Qualifier parameter to retrieve a published version of the function. Otherwise, returns the unpublished version ($LATEST ). For more information, see AWS Lambda Function Versioning and Aliases .

This operation requires permission for the lambda:GetFunction action.

See also: AWS API Documentation

Request Syntax

response = client.get_function(
    FunctionName='string',
    Qualifier='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Qualifier (string) -- Specify a version or alias to get details about a published version of the function.
Return type

dict

Returns

Response Syntax

{
    'Configuration': {
        'FunctionName': 'string',
        'FunctionArn': 'string',
        'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
        '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'
    },
    'Code': {
        'RepositoryType': 'string',
        'Location': 'string'
    },
    'Tags': {
        'string': 'string'
    },
    'Concurrency': {
        'ReservedConcurrentExecutions': 123
    }
}

Response Structure

  • (dict) --

    This response contains the object for the Lambda function location (see FunctionCodeLocation .

    • Configuration (dict) --

      The function's configuration.

      • FunctionName (string) --

        The name of the function.

      • FunctionArn (string) --

        The function's Amazon Resource Name.

      • Runtime (string) --

        The runtime environment for the Lambda function.

      • Role (string) --

        The function's execution role.

      • Handler (string) --

        The function 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 terminating it.

      • MemorySize (integer) --

        The memory allocated to the function

      • LastModified (string) --

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

      • 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 could not be applied.

          • ErrorCode (string) --

            The error code.

          • Message (string) --

            The error message.

      • KMSKeyArn (string) --

        The KMS key used to encrypt the function's environment variables. 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) --

        The ARN of the master function.

      • RevisionId (string) --

        Represents the latest updated revision of the function or alias.

    • Code (dict) --

      The function's code.

      • RepositoryType (string) --

        The repository from which you can download the function.

      • Location (string) --

        The presigned URL you can use to download the function's .zip file that you previously uploaded. The URL is valid for up to 10 minutes.

    • Tags (dict) --

      Returns the list of tags associated with the function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

      • (string) --
        • (string) --
    • Concurrency (dict) --

      The concurrent execution limit set for this function. For more information, see Managing Concurrency .

      • ReservedConcurrentExecutions (integer) --

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

Examples

This operation retrieves a Lambda function's event source mapping

response = client.get_function(
    FunctionName='myFunction',
    Qualifier='1',
)

print(response)

Expected Output:

{
    'Code': {
        'Location': 'somelocation',
        'RepositoryType': 'S3',
    },
    'Configuration': {
        'CodeSha256': 'LQT+0DHxxxxcfwLyQjzoEFKZtdqQjHXanlSdfXBlEW0VA=',
        'CodeSize': 262,
        'Description': 'A starter AWS Lambda function.',
        'Environment': {
            'Variables': {
                'S3_BUCKET': 'test',
            },
        },
        'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction',
        'FunctionName': 'myFunction',
        'Handler': 'index.handler',
        'LastModified': '2016-11-21T19:49:20.006+0000',
        'MemorySize': 128,
        'Role': 'arn:aws:iam::123456789012:role/lambda_basic_execution',
        'Runtime': 'nodejs4.3',
        'Timeout': 3,
        'Version': '$LATEST',
        'VpcConfig': {
            'SecurityGroupIds': [
            ],
            'SubnetIds': [
            ],
        },
    },
    'ResponseMetadata': {
        '...': '...',
    },
}
get_function_configuration(**kwargs)

Returns the configuration information of the Lambda function. This the same information you provided as parameters when uploading the function by using CreateFunction .

If you are using the versioning feature, you can retrieve this information for a specific function version by using the optional Qualifier parameter and specifying the function version or alias that points to it. If you don't provide it, the API returns information about the $LATEST version of the function. For more information about versioning, see AWS Lambda Function Versioning and Aliases .

This operation requires permission for the lambda:GetFunctionConfiguration operation.

See also: AWS API Documentation

Request Syntax

response = client.get_function_configuration(
    FunctionName='string',
    Qualifier='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Qualifier (string) -- Specify a version or alias to get details about a published version of the function.
Return type

dict

Returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
    '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'
}

Response Structure

  • (dict) --

    A Lambda function's configuration settings.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name.

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function 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 terminating it.

    • MemorySize (integer) --

      The memory allocated to the function

    • LastModified (string) --

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

    • 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 could not be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key used to encrypt the function's environment variables. 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) --

      The ARN of the master function.

    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This operation retrieves a Lambda function's event source mapping

response = client.get_function_configuration(
    FunctionName='myFunction',
    Qualifier='1',
)

print(response)

Expected Output:

{
    'CodeSha256': 'LQT+0DHxxxxcfwLyQjzoEFKZtdqQjHXanlSdfXBlEW0VA=',
    'CodeSize': 123,
    'DeadLetterConfig': {
    },
    'Description': '',
    'Environment': {
    },
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction',
    'FunctionName': 'myFunction',
    'Handler': 'index.handler',
    'KMSKeyArn': '',
    'LastModified': '2016-11-21T19:49:20.006+0000',
    'MemorySize': 128,
    'Role': 'arn:aws:iam::123456789012:role/lambda_basic_execution',
    'Runtime': 'python2.7',
    'Timeout': 123,
    'Version': '1',
    'VpcConfig': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}
get_paginator(operation_name)

Create a paginator for an operation.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Raises OperationNotPageableError
Raised if the operation is not pageable. You can use the client.can_paginate method to check if an operation is pageable.
Return type
L{botocore.paginate.Paginator}
Returns
A paginator object.
get_policy(**kwargs)

Returns the resource policy associated with the specified Lambda function.

This action requires permission for the lambda:GetPolicy action.

See also: AWS API Documentation

Request Syntax

response = client.get_policy(
    FunctionName='string',
    Qualifier='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Qualifier (string) -- You can specify this optional query parameter to specify a function version or an alias name in which case this API will return all permissions associated with the specific qualified ARN. If you don't provide this parameter, the API will return permissions that apply to the unqualified function ARN.
Return type

dict

Returns

Response Syntax

{
    'Policy': 'string',
    'RevisionId': 'string'
}

Response Structure

  • (dict) --

    • Policy (string) --

      The resource policy associated with the specified function. The response returns the same as a string using a backslash ("") as an escape character in the JSON.

    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This operation retrieves a Lambda function policy

response = client.get_policy(
    FunctionName='myFunction',
    Qualifier='1',
)

print(response)

Expected Output:

{
    'Policy': '',
    'ResponseMetadata': {
        '...': '...',
    },
}
get_waiter(waiter_name)

Returns an object that can wait for some condition.

Parameters
waiter_name (str) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters.
Returns
The specified waiter object.
Return type
botocore.waiter.Waiter
invoke(**kwargs)

Invokes a Lambda function. For an example, see Create the Lambda Function and Test It Manually .

Specify just a function name to invoke the latest version of the function. To invoke a published version, use the Qualifier parameter to specify a version or alias .

If you use the RequestResponse (synchronous) invocation option, the function will be invoked only once. If you use the Event (asynchronous) invocation option, the function will be invoked at least once in response to an event and the function must be idempotent to handle this.

For functions with a long timeout, your client may be disconnected during synchronous invocation while it waits for a response. Configure your HTTP client, SDK, firewall, proxy, or operating system to allow for long connections with timeout or keep-alive settings.

This operation requires permission for the lambda:InvokeFunction action.

The TooManyRequestsException noted below will return the following: ConcurrentInvocationLimitExceeded will be returned if you have no functions with reserved concurrency and have exceeded your account concurrent limit or if a function without reserved concurrency exceeds the account's unreserved concurrency limit. ReservedFunctionConcurrentInvocationLimitExceeded will be returned when a function with reserved concurrency exceeds its configured concurrency limit.

See also: AWS API Documentation

Request Syntax

response = client.invoke(
    FunctionName='string',
    InvocationType='Event'|'RequestResponse'|'DryRun',
    LogType='None'|'Tail',
    ClientContext='string',
    Payload=b'bytes'|file,
    Qualifier='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • InvocationType (string) --

    Choose from the following options.

    • RequestResponse (default) - Invoke the function synchronously. Keep the connection open until the function returns a response or times out.
    • Event - Invoke the function asynchronously. Send events that fail multiple times to the function's dead-letter queue (if configured).
    • DryRun - Validate parameter values and verify that the user or role has permission to invoke the function.
  • LogType (string) -- You can set this optional parameter to Tail in the request only if you specify the InvocationType parameter with value RequestResponse . In this case, AWS Lambda returns the base64-encoded last 4 KB of log data produced by your Lambda function in the x-amz-log-result header.
  • ClientContext (string) --

    Using the ClientContext you can pass client-specific information to the Lambda function you are invoking. You can then process the client information in your Lambda function as you choose through the context variable. For an example of a ClientContext JSON, see PutEvents in the Amazon Mobile Analytics API Reference and User Guide .

    The ClientContext JSON must be base64-encoded and has a maximum size of 3583 bytes.

    Note

    ClientContext information is returned only if you use the synchronous (RequestResponse ) invocation type.

  • Payload (bytes or seekable file-like object) -- JSON that you want to provide to your Lambda function as input.
  • Qualifier (string) -- Specify a version or alias to invoke a published version of the function.
Return type

dict

Returns

Response Syntax

{
    'StatusCode': 123,
    'FunctionError': 'string',
    'LogResult': 'string',
    'Payload': StreamingBody(),
    'ExecutedVersion': 'string'
}

Response Structure

  • (dict) --

    Upon success, returns an empty response. Otherwise, throws an exception.

    • StatusCode (integer) --

      The HTTP status code will be in the 200 range for successful request. For the RequestResponse invocation type this status code will be 200. For the Event invocation type this status code will be 202. For the DryRun invocation type the status code will be 204.

    • FunctionError (string) --

      Indicates whether an error occurred while executing the Lambda function. If an error occurred this field will have one of two values; Handled or Unhandled . Handled errors are errors that are reported by the function while the Unhandled errors are those detected and reported by AWS Lambda. Unhandled errors include out of memory errors and function timeouts. For information about how to report an Handled error, see Programming Model .

    • LogResult (string) --

      It is the base64-encoded logs for the Lambda function invocation. This is present only if the invocation type is RequestResponse and the logs were requested.

    • Payload (StreamingBody) --

      It is the JSON representation of the object returned by the Lambda function. This is present only if the invocation type is RequestResponse .

      In the event of a function error this field contains a message describing the error. For the Handled errors the Lambda function will report this message. For Unhandled errors AWS Lambda reports the message.

    • ExecutedVersion (string) --

      The function version that has been executed. This value is returned only if the invocation type is RequestResponse . For more information, see Traffic Shifting Using Aliases .

Examples

This operation invokes a Lambda function

response = client.invoke(
    ClientContext='MyApp',
    FunctionName='MyFunction',
    InvocationType='Event',
    LogType='Tail',
    Payload='fileb://file-path/input.json',
    Qualifier='1',
)

print(response)

Expected Output:

{
    'FunctionError': '',
    'LogResult': '',
    'Payload': '?',
    'StatusCode': 123,
    'ResponseMetadata': {
        '...': '...',
    },
}
invoke_async(**kwargs)

Warning

For asynchronous function invocation, use Invoke .

Submits an invocation request to AWS Lambda. Upon receiving the request, Lambda executes the specified function asynchronously. To see the logs generated by the Lambda function execution, see the CloudWatch Logs console.

This operation requires permission for the lambda:InvokeFunction action.

Danger

This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.

See also: AWS API Documentation

Request Syntax

response = client.invoke_async(
    FunctionName='string',
    InvokeArgs=b'bytes'|file
)
Parameters
  • FunctionName (string) --

    [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.

  • InvokeArgs (bytes or seekable file-like object) --

    [REQUIRED]

    JSON that you want to provide to your Lambda function as input.

Return type

dict

Returns

Response Syntax

{
    'Status': 123
}

Response Structure

  • (dict) --

    Upon success, it returns empty response. Otherwise, throws an exception.

    • Status (integer) --

      It will be 202 upon success.

Examples

This operation invokes a Lambda function asynchronously

response = client.invoke_async(
    FunctionName='myFunction',
    InvokeArgs='fileb://file-path/input.json',
)

print(response)

Expected Output:

{
    'Status': 123,
    'ResponseMetadata': {
        '...': '...',
    },
}
list_aliases(**kwargs)

Returns list of aliases created for a Lambda function. For each alias, the response includes information such as the alias ARN, description, alias name, and the function version to which it points. For more information, see Introduction to AWS Lambda Aliases .

This requires permission for the lambda:ListAliases action.

See also: AWS API Documentation

Request Syntax

response = client.list_aliases(
    FunctionName='string',
    FunctionVersion='string',
    Marker='string',
    MaxItems=123
)
Parameters
  • FunctionName (string) --

    [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.

  • FunctionVersion (string) -- If you specify this optional parameter, the API returns only the aliases that are pointing to the specific Lambda function version, otherwise the API returns all of the aliases created for the Lambda function.
  • Marker (string) -- Optional string. An opaque pagination token returned from a previous ListAliases operation. If present, indicates where to continue the listing.
  • MaxItems (integer) -- Optional integer. Specifies the maximum number of aliases to return in response. This parameter value must be greater than 0.
Return type

dict

Returns

Response Syntax

{
    'NextMarker': 'string',
    'Aliases': [
        {
            'AliasArn': 'string',
            'Name': 'string',
            'FunctionVersion': 'string',
            'Description': 'string',
            'RoutingConfig': {
                'AdditionalVersionWeights': {
                    'string': 123.0
                }
            },
            'RevisionId': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextMarker (string) --

      A string, present if there are more aliases.

    • Aliases (list) --

      A list of aliases.

      • (dict) --

        Provides configuration information about a Lambda function version alias.

        • AliasArn (string) --

          Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias called BETA that points to a helloworld function version, the ARN is arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA .

        • Name (string) --

          Alias name.

        • FunctionVersion (string) --

          Function version to which the alias points.

        • Description (string) --

          Alias description.

        • RoutingConfig (dict) --

          Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic will invoke each version.

          • AdditionalVersionWeights (dict) --

            The name of the second alias, and the percentage of traffic that is routed to it.

            • (string) --
              • (float) --
        • RevisionId (string) --

          Represents the latest updated revision of the function or alias.

Examples

This operation retrieves a Lambda function's aliases

response = client.list_aliases(
    FunctionName='myFunction',
    FunctionVersion='1',
    Marker='',
    MaxItems=123,
)

print(response)

Expected Output:

{
    'Aliases': [
    ],
    'NextMarker': '',
    'ResponseMetadata': {
        '...': '...',
    },
}
list_event_source_mappings(**kwargs)

Returns a list of event source mappings you created using the CreateEventSourceMapping (see CreateEventSourceMapping ).

For each mapping, the API returns configuration information. You can optionally specify filters to retrieve specific event source mappings.

This operation requires permission for the lambda:ListEventSourceMappings action.

See also: AWS API Documentation

Request Syntax

response = client.list_event_source_mappings(
    EventSourceArn='string',
    FunctionName='string',
    Marker='string',
    MaxItems=123
)
Parameters
  • EventSourceArn (string) -- The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream. (This parameter is optional.)
  • FunctionName (string) --

    The name of the lambda function.

    Name formats
    • Function name - MyFunction .
    • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction .
    • Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD .
    • 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.

  • Marker (string) -- Optional string. An opaque pagination token returned from a previous ListEventSourceMappings operation. If present, specifies to continue the list from where the returning call left off.
  • MaxItems (integer) -- Optional integer. Specifies the maximum number of event sources to return in response. This value must be greater than 0.
Return type

dict

Returns

Response Syntax

{
    'NextMarker': 'string',
    'EventSourceMappings': [
        {
            'UUID': 'string',
            'BatchSize': 123,
            'EventSourceArn': 'string',
            'FunctionArn': 'string',
            'LastModified': datetime(2015, 1, 1),
            'LastProcessingResult': 'string',
            'State': 'string',
            'StateTransitionReason': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    Contains a list of event sources (see EventSourceMappingConfiguration )

    • NextMarker (string) --

      A string, present if there are more event source mappings.

    • EventSourceMappings (list) --

      An array of EventSourceMappingConfiguration objects.

      • (dict) --

        Describes mapping between an Amazon Kinesis or DynamoDB stream and a Lambda function.

        • UUID (string) --

          The AWS Lambda assigned opaque identifier for the mapping.

        • BatchSize (integer) --

          The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.

        • EventSourceArn (string) --

          The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream that is the source of events.

        • FunctionArn (string) --

          The Lambda function to invoke when AWS Lambda detects an event on the poll-based source.

        • LastModified (datetime) --

          The UTC time string indicating the last time the event mapping was updated.

        • LastProcessingResult (string) --

          The result of the last AWS Lambda invocation of your Lambda function. This value will be null if an SQS queue is the event source.

        • State (string) --

          The state of the event source mapping. It can be Creating , Enabled , Disabled , Enabling , Disabling , Updating , or Deleting .

        • StateTransitionReason (string) --

          The reason the event source mapping is in its current state. It is either user-requested or an AWS Lambda-initiated state transition.

list_functions(**kwargs)

Returns a list of your Lambda functions. For each function, the response includes the function configuration information. You must use GetFunction to retrieve the code for your function.

This operation requires permission for the lambda:ListFunctions action.

If you are using the versioning feature, you can list all of your functions or only $LATEST versions. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases .

See also: AWS API Documentation

Request Syntax

response = client.list_functions(
    MasterRegion='string',
    FunctionVersion='ALL',
    Marker='string',
    MaxItems=123
)
Parameters
  • MasterRegion (string) -- Specify a region (e.g. us-east-2 ) to only list functions that were created in that region, or ALL to include functions replicated from any region. If specified, you also must specify the FunctionVersion .
  • FunctionVersion (string) -- Set to ALL to list all published versions. If not specified, only the latest unpublished version ARN is returned.
  • Marker (string) -- Optional string. An opaque pagination token returned from a previous ListFunctions operation. If present, indicates where to continue the listing.
  • MaxItems (integer) -- Optional integer. Specifies the maximum number of AWS Lambda functions to return in response. This parameter value must be greater than 0. The absolute maximum of AWS Lambda functions that can be returned is 50.
Return type

dict

Returns

Response Syntax

{
    'NextMarker': 'string',
    'Functions': [
        {
            'FunctionName': 'string',
            'FunctionArn': 'string',
            'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
            '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'
        },
    ]
}

Response Structure

  • (dict) --

    A list of Lambda functions.

    • NextMarker (string) --

      A string, present if there are more functions.

    • Functions (list) --

      A list of Lambda functions.

      • (dict) --

        A Lambda function's configuration settings.

        • FunctionName (string) --

          The name of the function.

        • FunctionArn (string) --

          The function's Amazon Resource Name.

        • Runtime (string) --

          The runtime environment for the Lambda function.

        • Role (string) --

          The function's execution role.

        • Handler (string) --

          The function 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 terminating it.

        • MemorySize (integer) --

          The memory allocated to the function

        • LastModified (string) --

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

        • 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 could not be applied.

            • ErrorCode (string) --

              The error code.

            • Message (string) --

              The error message.

        • KMSKeyArn (string) --

          The KMS key used to encrypt the function's environment variables. 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) --

          The ARN of the master function.

        • RevisionId (string) --

          Represents the latest updated revision of the function or alias.

Examples

This operation retrieves a Lambda functions

response = client.list_functions(
    Marker='',
    MaxItems=123,
)

print(response)

Expected Output:

{
    'Functions': [
    ],
    'NextMarker': '',
    'ResponseMetadata': {
        '...': '...',
    },
}
list_tags(**kwargs)

Returns a list of tags assigned to a function when supplied the function ARN (Amazon Resource Name). For more information on Tagging, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

See also: AWS API Documentation

Request Syntax

response = client.list_tags(
    Resource='string'
)
Parameters
Resource (string) --

[REQUIRED]

The ARN (Amazon Resource Name) of the function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

Return type
dict
Returns
Response Syntax
{
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --
    • Tags (dict) --

      The list of tags assigned to the function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

      • (string) --
        • (string) --
list_versions_by_function(**kwargs)

Lists all versions of a function. For information about versioning, see AWS Lambda Function Versioning and Aliases .

See also: AWS API Documentation

Request Syntax

response = client.list_versions_by_function(
    FunctionName='string',
    Marker='string',
    MaxItems=123
)
Parameters
  • FunctionName (string) --

    [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.

  • Marker (string) -- Optional string. An opaque pagination token returned from a previous ListVersionsByFunction operation. If present, indicates where to continue the listing.
  • MaxItems (integer) -- Optional integer. Specifies the maximum number of AWS Lambda function versions to return in response. This parameter value must be greater than 0.
Return type

dict

Returns

Response Syntax

{
    'NextMarker': 'string',
    'Versions': [
        {
            'FunctionName': 'string',
            'FunctionArn': 'string',
            'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
            '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'
        },
    ]
}

Response Structure

  • (dict) --

    • NextMarker (string) --

      A string, present if there are more function versions.

    • Versions (list) --

      A list of Lambda function versions.

      • (dict) --

        A Lambda function's configuration settings.

        • FunctionName (string) --

          The name of the function.

        • FunctionArn (string) --

          The function's Amazon Resource Name.

        • Runtime (string) --

          The runtime environment for the Lambda function.

        • Role (string) --

          The function's execution role.

        • Handler (string) --

          The function 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 terminating it.

        • MemorySize (integer) --

          The memory allocated to the function

        • LastModified (string) --

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

        • 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 could not be applied.

            • ErrorCode (string) --

              The error code.

            • Message (string) --

              The error message.

        • KMSKeyArn (string) --

          The KMS key used to encrypt the function's environment variables. 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) --

          The ARN of the master function.

        • RevisionId (string) --

          Represents the latest updated revision of the function or alias.

Examples

This operation retrieves a Lambda function versions

response = client.list_versions_by_function(
    FunctionName='myFunction',
    Marker='',
    MaxItems=123,
)

print(response)

Expected Output:

{
    'NextMarker': '',
    'Versions': [
    ],
    'ResponseMetadata': {
        '...': '...',
    },
}
publish_version(**kwargs)

Publishes a version of your function from the current snapshot of $LATEST. That is, AWS Lambda takes a snapshot of the function code and configuration information from $LATEST and publishes a new version. The code and configuration cannot be modified after publication. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases .

See also: AWS API Documentation

Request Syntax

response = client.publish_version(
    FunctionName='string',
    CodeSha256='string',
    Description='string',
    RevisionId='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • CodeSha256 (string) -- The SHA256 hash of the deployment package you want to publish. This provides validation on the code you are publishing. If you provide this parameter, the value must match the SHA256 of the $LATEST version for the publication to succeed. You can use the DryRun parameter of UpdateFunctionCode to verify the hash value that will be returned before publishing your new version.
  • Description (string) -- The description for the version you are publishing. If not provided, AWS Lambda copies the description from the $LATEST version.
  • RevisionId (string) -- An optional value you can use to ensure you are updating the latest update of the function version or alias. If the RevisionID you pass doesn't match the latest RevisionId of the function or alias, it will fail with an error message, advising you retrieve the latest function version or alias RevisionID using either GetFunction or GetAlias .
Return type

dict

Returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
    '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'
}

Response Structure

  • (dict) --

    A Lambda function's configuration settings.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name.

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function 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 terminating it.

    • MemorySize (integer) --

      The memory allocated to the function

    • LastModified (string) --

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

    • 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 could not be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key used to encrypt the function's environment variables. 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) --

      The ARN of the master function.

    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This operation publishes a version of a Lambda function

response = client.publish_version(
    CodeSha256='',
    Description='',
    FunctionName='myFunction',
)

print(response)

Expected Output:

{
    'CodeSha256': '',
    'CodeSize': 123,
    'Description': '',
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction:1',
    'FunctionName': 'myFunction',
    'Handler': 'index.handler',
    'LastModified': '2016-11-21T19:49:20.006+0000',
    'MemorySize': 128,
    'Role': 'arn:aws:iam::123456789012:role/lambda_basic_execution',
    'Runtime': 'python2.7',
    'Timeout': 123,
    'Version': '1',
    'VpcConfig': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}
put_function_concurrency(**kwargs)

Sets a limit on the number of concurrent executions available to this function. It is a subset of your account's total concurrent execution limit per region. Note that Lambda automatically reserves a buffer of 100 concurrent executions for functions without any reserved concurrency limit. This means if your account limit is 1000, you have a total of 900 available to allocate to individual functions. For more information, see Managing Concurrency .

See also: AWS API Documentation

Request Syntax

response = client.put_function_concurrency(
    FunctionName='string',
    ReservedConcurrentExecutions=123
)
Parameters
  • FunctionName (string) --

    [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.

  • ReservedConcurrentExecutions (integer) --

    [REQUIRED]

    The concurrent execution limit reserved for this function.

Return type

dict

Returns

Response Syntax

{
    'ReservedConcurrentExecutions': 123
}

Response Structure

  • (dict) --

    • ReservedConcurrentExecutions (integer) --

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

remove_permission(**kwargs)

Removes permissions from a function. You can remove individual permissions from an resource policy associated with a Lambda function by providing a statement ID that you provided when you added the permission. When you remove permissions, disable the event source mapping or trigger configuration first to avoid errors.

Permissions apply to the Amazon Resource Name (ARN) used to invoke the function, which can be unqualified (the unpublished version of the function), or include a version or alias. If a client uses a version or alias to invoke a function, use the Qualifier parameter to apply permissions to that ARN. For more information about versioning, see AWS Lambda Function Versioning and Aliases .

You need permission for the lambda:RemovePermission action.

See also: AWS API Documentation

Request Syntax

response = client.remove_permission(
    FunctionName='string',
    StatementId='string',
    Qualifier='string',
    RevisionId='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • StatementId (string) --

    [REQUIRED]

    Statement ID of the permission to remove.

  • Qualifier (string) -- Specify a version or alias to remove permissions from a published version of the function.
  • RevisionId (string) -- An optional value you can use to ensure you are updating the latest update of the function version or alias. If the RevisionID you pass doesn't match the latest RevisionId of the function or alias, it will fail with an error message, advising you to retrieve the latest function version or alias RevisionID using either GetFunction or GetAlias .
Returns

None

Examples

This operation removes a Lambda function's permissions

response = client.remove_permission(
    FunctionName='myFunction',
    Qualifier='1',
    StatementId='role-statement-id',
)

print(response)

Expected Output:

{
    'ResponseMetadata': {
        '...': '...',
    },
}
tag_resource(**kwargs)

Creates a list of tags (key-value pairs) on the Lambda function. Requires the Lambda function ARN (Amazon Resource Name). If a key is specified without a value, Lambda creates a tag with the specified key and a value of null. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

See also: AWS API Documentation

Request Syntax

response = client.tag_resource(
    Resource='string',
    Tags={
        'string': 'string'
    }
)
Parameters
  • Resource (string) --

    [REQUIRED]

    The ARN (Amazon Resource Name) of the Lambda function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

  • Tags (dict) --

    [REQUIRED]

    The list of tags (key-value pairs) you are assigning to the Lambda function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

    • (string) --
      • (string) --
Returns

None

untag_resource(**kwargs)

Removes tags from a Lambda function. Requires the function ARN (Amazon Resource Name). For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

See also: AWS API Documentation

Request Syntax

response = client.untag_resource(
    Resource='string',
    TagKeys=[
        'string',
    ]
)
Parameters
  • Resource (string) --

    [REQUIRED]

    The ARN (Amazon Resource Name) of the function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

  • TagKeys (list) --

    [REQUIRED]

    The list of tag keys to be deleted from the function. For more information, see Tagging Lambda Functions in the AWS Lambda Developer Guide .

    • (string) --
Returns

None

update_alias(**kwargs)

Using this API you can update the function version to which the alias points and the alias description. For more information, see Introduction to AWS Lambda Aliases .

This requires permission for the lambda:UpdateAlias action.

See also: AWS API Documentation

Request Syntax

response = client.update_alias(
    FunctionName='string',
    Name='string',
    FunctionVersion='string',
    Description='string',
    RoutingConfig={
        'AdditionalVersionWeights': {
            'string': 123.0
        }
    },
    RevisionId='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Name (string) --

    [REQUIRED]

    The alias name.

  • FunctionVersion (string) -- Using this parameter you can change the Lambda function version to which the alias points.
  • Description (string) -- You can change the description of the alias using this parameter.
  • RoutingConfig (dict) --

    Specifies an additional version your alias can point to, allowing you to dictate what percentage of traffic will invoke each version. For more information, see Traffic Shifting Using Aliases .

    • AdditionalVersionWeights (dict) --

      The name of the second alias, and the percentage of traffic that is routed to it.

      • (string) --
        • (float) --
  • RevisionId (string) -- An optional value you can use to ensure you are updating the latest update of the function version or alias. If the RevisionID you pass doesn't match the latest RevisionId of the function or alias, it will fail with an error message, advising you retrieve the latest function version or alias RevisionID using either GetFunction or GetAlias .
Return type

dict

Returns

Response Syntax

{
    'AliasArn': 'string',
    'Name': 'string',
    'FunctionVersion': 'string',
    'Description': 'string',
    'RoutingConfig': {
        'AdditionalVersionWeights': {
            'string': 123.0
        }
    },
    'RevisionId': 'string'
}

Response Structure

  • (dict) --

    Provides configuration information about a Lambda function version alias.

    • AliasArn (string) --

      Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias called BETA that points to a helloworld function version, the ARN is arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA .

    • Name (string) --

      Alias name.

    • FunctionVersion (string) --

      Function version to which the alias points.

    • Description (string) --

      Alias description.

    • RoutingConfig (dict) --

      Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic will invoke each version.

      • AdditionalVersionWeights (dict) --

        The name of the second alias, and the percentage of traffic that is routed to it.

        • (string) --
          • (float) --
    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This operation updates a Lambda function alias

response = client.update_alias(
    Description='',
    FunctionName='myFunction',
    FunctionVersion='1',
    Name='functionAlias',
)

print(response)

Expected Output:

{
    'AliasArn': 'arn:aws:lambda:us-west-2:123456789012:function:functionAlias',
    'Description': '',
    'FunctionVersion': '1',
    'Name': 'functionAlias',
    'ResponseMetadata': {
        '...': '...',
    },
}
update_event_source_mapping(**kwargs)

You can update an event source mapping. This is useful if you want to change the parameters of the existing mapping without losing your position in the stream. You can change which function will receive the stream records, but to change the stream itself, you must create a new mapping.

If you disable the event source mapping, AWS Lambda stops polling. If you enable again, it will resume polling from the time it had stopped polling, so you don't lose processing of any records. However, if you delete event source mapping and create it again, it will reset.

This operation requires permission for the lambda:UpdateEventSourceMapping action.

See also: AWS API Documentation

Request Syntax

response = client.update_event_source_mapping(
    UUID='string',
    FunctionName='string',
    Enabled=True|False,
    BatchSize=123
)
Parameters
  • UUID (string) --

    [REQUIRED]

    The event source mapping identifier.

  • FunctionName (string) --

    The name of the lambda function.

    Name formats
    • Function name - MyFunction .
    • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction .
    • Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD .
    • 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.

  • Enabled (boolean) -- Specifies whether AWS Lambda should actively poll the stream or not. If disabled, AWS Lambda will not poll the stream.
  • BatchSize (integer) -- The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.
Return type

dict

Returns

Response Syntax

{
    'UUID': 'string',
    'BatchSize': 123,
    'EventSourceArn': 'string',
    'FunctionArn': 'string',
    'LastModified': datetime(2015, 1, 1),
    'LastProcessingResult': 'string',
    'State': 'string',
    'StateTransitionReason': 'string'
}

Response Structure

  • (dict) --

    Describes mapping between an Amazon Kinesis or DynamoDB stream and a Lambda function.

    • UUID (string) --

      The AWS Lambda assigned opaque identifier for the mapping.

    • BatchSize (integer) --

      The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.

    • EventSourceArn (string) --

      The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream that is the source of events.

    • FunctionArn (string) --

      The Lambda function to invoke when AWS Lambda detects an event on the poll-based source.

    • LastModified (datetime) --

      The UTC time string indicating the last time the event mapping was updated.

    • LastProcessingResult (string) --

      The result of the last AWS Lambda invocation of your Lambda function. This value will be null if an SQS queue is the event source.

    • State (string) --

      The state of the event source mapping. It can be Creating , Enabled , Disabled , Enabling , Disabling , Updating , or Deleting .

    • StateTransitionReason (string) --

      The reason the event source mapping is in its current state. It is either user-requested or an AWS Lambda-initiated state transition.

Examples

This operation updates a Lambda function event source mapping

response = client.update_event_source_mapping(
    BatchSize=123,
    Enabled=True,
    FunctionName='myFunction',
    UUID='1234xCy789012',
)

print(response)

Expected Output:

{
    'BatchSize': 123,
    'EventSourceArn': 'arn:aws:s3:::examplebucket/*',
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction',
    'LastModified': datetime(2016, 11, 21, 19, 49, 20, 0, 326, 0),
    'LastProcessingResult': '',
    'State': '',
    'StateTransitionReason': '',
    'UUID': '1234xCy789012',
    'ResponseMetadata': {
        '...': '...',
    },
}
update_function_code(**kwargs)

Updates the code for the specified Lambda function. This operation must only be used on an existing Lambda function and cannot be used to update the function configuration.

If you are using the versioning feature, note this API will always update the $LATEST version of your Lambda function. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases .

This operation requires permission for the lambda:UpdateFunctionCode action.

See also: AWS API Documentation

Request Syntax

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

    [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.

  • ZipFile (bytes) --

    The contents of your zip file containing your deployment package. If you are using the web API directly, the contents of the zip file must be base64-encoded. If you are using the AWS SDKs or the AWS CLI, the SDKs or CLI will do the encoding for you. For more information about creating a .zip file, see Execution Permissions .

    This value will be base64 encoded automatically. Do not base64 encode this value prior to performing the operation.
  • S3Bucket (string) -- Amazon S3 bucket name where the .zip file containing your deployment package is stored. This bucket must reside in the same AWS Region where you are creating the Lambda function.
  • S3Key (string) -- The Amazon S3 object (the deployment package) key name you want to upload.
  • S3ObjectVersion (string) -- The Amazon S3 object (the deployment package) version you want to upload.
  • Publish (boolean) -- This boolean parameter can be used to request AWS Lambda to update the Lambda function and publish a version as an atomic operation.
  • DryRun (boolean) -- This boolean parameter can be used to test your request to AWS Lambda to update the Lambda function and publish a version as an atomic operation. It will do all necessary computation and validation of your code but will not upload it or a publish a version. Each time this operation is invoked, the CodeSha256 hash value of the provided code will also be computed and returned in the response.
  • RevisionId (string) -- An optional value you can use to ensure you are updating the latest update of the function version or alias. If the RevisionID you pass doesn't match the latest RevisionId of the function or alias, it will fail with an error message, advising you to retrieve the latest function version or alias RevisionID using either using using either GetFunction or GetAlias .
Return type

dict

Returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
    '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'
}

Response Structure

  • (dict) --

    A Lambda function's configuration settings.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name.

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function 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 terminating it.

    • MemorySize (integer) --

      The memory allocated to the function

    • LastModified (string) --

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

    • 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 could not be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key used to encrypt the function's environment variables. 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) --

      The ARN of the master function.

    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This operation updates a Lambda function's code

response = client.update_function_code(
    FunctionName='myFunction',
    Publish=True,
    S3Bucket='myBucket',
    S3Key='myKey',
    S3ObjectVersion='1',
    ZipFile='fileb://file-path/file.zip',
)

print(response)

Expected Output:

{
    'CodeSha256': 'LQT+0DHxxxxcfwLyQjzoEFKZtdqQjHXanlSdfXBlEW0VA=',
    'CodeSize': 123,
    'Description': '',
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction',
    'FunctionName': 'myFunction',
    'Handler': 'index.handler',
    'LastModified': '2016-11-21T19:49:20.006+0000',
    'MemorySize': 128,
    'Role': 'arn:aws:iam::123456789012:role/lambda_basic_execution',
    'Runtime': 'python2.7',
    'Timeout': 123,
    'Version': '1',
    'VpcConfig': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}
update_function_configuration(**kwargs)

Updates the configuration parameters for the specified Lambda function by using the values provided in the request. You provide only the parameters you want to change. This operation must only be used on an existing Lambda function and cannot be used to update the function's code.

If you are using the versioning feature, note this API will always update the $LATEST version of your Lambda function. For information about the versioning feature, see AWS Lambda Function Versioning and Aliases .

This operation requires permission for the lambda:UpdateFunctionConfiguration action.

See also: AWS API Documentation

Request Syntax

response = 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'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
    DeadLetterConfig={
        'TargetArn': 'string'
    },
    KMSKeyArn='string',
    TracingConfig={
        'Mode': 'Active'|'PassThrough'
    },
    RevisionId='string'
)
Parameters
  • FunctionName (string) --

    [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.

  • Role (string) -- The Amazon Resource Name (ARN) of the IAM role that Lambda will assume when it executes your function.
  • Handler (string) -- The function that Lambda calls to begin executing your function. For Node.js, it is the module-name.export value in your function.
  • Description (string) -- A short user-defined function description. AWS Lambda does not use this value. Assign a meaningful description as you see fit.
  • Timeout (integer) -- The amount of time that Lambda allows a function to run before terminating it. The default is 3 seconds. The maximum allowed value is 900 seconds.
  • MemorySize (integer) -- The amount of memory, in MB, your Lambda function is given. AWS Lambda uses this memory size to infer the amount of CPU allocated to your function. Your function use-case determines your CPU and memory requirements. For example, a database operation might need less memory compared to an image processing function. The default value is 128 MB. The value must be a multiple of 64 MB.
  • VpcConfig (dict) --

    Specify security groups and subnets in a VPC to which your Lambda function needs access.

    • SubnetIds (list) --

      A list of VPC subnet IDs.

      • (string) --
    • SecurityGroupIds (list) --

      A list of VPC security groups IDs.

      • (string) --
  • Environment (dict) --

    The parent object that contains your environment's configuration settings.

    • Variables (dict) --

      Environment variable key-value pairs.

      • (string) --
        • (string) --
  • Runtime (string) -- The runtime version for the function.
  • DeadLetterConfig (dict) --

    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.

  • KMSKeyArn (string) -- The Amazon Resource Name (ARN) of the KMS key used to encrypt your function's environment variables. If you elect to use the AWS Lambda default service key, pass in an empty string ("") for this parameter.
  • TracingConfig (dict) --

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

    • Mode (string) --

      The tracing mode.

  • RevisionId (string) -- An optional value you can use to ensure you are updating the latest update of the function version or alias. If the RevisionID you pass doesn't match the latest RevisionId of the function or alias, it will fail with an error message, advising you to retrieve the latest function version or alias RevisionID using either GetFunction or GetAlias .
Return type

dict

Returns

Response Syntax

{
    'FunctionName': 'string',
    'FunctionArn': 'string',
    'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
    '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'
}

Response Structure

  • (dict) --

    A Lambda function's configuration settings.

    • FunctionName (string) --

      The name of the function.

    • FunctionArn (string) --

      The function's Amazon Resource Name.

    • Runtime (string) --

      The runtime environment for the Lambda function.

    • Role (string) --

      The function's execution role.

    • Handler (string) --

      The function 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 terminating it.

    • MemorySize (integer) --

      The memory allocated to the function

    • LastModified (string) --

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

    • 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 could not be applied.

        • ErrorCode (string) --

          The error code.

        • Message (string) --

          The error message.

    • KMSKeyArn (string) --

      The KMS key used to encrypt the function's environment variables. 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) --

      The ARN of the master function.

    • RevisionId (string) --

      Represents the latest updated revision of the function or alias.

Examples

This operation updates a Lambda function's configuration

response = client.update_function_configuration(
    Description='',
    FunctionName='myFunction',
    Handler='index.handler',
    MemorySize=128,
    Role='arn:aws:iam::123456789012:role/lambda_basic_execution',
    Runtime='python2.7',
    Timeout=123,
    VpcConfig={
    },
)

print(response)

Expected Output:

{
    'CodeSha256': 'LQT+0DHxxxxcfwLyQjzoEFKZtdqQjHXanlSdfXBlEW0VA=',
    'CodeSize': 123,
    'Description': '',
    'FunctionArn': 'arn:aws:lambda:us-west-2:123456789012:function:myFunction',
    'FunctionName': 'myFunction',
    'Handler': 'index.handler',
    'LastModified': '2016-11-21T19:49:20.006+0000',
    'MemorySize': 128,
    'Role': 'arn:aws:iam::123456789012:role/lambda_basic_execution',
    'Runtime': 'python2.7',
    'Timeout': 123,
    'Version': '1',
    'VpcConfig': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}

Paginators

The available paginators are:

class Lambda.Paginator.ListAliases
paginator = client.get_paginator('list_aliases')
paginate(**kwargs)

Creates an iterator that will paginate through responses from Lambda.Client.list_aliases().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    FunctionName='string',
    FunctionVersion='string',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • FunctionName (string) --

    [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.

  • FunctionVersion (string) -- If you specify this optional parameter, the API returns only the aliases that are pointing to the specific Lambda function version, otherwise the API returns all of the aliases created for the Lambda function.
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'Aliases': [
        {
            'AliasArn': 'string',
            'Name': 'string',
            'FunctionVersion': 'string',
            'Description': 'string',
            'RoutingConfig': {
                'AdditionalVersionWeights': {
                    'string': 123.0
                }
            },
            'RevisionId': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Aliases (list) --

      A list of aliases.

      • (dict) --

        Provides configuration information about a Lambda function version alias.

        • AliasArn (string) --

          Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias called BETA that points to a helloworld function version, the ARN is arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA .

        • Name (string) --

          Alias name.

        • FunctionVersion (string) --

          Function version to which the alias points.

        • Description (string) --

          Alias description.

        • RoutingConfig (dict) --

          Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic will invoke each version.

          • AdditionalVersionWeights (dict) --

            The name of the second alias, and the percentage of traffic that is routed to it.

            • (string) --
              • (float) --
        • RevisionId (string) --

          Represents the latest updated revision of the function or alias.

    • NextToken (string) --

      A token to resume pagination.

class Lambda.Paginator.ListEventSourceMappings
paginator = client.get_paginator('list_event_source_mappings')
paginate(**kwargs)

Creates an iterator that will paginate through responses from Lambda.Client.list_event_source_mappings().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    EventSourceArn='string',
    FunctionName='string',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • EventSourceArn (string) -- The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream. (This parameter is optional.)
  • FunctionName (string) --

    The name of the lambda function.

    Name formats
    • Function name - MyFunction .
    • Function ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction .
    • Version or Alias ARN - arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD .
    • 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.

  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'EventSourceMappings': [
        {
            'UUID': 'string',
            'BatchSize': 123,
            'EventSourceArn': 'string',
            'FunctionArn': 'string',
            'LastModified': datetime(2015, 1, 1),
            'LastProcessingResult': 'string',
            'State': 'string',
            'StateTransitionReason': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    Contains a list of event sources (see EventSourceMappingConfiguration )

    • EventSourceMappings (list) --

      An array of EventSourceMappingConfiguration objects.

      • (dict) --

        Describes mapping between an Amazon Kinesis or DynamoDB stream and a Lambda function.

        • UUID (string) --

          The AWS Lambda assigned opaque identifier for the mapping.

        • BatchSize (integer) --

          The largest number of records that AWS Lambda will retrieve from your event source at the time of invoking your function. Your function receives an event with all the retrieved records.

        • EventSourceArn (string) --

          The Amazon Resource Name (ARN) of the Amazon Kinesis or DynamoDB stream that is the source of events.

        • FunctionArn (string) --

          The Lambda function to invoke when AWS Lambda detects an event on the poll-based source.

        • LastModified (datetime) --

          The UTC time string indicating the last time the event mapping was updated.

        • LastProcessingResult (string) --

          The result of the last AWS Lambda invocation of your Lambda function. This value will be null if an SQS queue is the event source.

        • State (string) --

          The state of the event source mapping. It can be Creating , Enabled , Disabled , Enabling , Disabling , Updating , or Deleting .

        • StateTransitionReason (string) --

          The reason the event source mapping is in its current state. It is either user-requested or an AWS Lambda-initiated state transition.

    • NextToken (string) --

      A token to resume pagination.

class Lambda.Paginator.ListFunctions
paginator = client.get_paginator('list_functions')
paginate(**kwargs)

Creates an iterator that will paginate through responses from Lambda.Client.list_functions().

See also: AWS API Documentation

Request Syntax

response_iterator = paginator.paginate(
    MasterRegion='string',
    FunctionVersion='ALL',
    PaginationConfig={
        'MaxItems': 123,
        'PageSize': 123,
        'StartingToken': 'string'
    }
)
Parameters
  • MasterRegion (string) -- Specify a region (e.g. us-east-2 ) to only list functions that were created in that region, or ALL to include functions replicated from any region. If specified, you also must specify the FunctionVersion .
  • FunctionVersion (string) -- Set to ALL to list all published versions. If not specified, only the latest unpublished version ARN is returned.
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

Response Syntax

{
    'Functions': [
        {
            'FunctionName': 'string',
            'FunctionArn': 'string',
            'Runtime': 'nodejs'|'nodejs4.3'|'nodejs6.10'|'nodejs8.10'|'java8'|'python2.7'|'python3.6'|'dotnetcore1.0'|'dotnetcore2.0'|'dotnetcore2.1'|'nodejs4.3-edge'|'go1.x',
            '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'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    A list of Lambda functions.

    • Functions (list) --

      A list of Lambda functions.

      • (dict) --

        A Lambda function's configuration settings.

        • FunctionName (string) --

          The name of the function.

        • FunctionArn (string) --

          The function's Amazon Resource Name.

        • Runtime (string) --

          The runtime environment for the Lambda function.

        • Role (string) --

          The function's execution role.

        • Handler (string) --

          The function 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 terminating it.

        • MemorySize (integer) --

          The memory allocated to the function

        • LastModified (string) --

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

        • 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 could not be applied.

            • ErrorCode (string) --

              The error code.

            • Message (string) --

              The error message.

        • KMSKeyArn (string) --

          The KMS key used to encrypt the function's environment variables. 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) --

          The ARN of the master function.

        • RevisionId (string) --

          Represents the latest updated revision of the function or alias.

    • NextToken (string) --

      A token to resume pagination.