An API is an interface that allows an application to request services from libraries or operating systems. It defines calling conventions and routines that programmers use to access these services. APIs can be language-dependent or language-independent. They specify interfaces and control object behavior but implementations provide the actual functionality. APIs allow applications to be built by combining multiple services.