• Menú en texto rojo precisa login
  •   
Usuario no conectado
Cerrar
SAICA Ebro es una red de control de calidad de las aguas en tiempo real.
Está compuesta de una serie de estaciones de control automatizadas y desasistidas que analizan de forma continua la calidad del agua en distintos puntos de la cuenca, y envían la información al centro de control ubicado en la sede central de la CHE.
La información recibida se pone a disposición pública a través de este sitio web.

Debido a las características de las instalaciones (automáticas y desasistidas) los resultados recibidos y publicados tienen carácter de provisionalidad, y están sujetos a tareas de revisión y validación.

Consulta de datos en formato JSON

Introducción y objetivos

Se han recibido peticiones, por parte de distintos usuarios, expresando interés en poder acceder a los resultados generados por SAICA-Ebro en formatos que permitan incorporarlos en su propios sistemas.
Para facilitar el acceso a la información se han programado tres páginas de consulta, que permiten obtener resultados de sendas entidades.
  • Estaciones de control implantadas en el sistema
  • Señales asociadas a las estaciones de control
  • Medidas recibidas de una señal en un periodo de fechas
La respuesta del servidor a estas consultas está en formato JSON, compuesto de una sección de encabezado, con carácter informativo, y una de datos, que se corresponde con la información descrita en cada una de las secciones siguientes.

Consulta de las estaciones de control implantadas en el sistema

Página: https://saica.chebro.es/query_estaciones_json.php
Parámetros GET: No admite
Información recuperada para cada una de las estaciones de control
Campo Tipo Descripción contenido
estacion_codigoNuméricoCódigo único asignado a la estación
estacion_descripcionTextoNombre identificativo
estacion_activaNumérico (0/1)¿Está activa? (Sí - 1 / No - 0)
estacion_longitudNuméricoUbicación: longitud (en grados)
estacion_latitudNuméricoUbicación: latitud (en grados)
estacion_comentarioTextoComentario general asociado

Consulta de las señales asociadas a las estaciones de control

Página: https://saica.chebro.es/query_tags_json.php
Parámetros GET. Admite el parámetro opcional estacion, cuyo valor debe corresponderse con el código de una de las estaciones del sistema.
Si la llamada se realiza sin parámetro, devuelve las señales configuradas para todas las estaciones de control.
Si el código de la estación suministrado es incorrecto, se devuelve un JSON con la parte de datos vacía.
Ejemplo de llamada (recuperar las señales para la estación de código 903):
https://saica.chebro.es/query_tags_json.php?estacion=903
Información recuperada para cada una de las señales asociadas
Campo Tipo Descripción contenido
tag_codigoNuméricoCódigo único asignado a la señal
tag_estacionNuméricoCódigo de la estación
tag_activoNumérico (0/1)¿Está la señal actualmente activa? (Sí - 1 / No - 0)
tag_descripcionTextoDescripción de la señal, incluyendo las unidades de medida

Consulta de las medidas quinceminutales correspondientes a una señal de una estación para un periodo de fechas determinado (versión 1)

Página: https://saica.chebro.es/query_data_json.php
Parámetros GET. Es obligatorio pasar a la llamada un parámetro relacionado con la señal:
  • el código de la señal (parámetro tag)
También hay que introducir criterios relacionados con la fecha:
  • la fecha inicial de consulta (parámetro fini)
  • la fecha final de consulta (parámetro ffin)
