Los softwares están construídos con lenguajes de programación, es por esto que un desarrollador de software conoce y maneja uno ó más de los diferentes lenguajes que existen para crear software.
Los lenguajes son como los idiomas (español, inglés, hebreo, etc), cada programa utiliza su propia combinación de "idiomas" para que tu puedas hacer lo que haces en cada software, como por ejemplo publicar un post en Facebook, subir una foto a Instagram ó agregar una nueva venta en tu ERP.
Las API ó bien, Application Program Interface, son como las puertas de entrada (ó salida) de cada sistema, generalmente los desarrolladores de un software generan una API para que sus usuarios puedan conectarse con otros softwares.
Supongamos que quisiera que cada vez que se sube un post mi página de empresa de Facebook, reciba un email a mi cuenta de Gmail corporativo (Google Workspace) informando lo que se ha subido, y esto se realice automáticamente.
En este ejemplo, tenemos dos partes:
Trigger ó desencadenante (en rojo): Es la acción con la que inicia mi integración.
Ejecución (en verde): Lo que quiero que se realice en la integración.
Para que esto sea posible, y se ejecute esto sin interrupciones tal como en el ejemplo deseamos, es necesario hacer una integración. Para que podamos hacer esta integración es necesario recurrir a las API de Facebook y de Gmail.
Aqui puedes acceder a la documentación de la API de Facebook
Aqui puedes acceder a la documentación de la API de Gmail
Estas API te explicarán en detalle cómo conectarte (y autenticarte) a Facebook por medio de código (en un lenguaje "neutro"), para que extraigas la información que necesites, en nuestro caso necesitamos que la API nos avise que existe un nuevo post en nuestra página de empresa de Facebook; luego en la API de Gmail (en un lenguaje "neutro"), encontraremos la información necesaria de cómo conectarnos y autenticarnos a nuestro correo corporativo para poder enviarnos un email con la información extraída de Facebook.
"Una API es un conjunto de definiciones y protocolos que se utiliza para desarrollar e integrar el software de las aplicaciones. API significa interfaz de programación de aplicaciones.
Las API permiten que sus productos y servicios se comuniquen con otros, sin necesidad de saber cómo están implementados. Esto simplifica el desarrollo de las aplicaciones y permite ahorrar tiempo y dinero. Las API le otorgan flexibilidad; simplifican el diseño, la administración y el uso de las aplicaciones, y proporcionan oportunidades de innovación, lo cual es ideal al momento de diseñar herramientas y productos nuevos (o de gestionar los actuales)."
Fuente: RedHat, en éste link.