Tools for building applications that perform commonly desired actions by using methods that already exist. For example, the Google Maps API allows anyone to embed high quality, digital maps on a webpage. You can think about these as building blocks that allow you to accomplish tasks without needing to build complex services from the ground up.