Skip to content

Bug: How are IntelligentTiering events meant to be parsed? #7443

@leandrodamascena

Description

@leandrodamascena

Discussed in #7441

Originally posted by daniel-amag September 29, 2025
I'm very confused about the schema I'm meant to parse for IntelligentTiering events from S3 to a Lambda. The documentation here: https://docs.aws.amazon.com/AmazonS3/latest/userguide/intelligent-tiering-managing.html has an "intelligentTieringEventData" field that does not appear under the S3RecordModel. "destinationAccessTier" seems to only appear under "S3EventNotificationEventBridgeDetailModel". The only other likely candidate - glacier_event_data is None.

I'm using aws_lambda_powertools 3.20.0

Here's the event I actually receive at my lambda. The "record" and "records" fields being different to the "Records" I was expecting from the modle is throwing me off. Also get_object instead of object?

{
    "bucket_name": "mybucket",
    "object_key": "myobject",
    "raw_event": "[SENSITIVE]",
    "record": {
        "aws_region": "ap-southeast-2",
        "event_name": "IntelligentTiering",
        "event_source": "aws:s3",
        "event_time": "2025-09-29T00:47:23.967Z",
        "event_version": "2.3",
        "glacier_event_data": None,
        "raw_event": "[SENSITIVE]",
        "request_parameters": {
            "raw_event": "[SENSITIVE]",
            "source_ip_address": "s3.amazonaws.com"
        },
        "response_elements": {
            "x-amz-request-id": "4C05BE601E268FCD",
            "x-amz-id-2": "Wt0dgzBP/wQ47PWP5BqoD4nAZC08NOjfdZj2prx5gVPBCI+YQtrx/UKVlnT63Dj+vse4x5koWp61HaoVyz6fUFe1yLkhNpK3"
        },
        "s3": {
            "bucket": {
                "arn": "arn:aws:s3:::mybucket",
                "name": "mybucket",
                "owner_identity": {
                    "principal_id": "ANY597T3BWFY2",
                    "raw_event": "[SENSITIVE]"
                },
                "raw_event": "[SENSITIVE]"
            },
            "configuration_id": "ZDM3MGVjY2MtZTlmNC00ZTk0LThiNjItMWJiNTMwOTYwY2Rl",
            "get_object": {
                "etag": "4e9270240d7d62d5ee8dbfcb7a7a3279",
                "key": "myobject",
                "raw_event": "[SENSITIVE]",
                "sequencer": "[Cannot be deserialized]",
                "size": 252294,
                "version_id": "tiogA9Ga7Xi49yfJ6lkeTxPYx7ZK75yn"
            },
            "raw_event": "[SENSITIVE]",
            "s3_schema_version": "1.0"
        },
        "user_identity": {
            "principal_id": "s3.amazonaws.com",
            "raw_event": "[SENSITIVE]"
        }
    },
    "records": <generator object S3Event.records at 0x7efd49dcb4a0>
}
```</div>

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    Projects

    Status

    Working on it

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions