Workshops

Workshop sobre Plataforma. Parte 5: API Rest

Para finalizar con el Workshop sobre la Plataforma, vamos a utilizar el API Manager para crear un API REST que permita conocer que estaciones tienen disponibles bicicletas por debajo de un umbral pasado por parámetro. Para ello crearemos una operación que consulte mediante una sentencia SQL en la ontología BicingBCN_Status, que estaciones están por debajo del umbral.

Accedemos al API Manager desde el menú Development > My APIs, y seleccionamos «Create». En el formulario indicamos los datos del API: Identificación, categoría, descripción, meta-información, así como seleccionamos que se trata de una Ontologia como API REST, e indicamos que la ontología expuesta es «BicingBCN_Status»:

A continuación, indicamos que vamos a crear una operación de tipo «Custom Query». En el formulario que se abre completamos el identificador de la operación, la sentencia SQL parametrizada, el tipo de datos del parámetro y la descripción de la operación:

La consulta a utilizar será la siguiente:

select * from BicingBCN_Status as b where c.BicingBCN_Status.numBikesAvailable > {$param}

Si guardamos el API, ésta estará creada y se podrá invocar a la operación recién creada. Para ello recuperamos el «token» del usuario desde la opción de menú Development > My Apis y seleccionamos la pestaña «User Tokens»:

Probando el API

Desde la opción de menú Development > My Apis, localizando el API en el listado y seleccionando la opción «Swagger»:

En la siguiente pantalla, nos aseguramos que el esquema es HTTPS:

Desplegamos la operación y la probamos con «Try it out». Introducimos el «token» recuperado previamente y el parámetro por el que queremos filtrar, y ejecutamos:

Si pulsamos sobre «Execute» obtendremos el resultado de la consultaprogramada en el API cuando «param = 10».

Con esto terminamos este workshop sobre la Plataforma. Esperamos que os haya sido de interés y no dudéis en comentar vuestras dudas e impresiones.

✍🏻 Author(s)

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *