SoporteIniciar sesión
Contáctenos
Presentamos la API REST de MyRapidi

Presentamos la API REST de MyRapidi

February 09, 2018 · Michael Bock · Uso de MyRapidi

Nos complace presentar nuestra API REST de MyRapidi.

La API REST de MyRapidi permite automatizar muchas tareas distintas relacionadas con el trabajo sobre la configuración de MyRapidi. En esta entrada nos centramos en un escenario concreto para aprender a utilizar la API REST.

Hemos elegido un escenario en el que actualizamos una programación concreta para que se ejecute de inmediato y, además, comprobamos el estado de esa programación.

De nuevo, para aprender a usar la API REST vamos a utilizar una extensión de Chrome llamada RESTlet. Cuando implementes este escenario en tu propio entorno, lo más probable es que uses otra herramienta, según el entorno del que dispongas.

Para usar la API REST de MyRapidi necesitas un login (y una contraseña) de una cuenta de MyRapidi activa con un Service activo (también necesitarás el Service Id, que aparece en la URL cuando inicias sesión en MyRapidi).

Nota: en los ejemplos siguientes debes sustituir el login y la contraseña por los tuyos, y sustituir también el Service Id (80) por tu propio Service Id.


RESUMEN DEL PROYECTO

Para empezar, primero tienes que instalar la extensión de Chrome en tu navegador (Chrome).

Una vez hecho esto, esta es la pantalla principal que ves al abrir la extensión:


myRapidi_-_Restlet_Client.jpg

Como puedes ver, ya hemos creado un proyecto y un Scenario, que no es más que una lista ordenada de solicitudes que se ejecutan una tras otra y que contiene las solicitudes necesarias para:

  1. Obtener tu Authentication Token con tu login y tu contraseña de myRapidi (AuthToken).
  2. Obtener la información de una programación concreta buscando por su nombre. Hemos elegido una programación llamada G_CUST (SchedByCode).
  3. Actualizar la programación, usando su ID (obtenido con la solicitud anterior), para que se ejecute de inmediato (UpdateSchedule).
  4. Comprobar si nuestra programación se ha ejecutado correctamente (esta solicitud se puede llamar varias veces, o después de esperar un rato, para asegurarte de que la programación se ha ejecutado realmente), también mediante su ID (SchedById).

Para crear el proyecto, la programación y las solicitudes que ves arriba, basta con usar el botón RESTlet_add_button.jpg para crear el proyecto, después el Scenario y, por último, las cuatro solicitudes dentro del Scenario.

 

CREAR LA SOLICITUD DEL AUTHENTICATION TOKEN (AuthToken)

Para crear una solicitud con la sintaxis que usa nuestra API REST de MyRapidi, utilizamos el Request Constructor de RESTlet.

Esta es la correspondencia entre cómo se escriben las solicitudes curl de ejemplo de nuestra documentación de la API REST y su aspecto en el Request Constructor:

en nuestra documentación, para la solicitud del Authentication Token:

MyRapidi_API_Curl.jpg

en el Request Constructor de RESTlet (fíjate en que faltan los símbolos \ y el par de "" más externo del contenido del body, en comparación con el comando curl):

myRapidi_Schedule_AuthToken_-_Restlet_Client.jpg

Reutilizar el resultado de solicitudes anteriores:

Las Expressions son una función de RESTlet que nos permite usar con facilidad partes de las solicitudes anteriores, incluidos sus resultados, en solicitudes posteriores.


Obtener la programación (solicitud SchedByCode)

Veamos cómo usar esto para obtener la programación que queremos, que en este caso es la programación G_CUST:

myRapidi_Schedule_SchedByCode_-_Restlet_Client-1.jpg

Como puedes ver arriba, añadimos un Query Parameter para buscar cualquier programación que tenga el valor G_CUST en su campo schedulercode.

La utilidad de la herramienta Expression de RESTlet se aprecia en el valor de la cabecera Authorization: contiene la palabra «Bearer», un espacio y una Expression que la vincula al resultado de nuestra solicitud de Authentication Token, como se ve a continuación:

RESTlet_expressionBuilder.jpg

El Expression Builder te permite recorrer visualmente los proyectos y elegir de qué solicitudes quieres obtener información y qué información quieres extraer.

Como puedes ver, aquí extraemos el valor del campo jwt (que corresponde a nuestros authentication tokens) del cuerpo de la respuesta de nuestra solicitud AuthToken, que está contenida en el Scenario Schedule, dentro de nuestro proyecto myRapidi.

 

Hacer que la programación se ejecute de inmediato (UpdateSchedule)

Ahora que tenemos la programación, podemos usar su ID para actualizarla y hacer que se ejecute de inmediato:

myRapidi_Schedule_UpdateSchedule_-_Restlet_Client-1.jpg



Aquí usamos otra expresión para obtener el ID de nuestra programación, que recibimos en los datos de respuesta de nuestra solicitud anterior:



myRapidi_Schedule_UpdateSchedule_-_Restlet_Client-1.jpg

Ahora que hemos actualizado la programación para que se ejecute de inmediato, podemos usar una solicitud para comprobar que, efectivamente, se ha ejecutado.

 

OBTENER EL ESTADO DE LA PROGRAMACIÓN (SchedById)

Esta última solicitud apenas se diferencia de la solicitud SchedByCode, salvo que usamos el ID de la programación porque así resulta más fácil localizarla:



myRapidi_Schedule_SchedById_-_Restlet_Client.jpg



Ya está.

Hemos conseguido acceder a una programación y actualizar su campo nextdatetime para que se ejecute de inmediato.

Con esto has podido conocer nuestra API REST en un sistema que permite probar solicitudes básicas con facilidad.

Esperamos que este recorrido te haya gustado y te haya resultado útil.

Si necesitas ayuda, ponte en contacto con el soporte.

Esta entrada la ha escrito Peter Bock. Está en su último año del Master of Science en Bioinformática en Burdeos, y combina su pasión por la informática y la tecnología con su interés por la biología. Él ha estado probando la API de MyRapidi y de su trabajo con ella en un editor surgió esta entrada de blog. El perfil de LinkedIn de Peter 

Compruebe si encaja con su entorno

Díganos qué sistemas utiliza y le diremos con franqueza si Rapidi es la herramienta adecuada.