Primeros pasos

Esta sección describe la Web API de la plataforma, implementada como REST-API con intercambio de datos en formato json.

Aspectos generales

  • Formato de transferencia de datos La Web API está implementada como REST-API con intercambio de datos en formato json.
  • Procedimiento de autenticación La autenticación se basa en un token que se actualiza dinámicamente, lo que garantiza la seguridad de los datos recibidos e impide la filtración del token.
  • Formato de las variables que contienen fecha y hora La Web API devuelve los datos de tipo fecha y hora codificados en UNIX time o POSIX time, con el formato UTC: 1613376963. Para convertir el Unix time en una fecha legible es necesario indicar la zona horaria.
  • Paginación La Web API implementa la paginación para cargar los datos página a página. Se transmite mediante el parámetro: page="page number" (page=1). El número de registros que devuelve la consulta puede indicarse con el parámetro per_page, pero nunca más de 1000 registros.

URL base

Todos los ejemplos de estas páginas utilizan la siguiente URL base:

bash
https://api.vadsro.eu/api/v1

Autenticación

La autenticación se basa en un token que se actualiza dinámicamente. En la práctica, funciona así:

  • La autenticación primaria se realiza con un correo electrónico y una contraseña existentes en el sistema; en la respuesta se reciben un token dinámico y los atributos asociados.
  • Se construye la solicitud de datos propiamente dicha, añadiendo a los encabezados de la solicitud HTTP el token recibido en el paso anterior.
  • Se envía la solicitud al servidor. Si la solicitud está bien formada, el servidor devuelve los datos en el cuerpo de la respuesta y un token nuevo en los encabezados de la respuesta, mientras que el token anterior deja de ser válido. Con el token nuevo podemos repetir el paso anterior, y así sucesivamente.
  • Al terminar el trabajo, el último token puede invalidarse antes de su fecha de caducidad (SignOut).

La autenticación inicial utiliza el correo electrónico y la contraseña de un usuario existente. Para ello hay que enviar una solicitud POST a la dirección:

bash
https://api.vadsro.eu/api/v1/auth/sign_in

Ejemplo de solicitud en formato Curl:

bash
curl -i --header "Content-Type: application/json" \
     --request POST \
     --data '{"email":"api-user@example.com","password":"Str0ngPas$"}'\
     https://api.vadsro.eu/api/v1/auth/sign_in

En respuesta recibiremos el siguiente mensaje:

En esta respuesta nos interesan los siguientes encabezados:

EncabezadoDescripción
access_tokenEl valor de este encabezado se utiliza como contraseña en cada solicitud. El valor cambia con cada solicitud.
clientEste encabezado es único para la conexión actual. Permite varias sesiones activas al mismo tiempo.
expiryEl momento en que caducará este token. De forma predeterminada, 2 semanas desde que se recibe. O bien SignOut para una caducidad anticipada. No es necesario en la siguiente solicitud.
uidUn valor único que identifica al usuario. En nuestro caso, el correo electrónico.
token-typeEl tipo de token utilizado.

Ejemplo de solicitud que utiliza el token de la respuesta anterior:

bash
curl -i --header "access-token: EXAMPLE-ACCESS-TOKEN-1" \
 --header "token-type: Bearer" \
 --header "client: EXAMPLE-CLIENT-ID" \
 --header "uid: api-user@example.com" \
 --request GET \
 --header "Content-Type: application/json" \
 --data '{"page":"2"}' \
 https://api.vadsro.eu/api/v1/stations

En respuesta recibiremos el siguiente mensaje:

Para terminar el trabajo puedes utilizar el procedimiento SignOut, o bien guardar los encabezados necesarios de la última solicitud y reutilizarlos la próxima vez, si el tiempo de vida del token no ha expirado.

Cierre de una sesión:

Próximos pasos

Ahora que ya sabes autenticarte, explora los recursos principales de la API:

Última actualización el

¿Te resultó útil esta página?