---
title: "Summarize the tasks of the given workflow per process, optionally filtered by search"
method: GET
path: "/workflow/{workflowId}/tasks/summary"
tags: ["workflows"]
---

# Summarize the tasks of the given workflow per process, optionally filtered by search

`GET /workflow/{workflowId}/tasks/summary`

Rolls up matching tasks per process so the run-timeline grouped view stays complete on large runs, where a capped/paged task list could hide processes whose matches fall past the page. Rejected with a 400 when the run's total task count exceeds 20,000, since the search term does not bound the cost of the underlying query -- only run size does.

## Path parameters

- `workflowId` string, required

## Query parameters

- `workspaceId` integer
- `search` string, required

## Response `200`

OK

- ListTaskProcessSummaryResponse
  - `processes` TaskProcessSummary[]
    - `firstSubmit` string, date-time, nullable
    - `lastComplete` string, date-time, nullable
    - `process` string
    - `taskCount` integer

## Other responses

- `400` — Bad request. Missing/blank search parameter, or the run has more tasks than this endpoint allows
- `403` — Operation not allowed

## Changes

> 17 revisions in range; 1 not diffed.

- **2026-09-25** `23c276ac7e55` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/seqeralabs/apis/seqera-api/changes/workflow/:workflowId/tasks/summary/get.md)

---

[API](https://skmtc.dev/seqeralabs/apis/seqera-api.md) · [All operations](https://skmtc.dev/seqeralabs/apis/seqera-api/llms.txt) · [OpenAPI document](https://skmtc.dev/seqeralabs/apis/seqera-api/revisions/24f327d93421?raw)
