Listar Execuções de Workflow

Listar as execuções registradas de um workflow com filtros e paginação por cursor opaco. As execuções são excluídas definitivamente assim que ultrapassam a janela de retenção de logs do pagador, então uma execução mais antiga simplesmente não aparece, em vez de ser reportada como removida. A janela é de 30 dias a partir do início da execução no plano Free, ilimitada no Pro e no Team, e definida por organização no Enterprise, com uma sobrescrita opcional por workspace.

GET/api/v2/workflows/{workflowId}/runs
X-API-Key<token>

Sua API key do Studio, pessoal ou com escopo de workspace. Gere uma em Settings e depois API Keys. As operações que rejeitam API keys de workspace dizem isso na própria descrição.

Em: header

Parâmetros de path

workflowId*string

Identificador único do workflow.

Tamanho1 <= length

Parâmetros de query

status?string

Filtrar pelo status da execução.

Valor em"pending" | "running" | "completed" | "failed" | "cancelled" | "paused"
trigger?string

Filtrar pelo tipo de trigger.

Tamanho1 <= length
startDate?string

Incluir apenas as execuções iniciadas neste timestamp UTC ISO 8601 ou depois dele, por exemplo 2026-08-06T00:00:00Z. São rejeitados uma data sem hora, um timestamp que traga um offset UTC em vez de Z e o ano 0000, que não nomeia nenhum instante armazenável.

Corresponde a^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Formatodate-time
endDate?string

Incluir apenas as execuções iniciadas neste timestamp UTC ISO 8601 ou antes dele, por exemplo 2026-08-06T00:00:00Z. São rejeitados uma data sem hora, um timestamp que traga um offset UTC em vez de Z e o ano 0000, que não nomeia nenhum instante armazenável.

Corresponde a^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
Formatodate-time
limit?integer

Máximo de execuções de workflow a retornar por página. Deve ser um número inteiro de 1 a 100. O padrão é 50.

Padrão50
Intervalo1 <= value <= 100
cursor?string

Cursor opaco da página anterior. Devolva-o com a mesma ordenação e os mesmos filtros; apenas limit pode mudar. Altere qualquer outra coisa e a paginação precisa recomeçar sem cursor.

Tamanho1 <= length
order?string

Direção da ordenação pelo horário de início da execução. Esta lista só pode ser ordenada pelo horário de início da execução, então ela aceita order no lugar de sortBy/sortOrder, que ela rejeita.

Padrão"desc"
Valor em"asc" | "desc"

Corpo da resposta

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://agent-studio.seeyu.ai/api/v2/workflows/3b1f7c92-8d4e-4a6b-9c0d-5e2f8a714b36/runs" \  -H "X-API-Key: YOUR_API_KEY"
{
  "data": [
    {
      "runId": "run_8f14e45f-ceea-467f-a",
      "workflowId": "3b1f7c92-8d4e-4a6b-9c0d-5e2f8a714b36",
      "status": "completed",
      "trigger": "api",
      "startedAt": "2026-08-09T18:04:10.000Z",
      "endedAt": "2026-08-09T18:04:11.000Z",
      "durationMs": 1000,
      "cost": {
        "total": 12
      }
    }
  ],
  "nextCursor": null
}
{
  "error": {
    "code": "BAD_REQUEST",
    "message": "Invalid request"
  }
}
{
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Authentication required"
  }
}
{
  "error": {
    "code": "FORBIDDEN",
    "message": "Insufficient workspace permissions",
    "details": {
      "code": "INSUFFICIENT_WORKSPACE_ROLE"
    }
  }
}
{
  "error": {
    "code": "NOT_FOUND",
    "message": "Not found"
  }
}
{
  "error": {
    "code": "RATE_LIMITED",
    "message": "API rate limit exceeded",
    "details": {
      "retryAfter": "2026-01-01T00:00:30.000Z"
    }
  }
}
{
  "error": {
    "code": "INTERNAL_ERROR",
    "message": "Internal server error"
  }
}
{
  "error": {
    "code": "SERVICE_UNAVAILABLE",
    "message": "Service temporarily unavailable"
  }
}