Requisitos previos
Antes de empezar, confirma que:- Reporter está en ejecución y puedes autenticarte con su API.
- Un operador configuró al menos una fuente de datos para los datos que consulta tu plantilla.
- Tienes un archivo
.tplque corresponde al formato de salida deseado. Para la salida en PDF, escribe la plantilla como HTML. Consulta Ejemplos de plantillas y la referencia de plantillas.
Gestionar plantillas
Reporter usa los archivos.tpl subidos para definir el contenido y el diseño del informe.
Subir una plantilla
Llama a Subir una plantilla como una solicitud multipart con los tres campos obligatorios:template: el archivo.tpl.outputFormat: el formato del archivo generado, comoHTML,PDF,XML,CSVoTXT.description: una descripción legible de la plantilla.
Mantener las plantillas existentes
Usa los endpoints de plantillas para:- Listar plantillas.
- Consultar los detalles de una plantilla.
- Actualizar una plantilla.
- Eliminar una plantilla.
Generar un informe con filtros
Llama a Crear un informe con los dos campos obligatorios:templateId: el identificador que se devolvió al subir la plantilla.filters: las condiciones agrupadas por fuente de datos, tabla y campo.
id. Guarda este valor como REPORT_ID para consultar el estado de generación y recuperar el resultado.
Consulta Filtrado avanzado para conocer los operadores admitidos y la estructura de los filtros.
Descubrir los esquemas de las fuentes de datos
Inspecciona las fuentes de datos configuradas antes de crear plantillas o interfaces de filtro dinámicas:- Listar fuentes de datos devuelve una página de conexiones registradas sin credenciales.
- Consultar una fuente de datos devuelve la configuración de una conexión según su
dataSourceId. Las credenciales permanecen ocultas. GET /v1/data-sources/{dataSourceId}/schemainspecciona las tablas o colecciones en vivo y sus campos tipados.
DATASOURCE_* al iniciar. Los despliegues multi-tenant crean entradas por tenant a través de la API.
Interpretar los estados y errores del informe
Llama a Consultar el estado de un informe conREPORT_ID.
Trata solo
Finished como descargable. Un resultado Partial requiere investigación aunque Reporter haya generado algunos datos.
Verificar y descargar el informe
Cuando el estado esFinished:
- Llama a Descargar un informe con
REPORT_ID. - Confirma que la respuesta tiene el tipo de contenido esperado y el encabezado
Content-Disposition. - Abre el archivo y verifica que sus datos y su diseño correspondan a la plantilla y a los filtros.
Finished.
Solución de problemas
Configuración del operador
Los siguientes ajustes de despliegue son para operadores. Los usuarios de la aplicación no los necesitan para el flujo de generación de informes.Configurar el almacenamiento de objetos
Reporter guarda las plantillas y los informes generados en un bucket compatible con S3. Usa los prefijostemplates/ y reports/. Reporter admite AWS S3, MinIO y SeaweedFS.
AWS S3
AWS S3
MinIO (desarrollo local)
MinIO (desarrollo local)
SeaweedFS (desarrollo local)
SeaweedFS (desarrollo local)
S3 no admite TTL por objeto. Configura las políticas de ciclo de vida del bucket de S3 si los informes generados deben expirar automáticamente.
Configurar fuentes de datos externas
ConfiguraDATASOURCE_CRED_ENC_KEY con una clave AES hexadecimal persistente antes de iniciar Reporter. Genera una clave de 32 bytes con openssl rand -hex 32. El Manager falla al iniciar si la clave falta o tiene un formato inválido. Mantén la misma clave disponible para cada runtime de Reporter que lea el registro, porque las contraseñas guardadas están cifradas con ella.
Usa la API para el ciclo de vida normal de las fuentes de datos. En modo multi-tenant, Reporter omite la siembra por variables de entorno y cada tenant crea sus propias entradas a través de la API. En modo de un solo tenant, puedes sembrar entradas de PostgreSQL o MongoDB al iniciar con variables DATASOURCE_<NAME>_*:
Para una fuente cuyo
CONFIG_NAME es midaz_onboarding:
CONFIG_NAME:
CONFIG_NAME. Por ejemplo, external_db corresponde a DATASOURCE_EXTERNAL_DB_SCHEMAS:
database:schema.table en las plantillas y schema.table como clave de tabla en el filtro:
public.
El Manager carga la configuración de la fuente de datos y se conecta bajo demanda. El Worker se conecta durante el inicio y reintenta las fuentes no disponibles. Puede seguir funcionando con capacidad reducida cuando una fuente permanece no disponible.

