Introducción¶
Bienvenido a la documentación de la API de BigOpenApi (BOA).
Esta guía se encuentra dividida en los siguientes contenidos:
- BigOpenApi (BOA)
- Introducción y explicación de lo que es BOA.
- Objeto de Respuesta
- Información sobre el objeto de respuesta devuelto por los servicios de la API.
- Descripción de los servicios
- Descripción y uso de los servicios que ofrece BOA.
BigOpenApi (BOA)¶
BigOpenApi ofrece una serie de servicios REST y Servlets que proveen información de los recursos alojados en el entorno BigData de la plataforma DATUNE.
Los servicios que se ofrecen son los siguientes:
- mostrarRecursos
- describirRecurso
- probarRecurso
- contarResultados
- filtrarResultados
- buscarEnUnRadio
- buscarEnUnPoligono
- buscarEnUnRectangulo
Objeto de Respuesta¶
El resultado de la petición será en un objeto en formato JSON (http://www.json.org)
Este objeto de respuesta seguirá la siguiente estructura:
{
“Result”:[{
“col1”:”valor1”
},{
“col2”:”valor2”
}
...
],
“NumResult”:”0”,
“Error”:{
“Código”:”xx”,
“Descripcion”:”Descripción del error”
}
}
- El elemento Result contendrá un array de objetos JSON con los resultados de la consulta. En caso de que no se hayan encontrado resultados, o surja algún error, el Array no contendrá ningún elemento.
- El elemento NumResult tendrá como valor la longitud del array contenido en el elemento Result.
- El elemento Error contiene un objeto en formato JSON con otros dos elementos, Código y Descripción. Estos valores podrán ser consultados en éste documento en la sección de catálogos. Si la ejecución del servicio fuera satisfactoria, el elemento Error estará vacío.
Descripción de los servicios¶
A continuación se describen los servicios implementados
mostrarRecursos | |
---|---|
Descripción | Servicio que devuelve una lista con los nombres de los recursos disponibles.
|
Tipo servicio | REST
|
Parámetros | |
Resultado | Devuelve un array con los diferentes recursos disponibles.
Formato:
|
Ejemplo de llamada | http://<servidor>:9090/BigOpenApi/mostrarRecursos |
describirRecursos | |
---|---|
Descripción | Servicio que devuelve la estructura del recurso solicitado.
|
Tipo servicio | REST
|
Parámetros |
|
Resultado | Devuelve un array con los diferentes recursos disponibles.
Formato:
|
Ejemplo de llamada | http://<servidor>:9090/BigOpenApi/describirRecurso?dsTabla=<nombreRecurso> |
probarRecursos | |
---|---|
Descripción | Servicio que devuelve 100 elementos del recurso solicitado de forma rápida,
para poder comprobar el tipo de información contenida en el recurso.
Si la ejecución es correcta, la respuesta se realizará mediante un archivo de
texto plano con el objeto Resultado en formato JSON. En cambio, en caso
de error se devolverá, en forma de mensaje, el objeto JSON de respuesta
informando del error.
|
Tipo servicio | Servlet
|
Parámetros |
|
Resultado | Array en formato JSON con los registros contenidos en el recurso.
Formato:
|
Ejemplo de llamada | http://<servidor>:9090/BigOpenApi/probarRecurso?dsTabla=<nombreRecurso>&comprimir=true |
contarResultados | |
---|---|
Descripción | Devuelve el número de registros coincidentes para los campos y expresiones
regulares enviadas como parámetros para un recurso. Este servicio permite
prever la cantidad de información que sería devuelta por el método
filtrarResultados para un mismo filtro.
|
Tipo servicio | REST
|
Parámetros | Permite enviar una lista de campos y expresiones regulares a cumplir. Los
campos y expresiones regulares se validarán en orden, es decir, el primer
parámetro campo se validará con la primera expresión regular enviada. Por
tanto, deberá existir el mismo número de campos como de expresiones
regulares.
|
Resultado | Array en formato JSON con el número de registros coincidentes con el filtro.
Formato:
|
Ejemplo de llamada | http://<servidor>:9090/BigOpenApi/contarResultados?dsTabla=<nombreRecurso>&dsCampo=<campo1>®ex=<regex1>&dsCampo=<campo2>®ex=<regex2> |
filtrarResultados | |
---|---|
Descripción | Devuelve los registros coincidentes para los campos y expresiones regulares
enviadas como parámetros para un recurso.
Si la ejecución es correcta, la respuesta se realizará mediante un archivo de
texto plano con el objeto Resultado en formato JSON. En cambio, en caso
de error se devolverá, en forma de mensaje, el objeto JSON de respuesta
informando del error.
|
Tipo servicio | Servlet
|
Parámetros | Permite enviar una lista de campos y expresiones regulares a cumplir. Los
campos y expresiones regulares se validarán en orden, es decir, el primer
parámetro campo se validará con la primera expresión regular enviada. Por
tanto, deberá existir el mismo número de campos como de expresiones
regulares.
|
Resultado | Array en formato JSON con los registros coincidentes con el filtro
Formato:
|
Ejemplo de llamada | `http://<servidor>:9090/BigOpenApi/filtrarResultados?dsTabla=<nombreRecurso>&dsCampo=<campo1>®ex=<regex1>&dsCampo=<campo2>®ex=<regex2>&comprimir=true |
buscarEnUnRadio | |
---|---|
Descripción | Este servicio permite geolocalizar registros contenidos en un radio para
aquellos recursos que tengan disponible campos de coordenadas geográficas
(latitud y longitud).
Si la ejecución es correcta, la respuesta se realizará mediante un archivo de
texto plano con el objeto Resultado en formato JSON. En cambio, en caso
de error se devolverá, en forma de mensaje, el objeto JSON de respuesta
informando del error.
|
Tipo servicio | Servlet
|
Parámetros |
|
Resultado | Array en formato JSON con los registros contenidos en el área solicitada.
Formato:
|
Ejemplo de llamada | http://<servidor>:9090/BigOpenApi/buscarEnUnRadio?dsTabla=<nombreRecurso>¢ro=<latitud1>,<longitud1>&metros=<númeroMetros>&fecha=<yyyyMMdd>&comprimir=true |
buscarEnUnPoligono | |
---|---|
Descripción | Este servicio permite geolocalizar registros contenidos en un polígono para
aquellos recursos que tengan disponible campos de coordenadas geográficas
(latitud y longitud).
Si la ejecución es correcta, la respuesta se realizará mediante un archivo de
texto plano con el objeto Resultado en formato JSON. En cambio, en caso
de error se devolverá, en forma de mensaje, el objeto JSON de respuesta
informando del error.
|
Tipo servicio | Servlet
|
Parámetros | Permite enviar una lista de coordenadas que marcarán los vértices del polígono
solicitado. Las coordenadas deberán ser enviadas en el orden en el que se
quiere que se unan los puntos.
|
Resultado | Array en formato JSON con los registros contenidos en el polígono solicitado.
Formato:
|
Ejemplo de llamada | http://<servidor>:9090/BigOpenApi/buscarEnUnPoligono?dsTabla=<nombreRecurso>&coordenadas=<latitud1>,<longitud1>&coordenadas=<latitud2>,<longitud3>&coordenadas=<latitud2>,<longitud3>&fecha=<yyyyMMdd>&comprimir=true |
buscarEnUnRectangulo | |
---|---|
Descripción | Este servicio permite geolocalizar registros contenidos en un rectángulo para
aquellos recursos que tengan disponible campos de coordenadas geográficas
(latitud y longitud).
Si la ejecución es correcta, la respuesta se realizará mediante un archivo de
texto plano con el objeto Resultado en formato JSON. En cambio, en caso
de error se devolverá, en forma de mensaje, el objeto JSON de respuesta
informando del error.
Para búsquedas geoespaciales se recomienda hacer uso de este servicio por su
agilidad frente a buscarEnUnRadio y buscarEnUnPoligono
|
Tipo servicio | Servlet
|
Parámetros | Permite enviar dos coordenadas que marcarán los vértices opuestos del rectángulo
solicitado. No es necesario enviar las coordenadas en un orden concreto
|
Resultado | Array en formato JSON con los registros contenidos en el polígono solicitado.
Formato:
|
Ejemplo de llamada | http://<servidor>:9090/BigOpenApi/buscarEnUnRectangulo?dsTabla=<nombreRecurso>&puntoUno=<latitud1>,<longitud1>&puntoDos=<latitud2>,<longitud2>&fecha=<yyyyMMdd>&comprimir=true |