Este endpoint te permite ver, fila por fila, qué registros procesó una fase en particular durante una ejecución. También puedes buscar registros específicos usando palabras clave.
Cada vez que una integración ETL se ejecuta, pasa por tres fases:
- Extract — obtiene los datos desde la fuente (por ejemplo, tu sistema ERP o base de datos).
- Transform — limpia y adapta los datos para que queden en el formato correcto.
- Load — carga los datos ya procesados en el destino final (por ejemplo, Fracttal).
¿Qué necesitas para usarlo?
Antes de hacer la consulta necesitas tener a mano:
| Dato | ¿Dónde lo obtienes? | Ejemplo |
|---|---|---|
dag_id | Endpoint Listar DAGs | 589b6c65-1ce9-4a46-9c11-ad380d9bf27a |
date | Fecha de la ejecución que quieres revisar | 2026-06-05 |
run_id | Identificador de la ejecución (lo ves en el historial de runs) | manual_20260605T140709_c003 |
phase | La fase que quieres revisar: extract, transform o load | load |
Importante: Si el
run_idcontiene los caracteres:o+, debes codificarlos en la URL antes de enviarlo (reemplaza:por%3Ay+por%2B).
Filtros opcionales
| Parámetro | Descripción | Valor por defecto |
|---|---|---|
attempt | Si una fase se reintentó varias veces, este número indica cuál intento quieres ver. El 1 es el más reciente. | 1 |
page | Número de página para navegar entre los resultados. La primera página es 0. | 0 |
limit | Cuántos registros quieres ver por página. | 50 |
keyword | Palabra clave para buscar dentro de los registros. Funciona como un buscador de texto. | — |
Autenticación
Necesitas un token de acceso OAuth2. Ver Autenticación.
Authorization: Bearer <tu_token>Ejemplo de consulta
Buscar registros de la fase load del 5 de junio que contengan la palabra "error":
GET /hub/api/v1/dags/589b6c65-1ce9-4a46-9c11-ad380d9bf27a/runs/2026-06-05/manual_20260605T140709_c003/phases/load/data?page=0&limit=50&keyword=error
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...¿Qué te responde?
{
"rows": [
{ "campo_1": "valor_a", "campo_2": 9486 },
{ "campo_1": "valor_b", "campo_2": 3314.15 }
],
"total": 4668,
"page": 0,
"limit": 50,
"has_more": true,
"not_found": false,
"message": null
}| Campo | Descripción |
|---|---|
rows | Los registros de la página actual. Los nombres de columna dependen de cada integración. |
total | Total de registros que coinciden con tu búsqueda. |
page | Número de página que estás viendo (empieza en 0). |
limit | Cuántos registros se muestran por página. |
has_more | true si hay más páginas disponibles, false si ya llegaste al final. |
not_found | true si la fase no generó datos (por ejemplo, si falló antes de producir resultados). |
message | Mensaje adicional del sistema, si aplica. |
Cómo navegar entre páginas
Los resultados se entregan en bloques. Si has_more es true, hay más registros en la siguiente página:
page=0 → registros 1–50
page=1 → registros 51–100
page=2 → registros 101–150
Sigue aumentando page hasta que has_more sea false o rows llegue vacío.
Posibles problemas
El token es inválido o expiró (401)
401)Obtén un nuevo token antes de volver a intentarlo. Ver Autenticación.
Algún parámetro tiene un valor incorrecto (422)
422)La respuesta incluye un array details[] que indica exactamente qué campo tiene el problema:
{
"error_code": "VALIDATION_ERROR",
"message": "Invalid request parameters",
"status_code": 422,
"details": [
{ "field": "phase", "message": "phase must be one of: extract, transform, load" }
]
}Causas frecuentes:
| Campo | Problema habitual |
|---|---|
dag_id | Formato incorrecto (debe tener el formato 8-4-4-4-12) |
date | Formato distinto a YYYY-MM-DD (ej. 05-06-2026 no es válido) |
phase | Valor no reconocido — solo se acepta extract, transform o load |
run_id | Contiene : o + sin codificar |
La fase no tiene datos (not_found: true)
not_found: true)Esto no es un error, sino una respuesta normal que indica que la fase no produjo registros. Ocurre cuando:
- La fase anterior falló y esta no llegó a ejecutarse (ej. si
extractfalló,transformno tiene datos). - La ejecución fue cancelada antes de que la fase terminara.
- El número de
attemptque pediste no existe para esa ejecución.
200