API de Workflow Analytics

Prev Next


La API de Workflow Analytics simplifica la integración de datos de flujo de trabajo al proporcionar datos que pueden leer y utilizar directamente herramientas de análisis como Microsoft Power BI, así como soluciones de integración de DocuWare. Estas permiten a los usuarios extraer, analizar y visualizar información clave de sus procesos de negocio.

La API de Workflow Analytics aún no está disponible para DocuWare On-Premises.

Características clave de la API de Workflow Analytics

  • Análisis de apoyo para la optimización de procesos, identificación de cuellos de botella, y gestión de la carga de trabajo y recursos.

  • Proporcione datos en formato JSON para desarrolladores, lo que permite una integración perfecta y una manipulación de datos más sencilla.

  • Proporcione datos en formato CSV para una compatibilidad inmediata con las herramientas de análisis más comunes.

  • Reduzca la necesidad de middleware, mientras se beneficia de los estándares de cumplimiento y seguridad de DocuWare Cloud.

  • Asegúrese de que los datos persistan por flujo de trabajo durante 90 días.

  • Actualice automáticamente los datos cada 24 horas.

  • Maneje de manera eficiente grandes conjuntos de datos para un rendimiento óptimo.

Autenticación y autorización

Autenticación

Para utilizar la API de Workflow Analytics, debe iniciar sesión en DocuWare (plataforma) y acceder a la API con un token de portador OAuth2.
Más información sobre cómo autenticarse en DocuWare

Autorización

Para acceder a los datos de la API de Workflow Analytics, el usuario autenticado debe tener el rol de «Diseñador» o «Controlador» para el flujo de trabajo especificado del que se solicitan los datos.

Activar la recopilación de datos de Workflow Analytics

Para utilizar Workflow Analytics, primero debe habilitarse la recopilación de datos para cada flujo de trabajo específico. Debe especificar para qué flujos de trabajo desea activar la recopilación de datos y determinar el tipo de datos (proyecciones de datos) que deben recopilarse para cada flujo de trabajo.

Documentación de la API

  • Configuración de análisis: una colección de terminales para verificar, activar y desactivar proyecciones de datos para flujos de trabajo específicos.

  • Workflow Analytics: una colección de terminales para recuperar datos de las proyecciones de datos de flujos de trabajo específicos.

Puede acceder a la documentación de la API en la URL: …/DocuWare/Workflow/Analytics/index.html

Proyecciones de datos

Para facilitar la recopilación de datos relevantes, se proporcionan las denominadas proyecciones de datos. Puede acceder a cada tipo de proyección de datos a través de un terminal específico.

Las proyecciones de datos son conjuntos de datos definidos destinados a proporcionar datos para un fin específico.

Tipos de proyección de datos

Actualmente, están disponibles los siguientes tipos de proyección de datos:

Tipo de proyección de datos


Descripción


TaskExecutionTimes

Devuelve la duración de cada tarea procesada, desde que se asignó hasta que un usuario la confirmó.

TaskDecisions

Devuelve la decisión elegida para cada tarea procesada, incluyendo la fecha/hora en que se tomó la decisión.

TaskDecisionUsers

Devuelve el usuario que eligió la decisión para cada tarea procesada, incluyendo la fecha/hora en que se tomó la decisión.

TaskFormFieldData

Devuelve los datos enviados (si están disponibles) con la decisión elegida para cada tarea procesada.

TaskReactionTimes

Devuelve la duración de cada tarea, desde que se asignó hasta que un usuario la recogió (marcada como leída).

WorkflowErrorExits

Devuelve las salidas de error (si están disponibles) que ha tomado el flujo de trabajo.

WorkflowRuntimes

Devuelve la duración de la instancia del flujo de trabajo, incluidas las fechas y horas de inicio y finalización, así como el estado:
En ejecución, Completado, Fallido, Detenido

WorkflowGlobalVariablesChanges

Devuelve los datos que se han almacenado en variables globales (si están disponibles) a lo largo del flujo de trabajo, incluida la fecha/hora de almacenamiento.

Persistencia de datos

Una vez que se habilita una proyección de datos, la recopilación de datos comienza inmediatamente. El estado de cada proyección de datos indicará uno de los siguientes:

  • En curso: la recopilación de datos está actualmente en curso.

  • Listo: los datos se han recopilado y están disponibles para su uso.

Los datos estarán disponibles en un plazo de 24 horas después de que se active una proyección. Cada proyección de datos proporciona acceso a los datos de todas las instancias de flujo de trabajo activas, junto con los datos de las instancias completadas en los últimos 90 días. Las instancias de flujo de trabajo completadas hace más de 90 días no estarán disponibles.

Formatos de datos

Cada proyección de datos admite dos tipos de formatos de datos que se pueden solicitar proporcionando el parámetro de consulta format= (valor predeterminado: JSON)

Al ofrecer formatos JSON y CSV, nos aseguramos de que nuestras proyecciones de datos satisfagan las diversas necesidades de desarrolladores y usuarios finales por igual.

JSON

  • Propósito: JSON está diseñado para satisfacer las necesidades de integradores y desarrolladores.

  • Uso: produce un conjunto de datos estándar que los desarrolladores pueden transformar e integrar fácilmente en sus aplicaciones y soluciones.

CSV

  • Propósito: CSV está pensado para los usuarios que desean utilizar directamente el conjunto de datos en aplicaciones de análisis/BI u hojas de cálculo.

  • Uso: similar a una exportación CSV de una lista de resultados, produce un conjunto de datos que suele ser compatible con este tipo de aplicaciones. Además, ofrece otras opciones de personalización, como la codificación y los ajustes de zona horaria.

Parámetros de consulta adicionales para el formato CSV

