An application programming interface (API) is a set of rules and specifications that software programs can follow to communicate or 'interface' with each other. As developers are well aware, there are hundreds of APIs out there for doing almost anything you could imagine online. Some are better than others, and some are definitely more useful than others. Below are forty of the most useful APIs ou