def METHOD_NAME(self, data_record: DataRecord):
    logger.debug(f"Updating record for idempotency key: {data_record.idempotency_key}")
    update_expression = "SET #response_data = :response_data, #expiry = :expiry, #status = :status"
    expression_attr_values = {
        ":expiry": data_record.expiry_timestamp,
        ":response_data": data_record.response_data,
        ":status": data_record.status,
    }
    expression_attr_names = {
        "#response_data": self.data_attr,
        "#expiry": self.expiry_attr,
        "#status": self.status_attr,
    }
    if self.payload_validation_enabled:
        update_expression += ", #validation_key = :validation_key"
        expression_attr_values[":validation_key"] = data_record.payload_hash
        expression_attr_names["#validation_key"] = self.validation_key_attr
    kwargs = {
        "Key": {self.key_attr: data_record.idempotency_key},
        "UpdateExpression": update_expression,
        "ExpressionAttributeValues": expression_attr_values,
        "ExpressionAttributeNames": expression_attr_names,
    }
    self.table.update_item(**kwargs)