Saltar al contenido principal

Personalizar

La URL de iframe acepta varios parámetros de consulta que controlan su comportamiento y apariencia. Esta página es la referencia canónica: todos los parámetros que iframe soporta se enumeran a continuación, y cada uno se explica en detalle en las secciones que siguen.

Usa el generador para obtener una vista previa y copiar una URL de iframe configurada.

#
#

Reemplaza el identificador predeterminado

El generador usa un identificador de company de ejemplo para que la vista previa funcione. Reemplázalo con tu propio identificador antes de implementar.

Referencia rápida

  • company (obligatorio): identificador de empresa de corta duración (también llamado clave de aplicación) emitido desde tu token API S2S. Consulta la página de Seguridad para saber cómo generarlo.
  • companyCallbackUrl: anula la URL de devolución de llamada predeterminada a la que se envía el informe de diagnóstico. Consulta la sección de anulación de URL de devolución de llamada.
  • isForPatient (por defecto 0): cuando es 1, simplifica la redacción del cuestionario para usuarios no clínicos.
  • enableResult (por defecto 1): alterna la visualización de los resultados de diagnóstico al usuario.
  • showQuestionnairesHeader (por defecto 1): controla la visibilidad del título del cuestionario.
  • enableDiagnosisSupport (por defecto 1): cuando es 0, omite el paso de identificación de condición y solo mide la gravedad.
  • forcedScoringSystems: lista separada por comas de códigos de sistemas de puntuación que deben calcularse independientemente del nivel de confianza diagnóstica.
  • enableAnamnesis (por defecto 0): cuando es 1, muestra el formulario de anamnesis.
  • macroscopicMedia (por defecto disabled): si se requiere una imagen de contexto (macroscópica). Valores permitidos: disabled, optional, required.
  • enableExtendedInstructions (por defecto 0): cuando es 1, muestra el conjunto completo de mejores prácticas para tomar fotos.
  • enableAlternativeCameraModule (por defecto 0): habilita el módulo de cámara dentro del iframe (solución para frameworks que bloquean entradas de archivo).
  • enableAlternativeCameraModuleAndroid (por defecto 0): lo mismo que el indicador anterior, limitado a Android.
  • primary: código de color hexadecimal para el color de interfaz de usuario principal.
  • secondary: código de color hexadecimal para el color de interfaz de usuario secundario.
  • fontFamily: familia de fuentes usada dentro del iframe. Soportadas: Roboto, Montserrat.
  • locale (por defecto en): idioma de la aplicación. Soportados: en, es.
  • extraData: JSON codificado en Base64 con datos adicionales adjuntos al informe (por ejemplo, un identificador de paciente). Oculto a los usuarios finales.
  • enableExtraDataInPdf (por defecto 0): cuando es 1, imprime los valores de extraData en el informe PDF generado.

El resto de esta página describe cada parámetro en detalle, agrupados por propósito.

Modo paciente

Cuando los usuarios principales del iframe son pacientes, establece isForPatient=1. Esto reescribe los cuestionarios en lenguaje más simple. Por ejemplo, en lugar de la etiqueta técnica Itchiness, el paciente ve Cómo describirías lo picazón que sientes?.

Visibilidad de los resultados

El comportamiento predeterminado es mostrar los resultados al usuario una vez que se ha procesado su foto. Pasa enableResult=0 para ocultar los resultados y mostrar solo un mensaje de confirmación.

Título del cuestionario

showQuestionnairesHeader controla la visibilidad del título sobre los cuestionarios (el encabezado "Cuestionario médico"). Por defecto 1.

Apoyo diagnóstico

El parámetro enableDiagnosisSupport controla si se ejecuta la función de apoyo diagnóstico impulsada por IA.