csvIsUtc=

  • Propósito: obtener fechas en UTC y formato predeterminado o en la zona horaria y formato de fecha especificados en la configuración de la organización.
  • Valor predeterminado: false. Si se establece en true, las fechas se proporcionarán en UTC y en el formato predeterminado

encodingName=

  • Propósito: especificar la codificación de los datos. Codificaciones compatibles: UTF8, UTF16, ANSI, ASCII, Big5, ShiftJIS, cirílico
  • Valor predeterminado: UTF8

Cómo utilizar la API

Habilite las proyecciones de datos para flujos de trabajo específicos

Requisitos:

  • Token de portador de OAuth2

  • JSON: Payload: (Obligatorio)

    • FileCabinetId (cadena, obligatorio); el GUID del archivador.

    • WorkflowNamesList (matriz de cadenas, obligatorio): lista de nombres de flujos de trabajo que se van a activar

      • Puede obtener los nombres de los flujos de trabajo (Nombre) desde:.../DocuWare/Platform/Workflow/DesignerWorkflows

    • ProjectionTypesList (matriz de cadenas, obligatorio): Lista separada por comas de nombres de flujos de trabajo para los que desea habilitar las proyecciones de datos.

Terminal de API:

POST /DocuWare/Workflow/Analytics/Configuration/v1/EnableProjections

Solicitud de ejemplo:

{
  "FileCabinetId": "3938dcdd-d2c9-467a-b01a-5daf96c0ea0c",
  "WorkflowNamesList": [
    "Cuentas por pagar"
  ],
  "ProjectionTypesList": [
    "WorkflowRuntime","GeneralTaskExecutionTimes"
  ]
}

Posible respuesta:

  • 200 OK: las proyecciones de datos se han activado correctamente.

{
  "HasChanges": true,
  "OperationSummaries": [
    {
      "WorkflowName": "Cuentas por pagar",
      "WorkflowId": "bf8d21f9-4b0d-481e-95a2-e7f014adf3b7",
      "ProjectionType": "WorkflowRuntime",
      "Message": "Éxito"
    }
  ]
}
  • 400 Solicitud incorrecta: datos de entrada no válidos.

  • 401 No autorizado: autenticación no válida o no disponible.

  • 404 No encontrado: el flujo de trabajo o archivador especificado no existe.

Compruebe las proyecciones de datos activadas

Requisitos:

Terminal de API:

GET /DocuWare/Workflow/Analytics/Configuration/v1

Posible respuesta:

  • 200 OK

[
  {
    "WorkflowId": "bf8d21f9-4b0d-481e-95a2-e7f014adf3b7",
    "WorkflowName": "Cuentas por pagar",
    "ProjectionType": "WorkflowRuntime",
    "LastEventTimestamp": "/Date(1726493274127+0000)/",
    "ProjectionProcessingState": "Listo"
  }
]
  • 400 Solicitud incorrecta: datos de entrada no válidos.

  • 401 No autorizado: autenticación no válida o no disponible.

  • 404 No encontrado: el flujo de trabajo o archivador especificado no existe.

  • 500 Error interno del servidor

Obtener datos de una proyección de datos

Requisitos:

  • Token de portador de OAuth2

  • WorkflowId (string uuid, obligatorio): ID del flujo de trabajo

    • Obtenga el ID de flujo de trabajo (Id) de:.../DocuWare/Platform/Workflow/DesignerWorkflows

  • formato (cadena, opcional): CSV o JSON. JSON es el formato predeterminado.

  • csvIsUtc (booleano, opcional)

  • encodingName (cadena, opcional): Codificación del archivo CSV

Terminal de API:

Por ejemplo: GET /DocuWare/Workflow/Analytics/v1/{workflowId}/WorkflowRuntime

Posible respuesta:

  • 200 OK

[
  {
    "workflowVersion": 1,
    "docId": 18,
    "runtime": "00:00:34.6158214",
    "state": "Completado",
    "startTime": "/Date(1726493198284)/",
    "timeOfCompletion": "/Date(1726493232900)/"
  }
]
  • 401 No autorizado: autenticación no válida o no disponible.

  • 500 Error interno del servidor

Terminales de API adicionales relacionados con el flujo de trabajo

Los siguientes terminales forman parte de la API de la plataforma DocuWare, no de la API de Workflow Analytics. Mientras que la API de Workflow Analytics se centra en datos históricos, estos terminales proporcionan datos en tiempo real. Ofrecen información esencial relacionada con el flujo de trabajo que apoya y complementa los conocimientos de la API de Workflow Analytics.

  • GET /DocuWare/Platform/Workflow/DesignerWorkflows

    • Devuelve una lista de todos los flujos de trabajo publicados en los que el usuario actual tiene permisos de diseñador.

  • GET /DocuWare/Platform/Workflow/Workflows

    • Proporciona una lista de todos los flujos de trabajo en los que el usuario actual tiene tareas asignadas abiertas.

  • GET /DocuWare/Platform/Workflow/Workflows/{workflowId}/Tasks

    • Recupera todas las tareas actualmente asignadas en el flujo de trabajo especificado, identificadas por workflowId desde la perspectiva del usuario actual.

  • GET DocuWare/Platform/Workflow/ControllerWorkflows/{workflowId}/Tasks

    • Devuelve una lista de todos los flujos de trabajo en los que el usuario actual tiene tareas asignadas, desde la perspectiva de un Controlador de flujos de trabajo.

  • GET DocuWare/Platform/Workflow/ControllerWorkflows/{workflowId}/Tasks

    • Recupera todas las tareas actualmente asignadas a los usuarios en el flujo de trabajo especificado, identificadas por workflowId desde la perspectiva de un Controlador de flujos de trabajo, incluyendo el ID de instancia, la fecha de recepción y el nombre de la tarea.