# task_list

List Tasks

## Beschreibung

Lists tasks (issues) the caller can read in the account.
Filters: project, workspace, status (configured TaskStatus name or
symbolic key), priority, assignee, label, free-text search on
the title. Sorted by `updated_at DESC`, capped at 250 rows.
Each row carries a canonical `url` field
(`/tasks/{WORKSPACE_KEY}-{number}`) that an agent can paste back
to humans without inventing a path.

## Zugriff

Zugriffsprofil: `gated`. Module: `projects_tasks`, `simple_projects_tasks`.
Die Freigabe im Profil ersetzt keine Account-, Workspace- oder Rollenberechtigung.

## Parameter

| Name | Typ | Pflicht | Beschreibung |
| --- | --- | --- | --- |
| `account_id` | string | Ja |  |
| `project_id` | string | Nein | Project prefix ID or slug. |
| `workspace_id` | string | Nein | Workspace prefix ID or key. |
| `cycle_id` | string | Nein | Cycle prefix ID (cyc_…). Filters to tasks attached to that cycle. |
| `status` | string | Nein | Task status name (e.g. 'In progress') or symbolic key (e.g. 'todo'). |
| `priority` | string | Nein | Priority enum key (urgent / high / medium / low / no_priority). |
| `assignee` | string | Nein | User prefix ID or @handle. 'me' resolves to the caller; 'none' filters unassigned. |
| `label` | string | Nein | Label name or prefix ID. |
| `subscribed` | boolean | Nein | Only tasks you are subscribed to. |
| `series_id` | string | Nein | Recurring task series prefix ID (trs_…). Filters generated parent tasks. |
| `query` | string | Nein | Substring match on title. |
| `limit` | integer | Nein | Max rows (default 50, max 250). |

## Eingabeschema

```json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "account_id": {
      "type": "string"
    },
    "project_id": {
      "type": "string",
      "description": "Project prefix ID or slug."
    },
    "workspace_id": {
      "type": "string",
      "description": "Workspace prefix ID or key."
    },
    "cycle_id": {
      "type": "string",
      "description": "Cycle prefix ID (cyc_…). Filters to tasks attached to that cycle."
    },
    "status": {
      "type": "string",
      "description": "Task status name (e.g. 'In progress') or symbolic key (e.g. 'todo')."
    },
    "priority": {
      "type": "string",
      "description": "Priority enum key (urgent / high / medium / low / no_priority)."
    },
    "assignee": {
      "type": "string",
      "description": "User prefix ID or @handle. 'me' resolves to the caller; 'none' filters unassigned."
    },
    "label": {
      "type": "string",
      "description": "Label name or prefix ID."
    },
    "subscribed": {
      "type": "boolean",
      "description": "Only tasks you are subscribed to."
    },
    "series_id": {
      "type": "string",
      "description": "Recurring task series prefix ID (trs_…). Filters generated parent tasks."
    },
    "query": {
      "type": "string",
      "description": "Substring match on title."
    },
    "limit": {
      "type": "integer",
      "default": 50,
      "description": "Max rows (default 50, max 250)."
    }
  },
  "required": [
    "account_id"
  ],
  "type": "object"
}
```

## Ausgabeschema

```json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "tasks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "key": {
            "type": "string"
          },
          "title": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "key",
          "title"
        ]
      }
    }
  },
  "required": [
    "tasks"
  ],
  "type": "object"
}
```
