Skip to main content
Formato de error Reporter devuelve los errores como problem details de RFC 9457 con el tipo de medio application/problem+json:
Definiciones de los campos
  • type – Un URI que identifica el error en el catálogo de errores de Lerian. Se construye como https://errors.lerian.studio/v1/<code>.
  • title – El texto del estado HTTP (por ejemplo, Bad Request).
  • status – El código de estado HTTP.
  • detail – Orientación detallada para ayudarte a resolver el error. En las respuestas 5xx, Reporter siempre sanea el detalle a internal error, de modo que ninguna causa interna se filtra. Usa code para ramificar de forma programática.
  • code – Un identificador estable y único para el error (RPT-NNNN). Útil para el manejo programático y las solicitudes de soporte.
  • errors – Lista opcional de detalles de validación por campo, cada uno con un message y una location.
Algunos mensajes contienen marcadores de posición como %v o %s; Reporter los reemplaza por los valores específicos de tu solicitud.

Errores de Reporter


Los siguientes errores pueden ocurrir al interactuar con los endpoints de Reporter. Consulta las tablas a continuación para conocer los posibles códigos de error, su significado y cómo resolverlos.

400: Errores de validación


RPT-0075: CRM Organization Scope Unresolved

RPT-0075 es una protección de tipo fail-closed para las plantillas que mapean plugin_crm. Reporter no guarda ni ejecuta un mapeo de CRM sin ámbito definido porque eso podría exponer registros entre organizaciones de Midaz. Puede ocurrir al importar, crear o actualizar una plantilla de CRM, y cuando un worker resuelve una plantilla de CRM ya guardada. No trates este código como prueba de que falta una variable de entorno. También ocurre cuando Reporter no puede encontrar plugin_crm en el registro de fuentes de datos. Primero confirma que la plantilla mapea plugin_crm, luego revisa la configuración del Manager y del worker, la disponibilidad del registro y los ajustes de conexión del CRM que no son sensibles. Para un despliegue de un solo tenant, configura el bloque completo DATASOURCE_CRM_*, incluido DATASOURCE_CRM_MIDAZ_ORGANIZATION_ID, y mantén la contraseña del CRM y CRYPTO_HASH_SECRET_KEY_CRM / CRYPTO_ENCRYPT_SECRET_KEY_CRM en Secrets. Esas claves criptográficas deben ser las mismas que usa el CRM, y DATASOURCE_CRED_ENC_KEY debe mantenerse estable. Al iniciar el Manager, la semilla de fuente de datos reservada puede completar un metadata.midazOrganizationId ausente o vacío; nunca sobrescribe un valor persistido que no esté vacío. No crees ni apliques PATCH a plugin_crm a través de la API común de fuentes de datos. Si un ID de organización persistido y no vacío es incorrecto, o si el despliegue es multi-tenant (donde se omite la semilla de entorno), detén la recuperación genérica y usa la ruta de ingeniería específica del tenant. Después de un cambio aprobado, importa o guarda la plantilla, genera un informe, confirma que los campos del CRM se descifran y verifica el aislamiento entre organizaciones. Consulta Reporter mediante Helm para conocer los valores del chart.
El mensaje de RPT-0003 menciona html, csv y xml, pero la API acepta cinco formatos de salida: HTML, PDF, CSV, XML y TXT. Consulta Cargar plantilla.

404: No encontrado


409: Conflictos


412: Falló la condición previa


422: No procesable


429: Demasiadas solicitudes


500: Errores del servidor


Toda falla inesperada durante el manejo síncrono de un endpoint se presenta como HTTP 500. La respuesta lleva code: RPT-0018 y un detalle saneado de internal error. Las causas internas nunca se filtran en el cuerpo de la respuesta. Las fallas asíncronas del worker y de la generación de informes, en cambio, siguen los estados del informe y los metadatos descritos a continuación. Reporter no las devuelve a la solicitud original como HTTP 500.

Errores de generación de informes (asíncronos)


La generación de informes se ejecuta de forma asíncrona en el worker. La solicitud HTTP original nunca recibe una sección de extracción de datos fallida. El informe termina con estado Error cuando fallan todas las secciones, o Partial cuando fallan algunas. En cualquiera de los dos casos, metadata.error_code es RPT-0060. Las claves de metadata.sections son nombres de bases de datos. Cada entrada fallida contiene solamente su error_code clasificado (RPT-0018 para una falla sin tipo). Otras fallas del worker terminan con estado Error y un metadata.error_code seguro que no es RPT: report_generation_failed, report_generation_timeout o report_generation_canceled. Estas fallas no tienen un mapa sections y no conservan el código RPT subyacente. | RPT-0034 | Error de comunicación con SeaweedFS | Error de comunicación con el almacenamiento de archivos al descargar o cargar un archivo. Inténtalo de nuevo. | | RPT-0058 | Fuente de datos no disponible | La fuente de datos no está disponible en este momento. Los resultados pueden estar incompletos. | | RPT-0060 | Falló el trabajo de extracción | El trabajo de extracción falló. Inténtalo de nuevo más tarde o contacta a soporte. | | RPT-0061 | Falló la generación de la plantilla | No fue posible generar la plantilla con los datos proporcionados. Este es un error permanente y no se resolverá al reintentar. | | RPT-0063 | Clave hash del CRM no configurada | La clave hash del CRM no está configurada. | | RPT-0064 | Clave de cifrado del CRM no configurada | La clave de cifrado del CRM no está configurada. | | RPT-0065 | Falló el descifrado del registro | El descifrado del registro falló. | | RPT-0066 | Falló la inicialización del cifrador | La inicialización del cifrador falló. | | RPT-0067 | Datos extraídos no válidos | Los datos extraídos no son válidos. | | RPT-0068 | Resultado de recolección inesperado | La recolección de datos devolvió un resultado inesperado. | | RPT-0069 | Fuente de datos no encontrada | No se encontró la fuente de datos referenciada por el informe. | | RPT-0070 | Fuente de datos no disponible | La fuente de datos no estaba disponible durante la extracción. |