An Application Programming Interface is a programming method used to interact with software, applications, or tools. APIs provide a simplified querying language that allows consumers or developers to access underlying databases and hardware without disrupting stability or reliability, and without knowledge of underlying programming languages. They may be based on a variety of programming languages and models, but the types of APIs used by consumers to interact with Web-based software or apps are often known as SOAP or REST services, which consist of a set of specifications for remote calls that enable consumers to interact with data and systems without the risk of disrupting their function. For example, AppNexus uses a RESTful API to facilitate interaction with its Web-based software.