Listar integrações ETL

Com este endpoint você pode obter a lista completa de integrações ETL (DAGs) configuradas para sua empresa. Cada DAG representa um pipeline de dados — use o dag_id retornado para consultar suas execuções e logs.

Autenticação

Requer um Bearer token OAuth2 obtido pelo fluxo client_credentials. Ver Autenticação.

Cabeçalhos

NomeValor
AuthorizationBearer <access_token>
Acceptapplication/json

Exemplo de request

GET /hub/api/v1/dags
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...
Accept: application/json

Resposta bem-sucedida — 200

{
  "id_company": "empresa-uuid",
  "total": 2,
  "dags": [
    {
      "dag_id": "589b6c65-1ce9-4a46-9c11-ad380d9bf27a",
      "description": "Órdenes de venta ETL",
      "last_run": "2026-06-05"
    },
    {
      "dag_id": "a1b2c3d4-5678-90ab-cdef-111213141516",
      "description": "Sincronización de inventario",
      "last_run": "2026-06-04"
    }
  ]
}
CampoTipoDescrição
id_companystringIdentificador da empresa autenticada
totalintegerTotal de DAGs disponíveis
dags[].dag_idstring (UUID)Identificador único do DAG/ETL
dags[].descriptionstringDescrição do pipeline
dags[].last_runstring (YYYY-MM-DD)Data da última execução

Códigos de erro

CódigoDescrição
401Token inválido ou expirado
403Sem permissão sobre o módulo ETL
500Erro interno do servidor
502Serviço de backend (S3 / Airflow) indisponível

Possíveis problemas

Todos os erros seguem o formato RFC 9457 com Content-Type: application/problem+json.

401 — Token ausente ou inválido

O cabeçalho Authorization não está presente, não começa com Bearer, ou o token é inválido.

{
  "error_code": "MISSING_BEARER_TOKEN",
  "message": "Authorization header with Bearer token is required",
  "status_code": 401
}

Solução: Verifique se o cabeçalho é exatamente Authorization: Bearer <token>.

401 — Token expirado

O token ultrapassou seu tempo de vida (2 horas para OAuth2).

{
  "error_code": "TOKEN_EXPIRED",
  "message": "The provided token has expired",
  "status_code": 401
}

Solução: Solicite um novo token via POST /oauth/token.

403 — Sem permissão sobre o módulo ETL

O cliente OAuth2 se autenticou corretamente, mas não tem o módulo ETL habilitado.

{
  "error_code": "OAUTH2_ETL_ACCESS_DENIED",
  "message": "This OAuth2 client does not have access to the ETL module",
  "status_code": 403
}

Solução: Verifique se o Grupo de Permissão do consumer tem Automatizador → Fracttal Hub habilitado.

502 — Erro em serviço dependente

{
  "error_code": "BACKEND_RPC_ERROR",
  "message": "Upstream service returned an unexpected error",
  "status_code": 502
}

Solução: Repita a tentativa com backoff exponencial. Se persistir, verifique o status dos serviços.

OpenAPI definition

{
  "openapi": "3.0.0",
  "info": {
    "version": "1.0.0",
    "title": "Listar DAGs"
  },
  "servers": [
    {
      "url": "https://one.fracttal.com/hub/api/v1/dags"
    }
  ],
  "paths": {
    "/": {
      "get": {
        "responses": {
          "200": {
            "description": ""
          }
        },
        "parameters": [],
        "summary": "Listar integrações ETL",
        "operationId": "get_",
        "description": "Com este endpoint você pode obter a lista completa de integrações ETL (DAGs) configuradas para sua empresa. Cada DAG representa um pipeline de dados — use o `dag_id` retornado para consultar suas execuções e logs."
      }
    }
  },
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true
  }
}
Response
200
Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here!