Aquí te explicamos todo lo que hay que saber sobre (nuestra) API con algunos ejemplos interesantes, cómo puedes utilizarla y por qué deberías hacerlo.
1. ¿Qué es una API?
API son las siglas de «Application Programming Interface» (interfaz de programación de aplicaciones). Es la interfaz que permite que las aplicaciones de software se comuniquen entre sí. Básicamente, te permite solicitar algo o hacer una pregunta, tras lo cual la llamada a la API realiza la acción que se supone que debe hacer, una vez que le has proporcionado la información necesaria.
Ejemplo
Imagina que estás sentado en una mesa de un restaurante con una carta de opciones para pedir. La cocina es la parte del «sistema» que preparará tu pedido. Lo que falta es el eslabón fundamental para comunicar tu pedido a la cocina y llevarte la comida a la mesa. Ahí es donde entra en juego el camarero, o la API. El camarero es el mensajero —o la API— que recoge tu solicitud o pedido y le indica a la cocina —el sistema— qué debe hacer. A continuación, el camarero te entrega la respuesta; en este caso, la comida.
En resumen, cuando una empresa ofrece una API a sus clientes, simplemente significa que ha creado un conjunto de URL específicas que devuelven respuestas de datos puros, es decir, que las respuestas no contienen el tipo de elementos de presentación que cabría esperar en una interfaz gráfica de usuario, como un sitio web.
2. ¿Qué llamadas a la API tiene Easy LMS?
Contamos con cinco llamadas a la API que cumplen diferentes funciones.
3. ¿En qué consiste una llamada a la API?
Una llamada a la API consta de tres elementos:
La carga útil (los datos reales que se envían)
El punto final (la dirección a la que se envían los datos)
La respuesta (respuesta de éxito o de error)
La carga útil es la información que se envía a un punto final, es decir, los datos necesarios para añadir un participante.
El punto final es una dirección web a la que se envía la información, y la respuesta indica si la llamada a la API se ha realizado con éxito o no.
4. Uso de webhooks junto con llamadas a la API
Los webhooks se pueden utilizar junto con las llamadas a la API para iniciar diferentes acciones. Cuando se envía un webhook que contiene la carga útil necesaria para que funcione una determinada llamada a la API, esta realizará su tarea y añadirá al participante. Los webhooks deben enviarse desde tu sistema a nuestro punto final y debes configurarlos tú mismo en tu sistema.
Ejemplo 1: curso, examen, academia
Los párrafos siguientes forman parte de un caso de uso ficticio para explicar cómo pueden funcionar conjuntamente los webhooks y las API.
Un responsable de RR. HH. ha creado un curso básico y un examen para los empleados recién contratados. El responsable de RR. HH. quiere que los empleados realicen el curso, pero solo desea que tengan acceso al examen tras completarlo. Solo después de superar el examen quiere que los empleados tengan acceso a la academia, que contiene cursos y exámenes de nivel intermedio y avanzado. Entonces, ¿cómo se configura esto?
Para entender cómo configurarlo, ya hemos establecido que estos webhooks y llamadas a la API se enviarán internamente dentro del sistema Easy LMS. El proceso es el siguiente.
El responsable de RR. HH. debe crear un webhook que envíe una carga útil a la API del examen una vez que el empleado haya completado el curso. Este webhook solo tiene que contener los datos necesarios para activar la llamada a la API del examen. En este caso, utilizamos la llamada a la API «Añadir participante al examen (invitación) ». Una vez enviado este webhook, la llamada a la API se activará si hay una respuesta positiva. La llamada a la API añade al participante y envía la invitación al examen automáticamente.
El segundo webhook que debe crear el responsable de RR. HH. es para cuando el empleado apruebe el examen con éxito y obtenga acceso a la academia. De nuevo, la carga útil de este webhook solo debe contener la información que necesita la llamada a la API de la academia para añadir al participante y enviar una invitación. Tras enviar este webhook, se activará la llamada a la API de la academia, tras lo cual esta añadirá al participante a la academia y le enviará una invitación.
En resumen:
Crea un webhook para la finalización del curso que se envíe a la llamada a la API del examen.
Crea un webhook para la superación del examen, que se envía a la llamada a la API de la academia.
El empleado realiza el curso y lo completa.
El webhook de finalización del curso se envía al punto final de la llamada a la API «Añadir participante al examen (invitación) », que añade e invita al participante al examen.
El empleado realiza el examen y lo aprueba.
El webhook de superación del examen se envía al punto final de la llamada a la API «Añadir participante a la Academia (invitación) » y añade e invita al participante a la Academia.
Ejemplo 2: envío de invitaciones desde tu propio sistema
Un cliente desea utilizar nuestra herramienta para formar a sus (nuevos) empleados. Actualmente utiliza la configuración «Un grupo predefinido de participantes » para enviar correos electrónicos de invitación. Sin embargo, muchos empleados perciben estas invitaciones como spam, y algunos de estos correos también acaban en sus carpetas de spam. El cliente desea enviar estas invitaciones desde su propio sistema.
En primer lugar, el cliente crea un webhook que envía una carga útil a la API de exámenes —«Añadir participante sin notificar»—. Cuando se añade un nuevo empleado a su sistema, el webhook envía la carga útil a la API de Examen, que añade al empleado. La llamada a la API no envía una invitación a este empleado. Cuando la llamada a la API se realiza con éxito, la respuesta incluye las credenciales de inicio de sesión. A continuación, estas credenciales de inicio de sesión deben enviarse al empleado desde su propio sistema y su aplicación de correo electrónico.
Esto también funciona para los empleados ya existentes; solo tiene que crear un webhook que envíe una carga útil a la API de Examen, lo que activa la acción de añadir participantes sin notificarlo al examen. Las credenciales de inicio de sesión devueltas en la respuesta de la llamada a la API pueden enviarse entonces desde su propio sistema.
Ejemplo 3: Venta de exámenes
Un cliente crea exámenes en nuestro sistema y los vende a sus propios clientes a través de su página web de comercio electrónico. Quiere automatizar este proceso una vez que los clientes hayan pagado un examen.
Para automatizar el proceso de venta, deberá utilizar un webhook. Cuando sus clientes compran o pagan un examen en su sitio web de comercio electrónico, se les añade a su sistema. El webhook que cree debe activarse una vez que hayan pagado. A continuación, este webhook enviará la carga útil correspondiente a la llamada a la API del examen y deberá devolver una respuesta de éxito o de error. Si la respuesta es de éxito, la llamada a la API añade e invita a los clientes al examen que han pagado.
5. ¿Cuáles son las especificaciones de las llamadas a la API?
Nuestra API acepta los formatos application/x-www-form-urlencoded, multipart/form-data y JSON.
Obtenga más información en los siguientes artículos:


