GET
/api/mod/landing/{espacio}/landings/{landing}El estado de una landing
La landing con todas sus versiones, la más reciente primero. Es la ruta que consultas mientras se escribe, hasta que su status termina o pide datos.
- PERMISOlee (vale cualquier clave)
- CRÉDITOSno gasta
- AUTENTICACIÓNBearer bth_…
PARÁMETROS
| CAMPO | TIPO | REQUERIDO | QUÉ ES |
|---|---|---|---|
| espacio | string | SÍ | El id del espacio (sale en GET /api/companies). Tiene que tener el módulo Landings. |
| landing | string | SÍ | El id de la landing: el que devolvió crearla (32 caracteres hexadecimales). |
RESPUESTA 200
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| id · titulo | string | El id y el título. |
| submit_url · page_id | string · string | null | Los que mandaste al crearla. |
| status | string | El estado de la última versión. |
| version_actual | integer | La última versión, termine como termine. |
| version_aprobada | integer | null | La última que pasó las dos revisiones. null si ninguna. |
| version_con_html | integer | null | La última que tiene HTML, aprobada o no. |
| creada · actualizada | number | Segundos desde 1970, con decimales. |
| versiones | array | Todas, la más reciente primero. |
| versiones[].version | integer | 1, 2, 3… |
| versiones[].tipo | "generar" | "refinar" | "validar" | Qué la creó. |
| versiones[].status | string | Su estado: ver estados. |
| versiones[].etapa | string | null | Qué está haciendo ahora, para enseñárselo a tu usuario. Texto libre: no lo compares. |
| versiones[].faltantes | array | null | Solo en esperando_datos: hasta 5 datos que el brief pide y no da, cada uno con clave, seccion, pregunta y ejemplo. Respóndelos con completar. |
| versiones[].calidad | object | null | El certificado de las revisiones, cuando la versión termina: ver calidad. |
| versiones[].error | string | null | Por qué falló o se canceló, en una frase para tu usuario. |
| versiones[].creada | number | Segundos desde 1970, con decimales. |
| versiones[].iniciada · terminada | number | null | Igual; null mientras no ha empezado o no ha terminado. |
ESTADOS DE UNA VERSIÓN
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| pendiente | en curso | En la cola, esperando su turno. |
| generando | en curso | Escribiendo, probando o reparando. Mira etapa. |
| aplazado | en curso | Esperando capacidad. Se reanuda sola: no hagas nada. |
| esperando_datos | espera tu respuesta | El brief pide datos que no da. Responde con completar; no gasta mientras espera. |
| aprobado | terminada | Pasó las dos revisiones: lista para publicar. |
| revision | terminada | Tiene HTML, pero no pasó alguna revisión: calidad.motivos dice cuál. Refínala o revísala tú. |
| fallido | terminada | No se pudo terminar: mira error. |
| cancelado | terminada | La cancelaste (o borraste la landing). |
CALIDAD
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| status | "approved" | "needs_review" | "failed" | approved solo si pasó las dos revisiones. |
| motivos | string[] | Por qué no se aprobó. Vacío si se aprobó. |
| emitido | string | null | Cuándo, en ISO 8601. |
| html_sha256 | string | null | El SHA-256 del HTML que certifica. Vale para ese HTML exacto: si lo cambias, mándalo a validar. |
| funcional | object | null | La revisión de funcionamiento: status (passed o needs_review), brief_cumplido, los escenarios que probó y sus hallazgos. |
| visual | object | null | La revisión de diseño, en escritorio y en móvil: status, el umbral y una nota de 0 a 100 en cada una de sus dimensiones (hierarchy, composition, typography, spacing, consistency, legibility, imagery, mobile). Para aprobar, todas llegan al umbral. |
| hallazgos[] | { severidad, descripcion, correccion } | Lo que encontró cada revisión. severidad es blocker, major o minor; solo los minor dejan aprobar. |
ERRORES DE ESTA RUTA · SIEMPRE {"detail": …}
| STATUS | CUÁNDO | DETAIL LITERAL |
|---|---|---|
| 403 | El espacio no tiene el módulo Landings | módulo no habilitado para este espacio. |
| 404 | No hay una landing con ese id en el espacio (o se borró) | La landing no existe |
Y los de cualquier ruta —clave inválida, cuenta no al día, IP, límites—, en Errores, límites y créditos.
CONVIENE SABER
- Consulta cada 10 a 15 s. Para cuando
statusseaaprobado,revision,fallidoocancelado, o cuando seaesperando_datos: ahí espera tu respuesta. - Una versión en
aplazadosigue sola. Puede tardar más, pero no hace falta que hagas nada.