A set of protocols and tools for building software applications that interact with external systems or services.