Proyecto

General

Perfil

Api de Informes

La demanda de informes sobre la información contenida en GONG provoca que sea constante el trabajo de desarrollo para la elaboración, ajuste y modificación de dichos informes.

Además de esto, la disparidad en los informes generados provoca que aumente el número de estos haciendo muy difícil determinar cuáles de ellos están en uso o han sido abandonados.

Como alternativa a esta generación programática de informes se propone la utilización de una herramienta externa para la generación de estos de forma que el trabajo de GONG quede reducido a ofrecer las fuentes de datos que permitan la construcción de estos.

Solución funcional

Para conectarse desde una herramienta externa se habilitarán una serie de peticiones API securizadas con respuesta en formato JSON.

Estas peticiones están securizadas mediante la utilización de un Bearer token generado desde la interfaz de Gong a nivel de usuario, accesible desde la opción de datos personales.

Desde la herramienta externa se añadirá un origen de datos utilizando la petición securizada que se desee. Ejemplo de petición con curl:

curl --location 'http(s)://<INSTANCIA_GONG>/api_reports/v1/agents' \
--header 'Authorization: Bearer <PERSONAL_ACCESS_TOKEN>'

Implementación técnica

Generación de el Personal Access Token de Usuario para acceder a la API de informes desde:

http(s)://<INSTANCIA_GONG>/datos_personales

Lista de peticiones securizadas de la API de informes implementadas en el ámbito url:
http(s)://<INSTANCIA_GONG>/api_reports/v1/...

Documentación sobre peticiones de API informes en:
http(s)://<INSTANCIA_GONG>/api-docs/

Ejemplo:

*Agents hace referencia a las oficinas.
Ejemplo: https://gesproei.oei.es/api_reports/v1/agents - el resultado será la(s) oficina(s) a la(s) cual(es) tenemos acceso.

*Agreements hace referencia a los acuerdos
-Ejemplo: https://gesproei.oei.es/api_reports/v1/agreements
https://gesproei.oei.es/api_reports/v1/agents/7/agreements (el valor 7 hace referencia a la SG (España) por ende, el resultado sería todos los acuerdos correspondientes a la SG.

*Credentials hace referencia a las credenciales

Permisos necesarios en GesprOEI

Para que un usuario pueda tener acceso a la API de informes hay que activar en sus propiedades la sección de informes API:

Para poder obtener todos los acuerdos hay que activar en las propiedades de usuario la sección de acuerdos:

Para poder obtener los acuerdos de una oficina el usuario debe tener un rol en la oficina que tenga acceso de lectura al controlador 'acuerdo' del menú 'configuracion_agente'

Ejemplo uso Api informes mediante Power BI Desktop

Los pasos que se deben seguir para configurar el acceso a datos con una API son:

Paso 1. Dentro de la aplicación debemos pulsar, en la cinta de botones, el botón 'Obtener datos'

Paso 2. Se abrirá la ventana 'Obtener datos' y debemos seleccionar la opción 'Web', posteriormente pulsamos el botón 'Conectar'.

Paso 3. En la ventana "De web" que se abre, seleccionar el modo de "Uso avanzado", informando la url de la petición a realizar y en "Parámetros de encabezado de solicitud HTTP" en el primer cuadro escribir "Authorization" y en el segundo cuadro escribir "Bearer (espacio) y pegar el <Token>", pulsando posteriormente en el botón "Aceptar".

Paso 4. Para obtener el "Token" vamos al GesprOEI y clicamos en nuestro usuario (Imagen 1) y aparecerá una ventana donde obtendremos nuestro token, le damos en el botón de copiar (Imagen 2).

Paso 5. En la ventana "Acceder a contenido web" clicamos en el botón "Conectar".

Paso 6. En la ventana "Editor de Power Query", realizamos las modificaciones (sólo si es necesario) y luego clicamos en el botón "Cerrar y Aplicar".

Listo, podemos empezar con la construcción de nuestro informe