Ejemplo de llamada (recuperar los datos de la señal de código 7380 -conductividad de la estación 903 - Arga en Echauri, correspondientes a los días 17 y 18 de abril de 2023).
https://saica.chebro.es/query_data_json.php?tag=7380&fini=2023-04-17&ffin=2023-04-19
Las fechas deben suministrarse a la llamada en formato YYYY-MM-DD.
En la cadena de fecha se admite cualquier otro separador distinto del guión.
Solo se gestionan las fechas a nivel de día. Cualquier marca de hora adicional incluida no genera error, pero es ignorada.
Las fechas iniciales y finales se interpretan como fecha-hora a las 00:00:00, no como días completos.
Información recuperada para cada una de las medidas
Campo Tipo Descripción contenido
fechaFecha-horaFecha-hora a que corresponde la medida
valorNuméricoValor de la medida
validezNuméricoCódigo que indica el estado de validez asignado a la medida (0: pendiente de validar, 1: válido, >1: no válido

En el encabezado del fichero JSON se incluye información en formato descriptivo de la señal (estación a que corresponde, descripción de la señal y unidades de medida, así como el significado de los distintos códigos de estado de validación).

Consulta de las medidas quinceminutales o estadísticos (diarios / mensuales / anuales) correspondientes a una señal de una estación para un periodo de fechas determinado (versión 2)

Página: https://saica.chebro.es/query_data_json_v2.php
Parámetros GET. Es obligatorio pasar a la llamada un parámetro relacionado con la señal:
  • el código de la señal (parámetro tag)
También hay que introducir criterios relacionados con la fecha:
  • la fecha inicial de consulta (parámetro fini)
  • la fecha final de consulta (parámetro ffin)
De forma opcional puede añadirse el parámetro stats. Si el parámetro no aparece, o su valor es raw, se obtienen los resultados quinceminutales.
Otros valores permitidos son year (se obtienen cálculos anuales), month (se obtienen cálculos mensuales) y day (se obtienen cálculos diarios).
Ejemplo de llamada (recuperar los datos de la señal de código 7380 -conductividad de la estación 903 - Arga en Echauri, correspondientes a los días 17 y 18 de abril de 2023).
https://saica.chebro.es/query_data_json_v2.php?tag=7380&fini=2023-04-17&ffin=2023-04-19
Ejemplo de llamada (recuperar los estadísticos mensuales de la señal de código 7380 -conductividad de la estación 903 - Arga en Echauri, entre enero de 2010 y diciembre de 2020).
https://saica.chebro.es/query_data_json_v2.php?tag=7380&fini=2010-01-01&ffin=2020-12-31&stats=month
Las fechas deben suministrarse a la llamada en formato ISO 8601 (es válido el formato YYYY-MM-DD).
Explicación formato fechas ISO 8601
El formato de las fechas de salida es ISO 8601, incluyendo, para evitar incertidumbre, el desplazamiento horario respecto a la hora UTC.
Información recuperada para cada una de las medidas (raw: quinceminutales)
Campo Tipo Descripción contenido
dateFecha-horaFecha-hora a que corresponde la medida
valueNuméricoValor de la medida
validationNuméricoCódigo que indica el estado de validez asignado a la medida (0: pendiente de validar, 1: válido, >1: no válido

En el encabezado del fichero JSON, en las secciones meta y criteria se incluye información en formato descriptivo de la señal (estación a que corresponde, ubicación -latitud y longitud-, descripción de la señal y unidades de medida, así como el significado de los distintos códigos de estado de validación).
Información recuperada para cada una de las medidas (day: estadísticas diarias)
Campo Tipo Descripción contenido
dateFechaDía a que corresponden los cálculos (YYYY-MM-DD)
numDataNuméricoNúmero de medidas recibidas
numDataValidNuméricoNúmero de medidas consideradas como válidas (con las que se realiza el cálculo)
minimumNuméricoMínimo calculado entre las medidas válidas del periodo
maximumNuméricoMáximo calculado entre las medidas válidas del periodo
averageNuméricoPromedio calculado entre las medidas válidas del periodo

En el encabezado del fichero JSON, en la sección criteria se incluye información en formato descriptivo de la señal (estación a que corresponde, ubicación -latitud y longitud-, descripción de la señal y unidades de medida).
Información recuperada para cada una de las medidas (month: estadísticas mensuales)
Campo Tipo Descripción contenido
dateFechaAño-mes a que corresponden los cálculos (YYYY-MM)
numDataNuméricoNúmero de medidas recibidas
numDataValidNuméricoNúmero de medidas consideradas como válidas (con las que se realiza el cálculo)
minimumNuméricoMínimo calculado entre las medidas válidas del periodo
maximumNuméricoMáximo calculado entre las medidas válidas del periodo
averageNuméricoPromedio calculado entre las medidas válidas del periodo

En el encabezado del fichero JSON, en la sección criteria se incluye información en formato descriptivo de la señal (estación a que corresponde, ubicación -latitud y longitud-, descripción de la señal y unidades de medida).
Información recuperada para cada una de las medidas (year: estadísticas anuales)
Campo Tipo Descripción contenido
dateFechaAño a que corresponden los cálculos (YYYY)
numDataNuméricoNúmero de medidas recibidas
numDataValidNuméricoNúmero de medidas consideradas como válidas (con las que se realiza el cálculo)
minimumNuméricoMínimo calculado entre las medidas válidas del periodo
maximumNuméricoMáximo calculado entre las medidas válidas del periodo
averageNuméricoPromedio calculado entre las medidas válidas del periodo

En el encabezado del fichero JSON, en la sección criteria se incluye información en formato descriptivo de la señal (estación a que corresponde, ubicación -latitud y longitud-, descripción de la señal y unidades de medida).
En la versión actual de las consultas no se han introducido restricciones, ni a nivel de identificación de usuario, ni de control de volumen de datos consultados.
En el caso de que la monitorización del sistema detectara usos que pudieran considerarse abusivos, o que la utilización de estas consultas creciera hasta llegar a afectar el rendimiento general del sistema, en posteriores versiones se implementarían controles, de una u otra naturaleza dependiendo de las anomalías detectadas (asignación de key a usuarios, limitación en volumen de datos, en número de consultas, control de direcciones IP, ...)

Fecha de actualización: junio de 2024