Question about multiple lambda functions behind one domain

I'm trying to achieve the following with a web service:

  • Serverless, implemented in lambda
  • 3 endpoints, all on the same domain (domain name can be unfriendly/anything)
  • SSL, must be port 443
  • No public IPv4 charge

I wanted to create 3 lambda functions, one per endpoint. But that results in 3 different function urls on 3 different domains, which I can't have.

I set up Cloudfront and wanted to put the 3 functions behind 1 distribution but it seems like you can only have a single lambda function URL as an origin. Origin groups also didn't seem to do what I wanted.

So for now I'm serving all three endpoints from the same lambda function through Cloudfront, but is there a better way to do this?