Creating a good, useful and functional API for your application can be one of the most difficult parts of a project. With more and more things becoming API-powered, it's important to plan well and provide what the user expects. I'll look at some principles you can follow to make sure the API you write is the right one, both from the developer perspective and what you, as a user, should expect of a quality web service API.