Skip to main content

Introducción a la API

La arquitectura de todas las aplicaciones que conforman este proyecto está plenamente orientada a ofrecer APIs organizadas de acceso y modificación de los datos. Esto significa que cualquier operación que realize el panel está expuesta a través de procedimientos documentados que con los permisos adecuados se pueden usar desde cualquier lenguaje de programación o aplicación.

Esta arquitectura permite de una forma segura y funcional acceder a toda la información e integrar fácilmente con desarrollos terceros acorde a lo que se necesite en el futuro. Es flexible y fácil de usar para todos los interesados.

A continuación ofrecemos en detalles más técnicos una visión total de cómo funciona y cómo se organizan las APIs.

Dualidad "REST" y gRPC

Existen dos APIs paralelas expuestas por cada servicio. Ambas son plenamente compatibles y 100% idénticas entre ellas, las diferencias son puramente tecnológicas donde se ofrecen diferentes ventajas en cada caso.

Lo normal es que se elija solamente una de las dos aproximaciones para la integración.

gRPC

Los servidores exponen APIs gRPC. Esto significa que cualquier plataforma en la que se puedan generar los clientes adecuadamente se pueden beneficiar de estas ventajas: Node.JS, C#, Go, Java, Ruby, Kotlin, Android, ObjC, C++, Python, ... En los lenguajes correspondientes acompañará con tipos que definen toda la interacción con el sistema haciendo bastante segura la integración por tanto.

Integración

Esta es la vía de integración que recomendamos para cualquier integración externa. Es más eficiente, más rápida y más fácil de integrar; las tres cosas proporcionadas simplemente por el hecho de usar gRPC sin ningún requerimiento adicional.

Más información sobre este tipo de integración.

"REST"

Alternativamente todas las aplicaciones disponen de un transcoder que convierte el protocolo HTTP/2 a peticiones clásicas "REST", que sin implementar REST propiamente dicho se parece en igual medida que la típica implementación manual.

Esta vía se recomienda para clientes que no pueden comunicarse a través de la API binaria, bien sea porque no pueden generar el código como ocurre con Javascript en el navegador, o bien sea porque consideran que es más fácil que la otra implementación.

Más información sobre este tipo de integración.

Recursos adicionales