> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tela.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Saídas e resultados

> O que uma execução de Workflow devolve, o que vira revisável e onde ler os resultados: painel de resultado, Depurar, App, API e Testar

Uma execução de Workflow produz uma saída por etapa e um **resultado** para a execução. Esta página explica o que é esse resultado, quais valores viram atributos revisáveis e como tirá-los de lá: no painel de resultado, em Depurar, em um App da Workstation, pela API e nos Casos de Teste.

## O que uma execução devolve

Toda etapa que roda guarda a sua saída. O **resultado da execução** é a saída da **última etapa que rodou** no caminho que a execução seguiu: no exemplo desta seção, a nota de escalonamento para um contrato de alto valor, ou a carta gerada para os demais.

| Etapa | Saída |
| - | - |
| Módulo de IA com Formato de Saída | um objeto com os atributos |
| Módulo de IA sem Formato de Saída | um texto |
| Classificação | `answers`, cujas chaves são os IDs das perguntas, com probabilidades |
| Condição | o nome da condição que bateu, ou `Default` |
| Dividir, Recortar | uma lista de arquivos com as informações de página |
| Mapear | uma lista, uma entrada por item, com as saídas das etapas internas; cada etapa interna também expõe a própria lista |
| Execução de Código | o que `execute` devolveu |
| Canvas Existente, Agent Existente | a saída do Canvas ou do Agente |
| Gerar Documento | `generatedDocument` e, opcionalmente, um permalink |
| Parar | nada |

## O que vira revisável

Quando um Workflow roda em **Testar** ou em um **App da Workstation**, as pessoas revisam o resultado **atributo por atributo**: um polegar para cima ou para baixo em cada campo. Esses atributos vêm dos **Formatos de Saída das etapas**: cada Módulo de IA com Formato de Saída e cada Canvas Existente cujo Canvas tem Formato de Saída contribui com os seus atributos sob o nome da etapa (a interface chama isso de "N atributos da Etapa N").

Etapas sem saída estruturada (Módulos de IA de texto puro, Execução de Código, etapas de documento) mostram a saída, mas não dão aos revisores atributos fixos para julgar.

> [!TIP]
>
> Decida cedo quais valores um revisor precisa conferir e garanta que eles sejam atributos de um Formato de Saída em algum lugar do Workflow. Se o valor final é calculado por uma Execução de Código, acrescente um Módulo de IA ou mantenha o atributo no Formato de Saída de uma etapa anterior para que continue revisável.

> [!NOTE]
>
> Para desenvolvedores: um Workflow salvo pela API também pode declarar um mapa `outputs` explícito (nome do campo → tipo e a referência da etapa de onde ele vem), que é o que a execução devolve e o que o resultado de um Caso de Teste torna revisável. No editor não existe um painel separado de saídas: as próprias etapas definem as saídas, e a última etapa define o resultado final.

## No painel de resultado

Depois de **Executar**, o painel à direita mostra a execução enquanto ela avança e, ao terminar, duas abas:

* **Preview**: o **Status do Workflow** (Concluído, Falhou, Cancelado, Workflow expirou) e uma seção recolhível por etapa com o status dela (**Concluído**, **Falhou**, **Pulado** para os caminhos não seguidos, **Aguardando Execução**) e a saída. Saídas estruturadas aparecem como campos, arquivos aparecem com uma pré-visualização que você pode abrir em tela cheia, saídas de código mostram o valor devolvido, e um Mapear mostra as iterações com controles de anterior/próxima. Os erros aparecem na seção da etapa que falhou.
* **Debug**: o custo (em dólares ou créditos), a duração, os tokens de entrada e saída, os IDs de completion e de requisição, as datas e quem iniciou a execução, e uma **Linha do tempo da execução** com o detalhe de cada etapa.

