An Application Programming Interface or API is an interface layer presented by a system to allow other systems to communicate easily.

An API allows systems to be integrated easily through a standard interface whilst allowing the API host to maintain ownership under the hood of how requests are processed.

For example, a historian may have a complex data storage and retrieval process to ensure compression/error detection/protection/load balancing etc that an interfacing system will not be expected to or trusted to manage through a direct connection, instead an API can be presented for consumers to use that has the protections required built in.