One big trade-off is that I only have one datacenter so in cloud lingo, I only offer one availability zone with offsite backups. But then again, when AWS us-east went offline, so went most companies, because the proudly advertised multi-AZ failover didn't work that well in practice.
As for the APIs, I just limit the subset of APIs that I offer. Since this is used only for my consulting clients, my cloud only needs to support those APIs that they require. In effect, that means CEPH+PostgreSQL do most of the heavy lifting.
I've seen Cloud APIs explode in funny ways when customers actually arrive with Petabyte-scale datasets. In that sense, my customers are pre-qualified because all of them have had horrible experiences with Cloud providers over-promising and under-delivering. So once they are on my platform, dissuading them from wanting more APIs is very easy. "Would you like to continue to use my cloud at the current price? Or would you like to pay 3x the monthly spend just to use the Amazon cloud and gain API call XY? And please remember the last time they crashed badly and you could not reach any Amazon support by phone. Didn't they even bill you for EC2 while it was unreachable?"
And if they insist, I can always point them towards the Open Source project that Amazon/Heroku use under the hood. But in my opinion, most Cloud APIs don't add business value anyway. "Keep it simple" always wins out in the long run.