![Painel de resultado depois de uma execução, com a saída da etapa Extract Data expandida](https://mintcdn.com/meistrari/M2w7BduKZAFA1Sbx/images/pt/workflow/run-result-expanded.png?fit=max\&auto=format\&n=M2w7BduKZAFA1Sbx\&q=85\&s=07d86d463ff0522657bb0e4a1815a958)

**Limpar Visualização** esvazia o painel sem apagar nada: a execução continua em Depurar e em Usage.

> [!NOTE]
>
> A aba Debug carrega a linha do tempo alguns segundos depois que a execução termina. Valores de custo ou de tokens ausentes aparecem como `-` em vez de zero.

## Em Depurar

A experiência **Depurar** lista todas as execuções do Workflow, vindas de Criar, de Casos de Teste, da Workstation, da API e de agendas, com **Status**, **Origem**, **Iniciado**, **Duração** e **Versão**. Filtre por status, origem, versão, autor ou intervalo de datas e selecione uma execução.

Para uma execução você tem:

* uma **Visão geral da execução**: ID da execução, versão, origem, quantos nós foram concluídos, as Entradas recebidas e a saída da execução;
* uma visão em **Grafo** e uma em **Linha do tempo** das etapas;
* um **inspetor de nó** para cada etapa, com **Entrada**, **Saída**, **Erro** e **Metadados**; para etapas de IA, o prompt como foi enviado e a **Saída esperada**; para Execução de Código, o **Terminal**; para uma Condição, qual condição **Correspondeu** e os **Valores referenciados**; para um Mapear, as **Iterações** com **Abrir iteração como execução**;
* **Ações da execução**: **Executar novamente** a mesma versão com estes inputs (editáveis antes de executar), **Editar no Craft** (abre o Craft na versão mais recente com as entradas desta execução preenchidas) ou **Visualizar no Craft** (abre a execução somente para consulta).

![Detalhe de uma execução em Depurar, com entradas, saída e o grafo com o estado de cada etapa](https://mintcdn.com/meistrari/M2w7BduKZAFA1Sbx/images/pt/workflow/debug-run.png?fit=max\&auto=format\&n=M2w7BduKZAFA1Sbx\&q=85\&s=f45e49bcb17b9624de2e73dfc35e5c51)

Abrir uma execução de Depurar em Criar coloca o editor em modo somente leitura, com um aviso ("Visualizando execução do workflow. Edição desabilitada."); **Voltar para edição** sai desse modo, e **Editar a partir desta execução** restaura a versão que rodou como a versão que você edita.

## Em um App da Workstation

Quando você publica com **Publicar App**, o seu time executa o Workflow a partir de uma [Workstation](https://docs.tela.com/pt/workstation/workstation.md): cada entrada enviada vira uma **tarefa**. Uma tarefa executa o Workflow uma vez e depois fica em **Revisão Pendente**, com o resultado organizado para aprovação.

* Os revisores veem os atributos revisáveis descritos acima, podem editar valores e **Aprovar** a tarefa. Arquivos gerados ficam disponíveis para download.
* Tarefas aprovadas podem ser [baixadas](https://docs.tela.com/pt/workstation/downloading-results.md) em CSV ou JSON e [transformadas em Casos de Teste](https://docs.tela.com/pt/workstation/workstation.md#transformando-uma-tarefa-em-caso-de-teste).
* Pela API de tarefas, o `outputContent` de uma tarefa de Workflow encapsula `{ response, stepOutputs, error? }`: `response` é o resultado da execução e `stepOutputs` a saída de cada etapa pelo nome. Veja [Criando tarefas via API](https://docs.tela.com/pt/creating-tasks.md).

> [!NOTE]
>
> Hoje, um App da Workstation expõe [uma variável](https://docs.tela.com/pt/workstation/creating-apps.md#criando-um-app). Um Workflow com várias Entradas ainda pode ser publicado como App, mas confira como o App as mapeia antes de depender disso.

## Pela API

Duas APIs entregam resultados aos seus próprios sistemas.

### A Completion API

Executar um Workflow publicado com `POST /v2/chat/completions` funciona como um Canvas: `canvas_id` é o ID do Workflow obtido em **Conectar via API**, `variables` carrega as Entradas, e `choices[0].message.content` traz a resposta do Workflow quando a execução termina. Use `async: true` ou `webhook_url` para execuções longas. Veja [Visão geral da Completion API](https://docs.tela.com/pt/completion-api/overview.md#executando-um-workflow) e [Async e webhooks](https://docs.tela.com/pt/completion-api/async-and-webhooks.md).

### A API de Workflow Run

Para ler **todas as etapas**, use os endpoints de Workflow Run:

* `GET /workflow/runs?promptId=<id do workflow>` lista as execuções, da mais recente para a mais antiga. Filtre com `status` (`pending`, `running`, `completed`, `failed`, `cancelled`), `environment` (`craft-preview`, `test-case`, `workstation`, `api`), `promptVersionId`, e `rootOnly=true` para esconder as execuções filhas criadas pelas iterações de Mapear.
* `GET /workflow/runs/{id}` devolve uma execução com os seus `steps` e o `graph` executado. `id` é o ID da execução, ou o ID externo de execução que você recebeu ao iniciar a execução pela API.
* `POST /workflow/runs/{id}/cancel` cancela uma execução ainda ativa.

```sh cURL theme={null}
curl "https://api.tela.com/workflow/runs?promptId=9d2e4f6a-1b3c-4d5e-8f70-1a2b3c4d5e6f&status=completed&rootOnly=true&limit=20" \
    -H "Authorization: Bearer $TELA_API_KEY"
```

Uma execução tem este formato:

```json theme={null}
{
  "id": "exec_01J9Z8Q4M6N2P8R1S3T5V7W9X",
  "promptVersionId": "9d2e4f6a-1b3c-4d5e-8f70-1a2b3c4d5e6f",
  "environment": "api",
  "status": "completed",
  "startedAt": "2026-09-01T12:00:00.000Z",
  "completedAt": "2026-09-01T12:00:08.412Z",
  "input": {
    "contract": { "name": "contract", "type": "file", "required": true, "files": [{ "name": "acme.pdf", "mimeType": "application/pdf", "fileUrl": "vault://files/acme.pdf" }] }
  },
  "steps": [
    { "id": "extract", "name": "Extract Data", "actionId": "llm-completion", "status": "completed", "input": { "...": "..." }, "output": { "counterparty": "Acme Ltd", "total_value": 125000 }, "error": null },
    { "id": "route", "name": "Route by value", "actionId": "condition", "status": "completed", "input": { "...": "..." }, "output": "High value", "error": null },
    { "id": "note", "name": "Draft Escalation Note", "actionId": "llm-completion", "status": "completed", "input": { "...": "..." }, "output": { "note": "..." }, "error": null },
    { "id": "letter", "name": "Approval Letter", "actionId": "document-templater", "status": "skipped", "input": null, "output": null, "error": null }
  ],
  "output": { "id": "note", "name": "Draft Escalation Note", "status": "completed", "output": { "note": "..." }, "error": null, "metadata": {} }
}
```

* `steps` lista as etapas visíveis em ordem; etapas de caminhos não seguidos ficam como `skipped`.
* `output` é a etapa folha concluída cuja saída é o resultado da execução; `null` enquanto nenhuma etapa folha tiver sido concluída. O `metadata` dela pode trazer `outputFormatMismatch: true` quando uma etapa de IA não conseguiu respeitar o Formato de Saída.
* `status` pode ser `pending`, `running`, `completed`, `failed`, `requires-action`, `cancelled`, `timeout` ou `waiting-for-review`. Os status terminais são `completed`, `failed`, `cancelled` e `timeout`.
* Em `GET /workflow/runs/{id}`, `graph.nodes` repete cada etapa com as portas, o status e a saída, e um nó que rodou dentro de um Mapear tem um array `runs` com uma entrada por iteração (`index`, `status`, `output`, `error`).

Detalhes completos dos parâmetros: [Listar execuções de workflow](https://docs.tela.com/api-reference/workflow-run/get-workflow-runs.md), [Obter uma execução de workflow](https://docs.tela.com/api-reference/workflow-run/get-workflow-runs-id.md), [Cancelar uma execução de workflow](https://docs.tela.com/api-reference/workflow-run/post-workflow-runs-id-cancel.md).

> [!NOTE]
>
> Qual campo da resposta da Completion API traz o ID externo de execução a ser passado a `GET /workflow/runs/{id}` não está documentado aqui. Em caso de dúvida, liste as execuções por `promptId` e `environment=api` e faça a correspondência por `startedAt` ou pelas Entradas.

## Nos Casos de Teste

Em **Testar**, cada Caso de Teste executa o Workflow e mostra o resultado com os atributos revisáveis, agrupados por etapa. Você marca cada atributo como **Bom** ou **Ruim**, adiciona **Respostas Esperadas** e **Respostas Erradas** que classificam automaticamente as execuções futuras, e escreve **Regras de Validação IA** em linguagem natural que um juiz de IA aplica em toda execução. A **Pontuação** de uma versão é calculada a partir dessas revisões. Veja [Regras de validação e métricas](https://docs.tela.com/pt/test-cases/validation-rules-and-metrics.md) para saber como elas são avaliadas.

Um Caso de Teste que rodou mas nunca foi revisado também aparece como concluído. Revise os atributos antes de confiar em uma versão; veja [Executando, testando e publicando](https://docs.tela.com/pt/workflow/running-testing-and-publishing.md#casos-de-teste).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.