Cuando está deshabilitada (enableDiagnosisSupport=0), el iframe omite completamente el paso de identificación de condición. Esto es útil cuando la condición del paciente ya se conoce y el objetivo es solo medir la gravedad. Por ejemplo, cuando un clínico ha confirmado un diagnóstico y desea monitorizar las puntuaciones PASI o SCORAD a lo largo del tiempo sin desencadenar un nuevo análisis diagnóstico.

Sistemas de puntuación forzados

forcedScoringSystems es una lista separada por comas de códigos de sistemas de puntuación que deben calcularse independientemente del nivel de confianza diagnóstica:

https://iframe.legit.health/?company=XXX&forcedScoringSystems=aladinLocal,ascoradLocal

Sistemas de puntuación disponibles

  • aladinLocal: Acne Lesion estimation grading index (IGA acne).
  • agppgaLocal: Generalized Pustular Psoriasis Physician Global Assessment.
  • aihs4Local: International Hidradenitis Suppurativa severity score.
  • apasiLocal: Automatic Psoriasis Area and Severity Index.
  • asaltLocal: Automatic Severity of ALopecia Tool.
  • ascoradLocal: SCORAD for atopic dermatitis.
  • auasLocal: Urticaria Activity Score.
  • awosiLocal: Pressure ulcers assessment.
  • pure4: Psoriatic arthritis UnclutteRed screening Evaluation.
  • sevenPc (u 7PC): 7-point checklist for pigmented lesions.
  • uct: Urticaria Control Test.
Comportamiento predeterminado sin forcedScoringSystems

Si no se especifica forcedScoringSystems, el iframe calcula automáticamente el sistema de puntuación siempre que la condición detectada por el algoritmo de apoyo diagnóstico tenga un nivel de confianza superior al 40% y un sistema de puntuación asociado. Esto mantiene el flujo simplificado: las condiciones más probables se evalúan por gravedad sin requerir una configuración explícita.

Cuestionario de anamnesis

El parámetro enableAnamnesis muestra u oculta el formulario de anamnesis. El predeterminado es 0, así que pasa enableAnamnesis=1 para mostrarlo.

Hay dos tipos de preguntas que el iframe puede hacer:

Preguntas genéricas

Cuando se habilita el formulario de anamnesis, el usuario ve cinco preguntas clínicamente relevantes que no están vinculadas a una condición específica:

  1. ¿Cuál es la razón de la consulta? ¿Cómo comenzó el problema? Describe el origen.
  2. ¿Tienes alguna alergia, especialmente a medicamentos? Si es así, enumera las alergias.
  3. ¿Estás tomando algún medicamento o tratamiento? Si es así, explica qué tratamiento estás recibiendo.
  4. ¿Tienes alguna enfermedad importante? ¿Te han operado de algo?
  5. ¿Hay algún historial de enfermedad importante en tu familia?

Preguntas específicas de condición

Si la IA identifica una condición con suficiente confianza, el iframe automáticamente añade el cuestionario asociado a esa condición. Por ejemplo, si la lesión es psoriasis con alta probabilidad, se le hace al paciente las preguntas PASI que la IA no puede derivar de la imagen.

Las preguntas específicas de condición son las que componen cada sistema de puntuación. Consulta la sección Avanzado: Sistemas de puntuación.

Carga de imagen

En el iframe, el usuario carga imágenes haciendo clic en Haz clic aquí para añadir una imagen. Esto abre la cámara o el selector de archivos.

Los usuarios pueden cargar múltiples imágenes de la misma lesión:

Todas las imágenes pertenecen al mismo informe

Cuando esto ocurre, todas las imágenes pertenecen al mismo DiagnosticReport y constituyen una única llamada al dispositivo.

Calidad de imagen

El dispositivo ejecuta una tecnología llamada DIQA que mide la calidad visual de cada imagen cargada. Si la puntuación está por debajo de 60, el iframe pide al usuario que recargue después de corregir el problema.

La puntuación se incluye en el mensaje publicado por el iframe:

"originalMedia": {
"type": "Image",
"modality": "Clinical",
"diqaScore": 74, // 👈
// ...
},

