Filtering a nested AWS DataSource

I am trying to filter for the “TransitGatewayId”: “tgw-##########” key/value pair from the following AWS JSON data sample set:

{
    "TransitGatewayPeeringAttachments": [
        {
            "TransitGatewayAttachmentId": "tgw-attach-##########",
            "RequesterTgwInfo": {
                "TransitGatewayId": "tgw-##########",
                "OwnerId": "##########",
                "Region": "ca-central-1"
            },
            "AccepterTgwInfo": {
                "TransitGatewayId": "tgw-##########",
                "OwnerId": "##########",
                "Region": "us-east-1"
            },
            "Status": {
                "Code": "available",
                "Message": "Available"
            },
            "State": "available",
            "CreationTime": "2021-07-08T23:19:42.000Z",
        }
    ]
}

with the following Terraform Data Source filter intended to match a known value provided from another module’s output:

data "aws_ec2_transit_gateway_peering_attachment" "peer-to-us-east-1-mgmt" {
  filter {
    name = "RequesterTgwInfo:TransitGatewayId"
    values = [ "${var.foreign_transit_gateway_id}" ]
  }
}

But am failing with the following error message:

InvalidParameterValue: Value (RequesterTgwInfo:TransitGatewayId) for parameter Filter is invalid.

According to the examples I’ve come across and what I’ve read so far on Data Source, this seems like it should not be failing but I’m sure there’s some larger concept I’m missing here. Anyone able to see what I’m doing wrong?

Also, we’re currently stuck on Terraform 11, hopefully will be able to start our upgrade path to 12 soon.

Thanks in advance!

Edit:
I’ve tried experimenting with various character case inputs (Upper/Lower/Mixed/etc…).