Skip to main content

AWS::S3ObjectLambda Construct Library

---

End-of-Support

AWS CDK v1 has reached End-of-Support on 2023-06-01. This package is no longer being updated, and users should migrate to AWS CDK v2.

For more information on how to migrate, see the Migrating to AWS CDK v2 guide.


This construct library allows you to define S3 object lambda access points.

import aws_cdk.aws_lambda as lambda_
import aws_cdk.aws_s3 as s3
import aws_cdk.aws_s3objectlambda as s3objectlambda
import aws_cdk.core as cdk

stack = cdk.Stack()
bucket = s3.Bucket(stack, "MyBucket")
handler = lambda_.Function(stack, "MyFunction",
    runtime=lambda_.Runtime.NODEJS_14_X,
    handler="index.handler",
    code=lambda_.Code.from_asset("lambda.zip")
)
s3objectlambda.AccessPoint(stack, "MyObjectLambda",
    bucket=bucket,
    handler=handler,
    access_point_name="my-access-point",
    payload={
        "prop": "value"
    }
)

Handling range and part number requests

Lambdas are currently limited to only transforming GetObject requests. However, they can additionally support GetObject-Range and GetObject-PartNumber requests, which needs to be specified in the access point configuration:

import aws_cdk.aws_lambda as lambda_
import aws_cdk.aws_s3 as s3
import aws_cdk.aws_s3objectlambda as s3objectlambda
import aws_cdk.core as cdk

stack = cdk.Stack()
bucket = s3.Bucket(stack, "MyBucket")
handler = lambda_.Function(stack, "MyFunction",
    runtime=lambda_.Runtime.NODEJS_14_X,
    handler="index.handler",
    code=lambda_.Code.from_asset("lambda.zip")
)
s3objectlambda.AccessPoint(stack, "MyObjectLambda",
    bucket=bucket,
    handler=handler,
    access_point_name="my-access-point",
    supports_get_object_range=True,
    supports_get_object_part_number=True
)

Pass additional data to Lambda function

You can specify an additional object that provides supplemental data to the Lambda function used to transform objects. The data is delivered as a JSON payload to the Lambda:

import aws_cdk.aws_lambda as lambda_
import aws_cdk.aws_s3 as s3
import aws_cdk.aws_s3objectlambda as s3objectlambda
import aws_cdk.core as cdk

stack = cdk.Stack()
bucket = s3.Bucket(stack, "MyBucket")
handler = lambda_.Function(stack, "MyFunction",
    runtime=lambda_.Runtime.NODEJS_14_X,
    handler="index.handler",
    code=lambda_.Code.from_asset("lambda.zip")
)
s3objectlambda.AccessPoint(stack, "MyObjectLambda",
    bucket=bucket,
    handler=handler,
    access_point_name="my-access-point",
    payload={
        "prop": "value"
    }
)

Metadata

Release files for aws-cdk.aws-s3objectlambda 1.204.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aws-cdk.aws-s3objectlambda 1.204.0
File Size Uploaded
aws-cdk.aws-s3objectlambda-1.204.0.tar.gz 75.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aws-cdk.aws-s3objectlambda 1.204.0
File Interpreter ABI Platform
aws_cdk.aws_s3objectlambda-1.204.0-py3-none-any.whl Python 3 none any Details

Total release size: 149.5 kB

Release files / aws-cdk.aws-s3objectlambda-1.204.0.tar.gz

Download URL aws-cdk.aws-s3objectlambda-1.204.0.tar.gz
Size 75.2 kB
Tags Source
SHA-256 checksum
How to use checksums
7cbd99ceb48afe3f74f9b5e06ffe3927c39243baaddcd94418dda2384624988e
BLAKE2b-256 checksum
How to use checksums
9500afc46024bcbf5eaa33d297fb6414e909ff8410406e7b59dc08bf2e13bb77
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release files / aws_cdk.aws_s3objectlambda-1.204.0-py3-none-any.whl

Download URL aws_cdk.aws_s3objectlambda-1.204.0-py3-none-any.whl
Size 74.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
46341be1b55ac659789eeaf4f239ab6707a2665e48675efbdbbda1765da7bc32
BLAKE2b-256 checksum
How to use checksums
eb14be30e2e8b99ee6d865d7e960d197c45bf09fd290269b7e57c3e125d87c89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release history Release notifications | RSS feed

This release

1.204.0 This release

2 release files

1.99.0

2 release files

1.98.0

2 release files

1.95.1

2 release files

1.95.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page