aws-lambda
Manage AWS Lambda functions
TLDR
Run a function
Run a function with an input payload in JSON format
List functions
Display the configuration of a function
List function aliases
Display the reserved concurrency configuration for a function
List which AWS services can invoke the function
SYNOPSIS
aws lambda subcommand [global-options] [subcommand-options]
PARAMETERS
add-layer-version-permission
Adds permissions to a layer version
add-permission
Adds a permission to the resource policy
create-alias
Creates a Lambda function alias
create-code-signing-config
Creates a code signing configuration
create-event-source-mapping
Creates an event source mapping
create-function
Creates a Lambda function
create-function-url-config
Creates a function URL
delete-alias
Deletes a Lambda function alias
delete-code-signing-config
Deletes a code signing configuration
delete-event-source-mapping
Deletes an event source mapping
delete-function
Deletes a Lambda function
delete-function-code-signing-config
Deletes function code signing config
delete-function-concurrency
Deletes function concurrency
delete-function-event-invoke-config
Deletes function event invoke config
delete-function-url-config
Deletes function URL config
delete-layer-version
Deletes a layer version
delete-provisioned-concurrency-config
Deletes provisioned concurrency config
get-account-settings
Returns account-level settings
get-alias
Returns alias configuration
get-code-signing-config
Returns code signing config
get-event-source-mapping
Returns event source mapping
get-function
Returns function configuration
get-function-code-signing-config
Returns function code signing config
get-function-concurrency
Returns function concurrency
get-function-configuration
Returns function configuration details
get-function-event-invoke-config
Returns function event invoke config
get-function-url-config
Returns function URL config
get-layer-version
Returns layer version details
get-layer-version-by-arn
Returns layer version by ARN
get-layer-versions
Lists layer versions
get-policy
Returns resource policy
get-provisioned-concurrency-config
Returns provisioned concurrency config
invoke
Invokes a Lambda function
list-aliases
Lists function aliases
list-code-signing-configs
Lists code signing configs
list-event-source-mappings
Lists event source mappings
list-function-event-invoke-configs
Lists function event invoke configs
list-function-url-configs
Lists function URL configs
list-functions
Lists Lambda functions
list-layer-versions
Lists layer versions
list-layers
Lists Lambda layers
list-provisioned-concurrency-configs
Lists provisioned concurrency configs
list-tags
Lists function tags
list-versions-by-function
Lists function versions
publish-layer-version
Publishes a layer version
publish-version
Publishes a function version
put-function-code-signing-config
Updates function code signing config
put-function-concurrency
Sets function concurrency
put-function-event-invoke-config
Configures function event invoke
put-provisioned-concurrency-config
Creates/updates provisioned concurrency
remove-layer-version-permission
Removes layer version permission
remove-permission
Removes permission from policy
tag-resource
Tags a resource
untag-resource
Untags a resource
update-alias
Updates alias
update-code-signing-config
Updates code signing config
update-event-source-mapping
Updates event source mapping
update-function-code
Updates function code
update-function-configuration
Updates function configuration
update-function-event-invoke-config
Updates function event invoke config
update-function-url-config
Updates function URL config
DESCRIPTION
The aws lambda command, part of the AWS Command Line Interface (CLI), provides full control over AWS Lambda, a serverless compute service that runs code in response to events without managing servers. It enables developers and administrators to create, configure, deploy, invoke, monitor, and delete Lambda functions programmatically.
Core operations include uploading function code (ZIP archives or container images), specifying runtimes like Node.js, Python, Java, or custom, setting handlers, memory allocation (128MB to 10GB), timeouts (up to 15 minutes), and environment variables. Manage versions and aliases for safe deployments, layers for shared code/dependencies, event source mappings for triggers from SQS, Kinesis, etc., and permissions via resource policies.
Invocation supports synchronous (request-response) or asynchronous modes, with options for payload, qualifiers, and log streaming. List, tag, and filter functions; configure concurrency limits, dead-letter queues, VPC settings, and code signing. Integrates seamlessly with CloudWatch for logs/metrics, IAM for security, and other AWS services.
Ideal for automation in CI/CD pipelines, infrastructure as code (with CloudFormation or CDK), and scripting. Requires AWS credentials with appropriate Lambda permissions.
CAVEATS
Requires AWS CLI installed and configured with valid credentials. Most subcommands need specific IAM permissions. High-volume operations may hit API throttling. Function payloads limited to 6MB synchronous, 256KB asynchronous.
COMMON GLOBAL OPTIONS
--debug (bool): Enable debug logging
--region (str): AWS region, e.g., us-east-1
--profile (str): Named profile from credentials file
--cli-input-json (str): Perform action via JSON input
EXAMPLE USAGE
List functions: aws lambda list-functions
Create function: aws lambda create-function --function-name myfunc --runtime python3.9 --role arn:aws:iam::123:role/lambda-role --handler lambda_function.lambda_handler --zip-file fileb://function.zip
Invoke: aws lambda invoke --function-name myfunc response.json
HISTORY
AWS Lambda launched November 2014; initial CLI support in AWS CLI v1 (2013 base). Expanded with layers (2018), provisioned concurrency (2019), function URLs (2022), container images (2020). AWS CLI v2 (2020) improved performance and JSON handling.


