Integraciones

Operaciones con Indexación

Introducción

A continuación se resaltan las operaciones básicas que se pueden realizar por API respecto al buscador, sus filtros y colecciones y para la indexación del mismo. Todas las llamadas se encuentran en Minerva. Para más detalles de los endpoints, se puede consultar Swagger

Búsqueda filtrada

Permite hacer búsqueda en SolR con diferentes filtros.

Consiste en una llamada POST https://{{host}}/gateway/api/v1/indexer/{target}/search incluyendo en el body los parámetros de búsqueda.

En ese endpoint es muy recomendable incluir la cabecera de “x-language”, ya que los objetos siempre contienen valores traducidos y valores multilenguaje. Si no se incluye vendrán en el idioma por defecto de la aplicación.

Indexar un objeto

Permite indexar un objeto (ENTIDAD o RELACIÓN) en particular para la colección KERNO y automáticamente siempre generará un SNAPSHOT.

Consiste en la llamada:

POST https://{{host}}/gateway/api/admin/minerva/index

Obtener todos los documentos

Permite obtener todos los documentos indexados en la colección de Kerno de Anjana.

Consiste en la llamada:

GET https://{{host}}/gateway/api/admin/minerva/kerno/getAll

En ese endpoint es muy recomendable incluir la cabecera de “x-language”, ya que los objetos siempre contienen valores traducidos y valores multilenguaje. Si no se incluye vendrán en el idioma por defecto de la aplicación.

Si, por el contrario, se especifica un idioma que no existe en el sistema los campos internacionales no aparecerán en los datos devueltos.

Para obtener todos los documentos correctamente es necesario realizar la llamada mediante un comando curl indicando un fichero donde guardar la respuesta. Ejemplo:

curl -X GET ^  https://dev44.anjanadata.org/gateway/api/admin/minerva/kerno/getAll \
-H "accept: */*" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJwcnVlYmEucHJ1ZWJhIiwiYXVkIjoid2ViIiwicm9sZXMiOiJST0xFX0FTU09DSUFURURfQlVTSU5FU1NfUFJPQ0VTU0VTX0NIQU5HRV9TVE…." \
  -o C:\Users\user\Escritorio\file.json


Obtener todos los snapshots de un objeto

Permite obtener todos los snapshots de un objeto.

Consiste en la llamada:

GET https://{{host}}/gateway/api/admin/minerva/snapshots/getAll/{objectSubType}/{idObject}

En ese endpoint es muy recomendable incluir la cabecera de “x-language”, ya que los objetos siempre contienen valores traducidos y valores multilenguaje. Si no se incluye vendrán en el idioma por defecto de la aplicación.

Si, por el contrario, se especifica un idioma que no existe en el sistema los campos internacionales no aparecerán en los datos devueltos.


Creación de la configuración de un filtro

Este endpoint permitirá crear los distintos filtros a utilizar en Anjana según los datos provistos

POST https://{{host}}/gateway/api/admin/minerva/create/filterConf


Actualización de la configuración de un filtro

Este endpoint va a permitir actualizar el filtro indicado con la información provista.

PATCH https://{{host}}/gateway/api/admin/minerva/update/filterConf


Actualizado de collection

Este endpoint realiza un actualizado de la colección. Esto significa que primero la borrará, luego creará los campos (tanto los básicos de la colección como los que se encuentren en la tabla attribute_definition de anjana).

Este endpoint se puede usar para cualquier colección de Anjana.

El endpoint es:

PUT https://{{host}}/gateway/api/admin/minerva/collection/update


Borrado de un campo de una colección

Para el borrado de un campo es necesario borrar todos los datos de la colección, por lo que primero borramos todos los datos y después se borra el campo, por lo tanto, si se quiere volver a tener la colección con los datos cargados hay que llamar el endpoint de indexAll.

El endpoint es:

DELETE https://{{host}}/gateway/api/admin/minerva/collection/delete-field/STATE/KERNO