As you mentioned, API destinations does not support private destinations. To overcome this you can set the target of the rule to a Lambda function that is attached to the VPC and it will invoke the ALB. This is not optimal of course as it adds latency and cost, but this is the only support way of doing it now.
You could also take a different route and use SQS. The rule will send the messages to an SQS queue and the application in the VPC will poll the queue for the messages. ALB will not be required in this case. This is a much bigger change of course.
Is it possible to use ALB/NLB infront of an API Gateway.asked 23 days ago
Why is my EventBridge Rule silently failing every week?Accepted Answerasked 9 months ago
Organization Config (with aggregator) eventbridge ruleasked 3 months ago
Eventbridge to Slack API Destinationasked 8 months ago
Is it possible to use an internal ALB as an EventBridge Rule API Destination?Accepted Answerasked 7 months ago
Is it possible to use an internal RabbitMQ (ACtiveMQ) endpoint as an EventBridge Rule API Destination?Accepted Answerasked 4 months ago
EventBridge failing to invoke API Destination with NO_PERMISSIONS errorasked 8 months ago
How to pass parameters from an event rule through a glue workflow trigger to a jobasked 4 months ago
EventBridge Rule Testing doesn't workAccepted Answerasked a month ago
EventBridge + KinesisAccepted Answerasked 6 months ago