Please don't just copy the S3 api outright. Improve upon the idea and make it simpler, then add an abstraction layer to support the S3-compatible API.<p>There's value in improving upon existing things. Stripe is a perfect example of taking an existing service and expending a lot of energy getting the APIs and developer experience just right. Prior to Stripe, many devs had implemented payments in their site/app, but it wasn't until a solution like stripe that they actually enjoyed doing so.