Imagen macroscópica

macroscopicMedia controla si el usuario debe cargar una imagen de contexto (macroscópica):

  • disabled (predeterminado): el campo está oculto.
  • optional: el usuario puede cargar una imagen macroscópica.
  • required: el usuario debe cargar una imagen macroscópica para continuar.

Esto es útil cuando el contexto visual es esencial, por ejemplo en evaluaciones clínicas donde una toma amplia complementa una toma de cerca.

Instrucciones extendidas

enableExtendedInstructions=1 muestra un conjunto completo de mejores prácticas para tomar fotos. El predeterminado 0 muestra un conjunto mínimo.

Módulo de cámara alternativo

Frameworks como Ionic a menudo restringen el acceso a hardware (particularmente la cámara) cuando el contenido se renderiza dentro de un iframe. El flujo estándar <input type="file"> que usa el iframe por defecto está bloqueado en esos entornos, así que enviamos un módulo alternativo que solicita acceso a la cámara directamente desde el iframe.

info

Este problema afecta principalmente a dispositivos Android que ejecutan aplicaciones basadas en Ionic. Es posible que tengas que habilitar enableAlternativeCameraModuleAndroid específicamente para esos.

  • enableAlternativeCameraModule=1: activa el módulo alternativo en cada plataforma.
  • enableAlternativeCameraModuleAndroid=1: lo activa solo para Android.

Colores y familia de fuentes

Los colores primario y secundario se personalizan a través de los parámetros primary y secondary (códigos hexadecimales).

Para tipografía, el iframe actualmente soporta Roboto y Montserrat a través del parámetro fontFamily. Contacta con nosotros si necesitas una fuente adicional y haremos lo posible por incluirla.

Idioma

El idioma de la interfaz se establece con el parámetro locale (en, es). Si requieres otro idioma, contáctanos.

Datos adicionales

extraData acepta cualquier cadena y se adjunta al informe. Es un lugar conveniente para pasar identificadores que deben viajar con el informe pero permanecer ocultos a los usuarios, como identificadores de paciente, proveedores de seguros o referencias de episodio:

const data = toBase64(JSON.stringify({ patient: "XXX", insuranceProvider: "YYY" }));

Por defecto, extraData se almacena en el informe pero NO se imprime en el PDF generado. Establece enableExtraDataInPdf=1 para incluirlo en el PDF. Esto es útil cuando el PDF se entrega directamente a un clínico o paciente y los datos adicionales deben ser visibles en el documento.

Anulación de URL de devolución de llamada

Durante la configuración de tu empresa, el integrador proporciona una URL de devolución de llamada predeterminada a la que Legit.Health envía el informe de diagnóstico una vez que finaliza el análisis. El parámetro companyCallbackUrl te permite anular esa predeterminada a nivel de iframe, lo cual es útil cuando el mismo identificador company se reutiliza en diferentes entornos (staging, producción) o en diferentes productos que necesitan que el informe se entregue a diferentes puntos finales:

https://iframe.legit.health/?company=XXX&companyCallbackUrl=https://your-server.example.com/legit-health-webhook

La URL debe ser accesible desde internet pública, aceptar solicitudes POST y responder con un código de estado 2xx. El cargo útil que recibe tu punto final coincide con el esquema JSON descrito en la sección Output: JSON Formats.

Push vs. pull

companyCallbackUrl habilita un modelo de entrega push: Legit.Health envia un POST al informe a tu punto final tan pronto como esté listo. Si prefieres obtener el informe bajo demanda usando el id de informe devuelto por la postMessage analysis_completed, usa el Endpoint API. Ambos modelos pueden coexistir.

Pasos siguientes

  • ¿Asegurando el acceso a producción? Consulta la página de Seguridad.
  • ¿Quieres saber qué código específico de plataforma es necesario? Consulta la sección Platforms.
  • ¿Necesitas manejar devoluciones de llamada desde el iframe? Consulta la sección Callbacks.