# List / search tasks (the filter grammar; filter[search] is search)

GET`/v1/tasks`[Token scope: `tasks:read`](https://developers.tasksmate.indrasol.com/guides/authentication/#scopes)[paginated list](https://developers.tasksmate.indrasol.com/guides/pagination-and-filters/)

Request

**curl**


```bash
curl -X GET "https://tasksmate-fdfsarhnf5gacfb7.eastus-01.azurewebsites.net/v1/tasks" \
  -H "Authorization: Bearer $TASKSMATE_TOKEN"
```

**Python**


```python
from tasksmate import TasksMate

tm = TasksMate()  # reads TASKSMATE_TOKEN
for item in tm.tasks.list():  # follows next_cursor through every page
    print(item)
```

**tm**


```bash
tm tasks list --org O0020 --status in_progress --status blocked
```

Response 200

```json
{
  "data": [
    {
      "project_id": "project-1234",
      "org_id": "org-1234",
      "sub_tasks": [
        "task-5678"
      ],
      "dependencies": [
        "task-4321"
      ],
      "title": "Implement Login",
      "description": "Implement OAuth2 login flow.",
      "status": "not_started",
      "assignee": "",
      "start_date": "2024-07-31",
      "due_date": "2024-08-01",
      "priority": "high",
      "task_type": "task",
      "tags": [
        "backend",
        "auth"
      ],
      "type_data": {},
      "metadata": [
        {
          "field": "status",
          "new": "in_progress",
          "old": "not_started"
        }
      ],
      "created_by": "string",
      "updated_by": "string",
      "is_subtask": false,
      "bug_id": "B1234",
      "tracker_id": "TR1234",
      "restricted_to": [],
      "team_id": "string",
      "sprint_id": "SP12345",
      "milestone_id": "MS12345",
      "goal_id": "G12345",
      "task_id": "string",
      "created_at": "2026-09-25T12:00:00Z",
      "updated_at": "2026-09-25T12:00:00Z",
      "restricted_to_user_ids": [
        "string"
      ],
      "comments": 0,
      "has_access": true,
      "has_edit_access": false,
      "section_id": "string",
      "section_position": 0
    }
  ],
  "next_cursor": "string"
}
```

List the tasks you can see, one page at a time.

**Pagination**

-   The response is `{"data": [TaskCardView…], "next_cursor": "<opaque>" | null}`; pass `next_cursor` back as `cursor` for the next page. `null` means the end.
-   A page can be `data: []` with a non-null `next_cursor` (every task on it was restricted) — keep following the cursor until it is null.
-   A cursor is bound to the filters, sort and scope it was issued for; reusing it with a different query is a 400.

**Scope and visibility**

-   `project_id`: you must be able to read the project (it is public, you are a member, or you are an org admin).
-   `org_id`: you must be a member of the organization; tasks come from the projects you can read, plus tasks filed in no project.
-   Private projects you are not a member of never appear.
-   Restricted tasks you may not open are left out — or returned with `has_access: false` when `include_inaccessible=true`.

**Filters**

-   Repeat `filter[...]` as needed: comma-separated values are OR-ed within a key; different keys are AND-ed.
-   An unknown key, a malformed date, a non-boolean `filter[overdue]`, or an unknown status, priority or type is a 400 naming the value.
-   `filter[task_type]` takes `task`, `bug`, `agent`. A type is a label, not a permission: it only narrows what you can already see.
-   `filter[search]` matches title, description, task id and tags; add `filter[search_fields]=title` for the title only.

**Sort**

-   `sort_by`: `task_id`, `title`, `status`, `priority`, `due_date`, `start_date`, `created_at`, `assignee`, `project_id`, `priority_rank`, `status_rank`, `task_type`; `sort_order`: `asc` or `desc`.
-   Ties break on `task_id`; empty values sort last.
-   `priority` sorts by rank: critical > high > medium > low > none. `status` too: backlog > in\_progress > not\_started > blocked > completed. `task_type`: task, bug, agent.

**Sections**

-   `section_scope=user:me`, `project:<id>` or `team:<id>` adds `section_id` and `section_position` for that scope (`null` when the task is in no section there).
-   `section_scope=own` uses each task’s own home: its project, or its team when it has no project; a task with neither is unsectioned. `own` works on this operation only.

## Authorizations

-   **[bearerAuth](https://developers.tasksmate.indrasol.com/reference/#bearerauth)**
-   **[TasksMateToken](https://developers.tasksmate.indrasol.com/reference/#tasksmatetoken)**

## Parameters

### Query Parameters

**org\_id**

Any of:

**string**


string

**null**


null

Organization scope; required unless project\_id is given. Membership is checked; only projects the caller may read (public, member-of, or all for org admins) plus unfiled tasks are listed.

**project\_id**

Any of:

**string**


string

**null**


null

Project scope; the caller must be able to read the project (public, or member, or org admin).

**limit**

_Limit_

Page size, default 100; silently clamped to 1000.

integer

default: 100 \>= 1

Page size, default 100; silently clamped to 1000.

**cursor**

Any of:

**string**


string

**null**


null

Opaque token from the previous page’s `next_cursor`. Only ever echo it back; `offset` is ignored when it is given.

**sort\_by**

_Sort By_

One of: task\_id, title, status, priority, due\_date, start\_date, created\_at, assignee, project\_id, priority\_rank, status\_rank, task\_type (400 otherwise).

string

default: title

One of: task\_id, title, status, priority, due\_date, start\_date, created\_at, assignee, project\_id, priority\_rank, status\_rank, task\_type (400 otherwise).

**sort\_order**

_Sort Order_

Asc or desc (400 otherwise).

string

default: asc

Asc or desc (400 otherwise).

**include\_inaccessible**

_Include Inaccessible_

If true, include tasks the current user cannot access due to `restricted_to`, marked with has\_access=False. If false (default), those tasks are not returned. Membership is always required: rows only come from the project / org the caller belongs to.

boolean

If true, include tasks the current user cannot access due to `restricted_to`, marked with has\_access=False. If false (default), those tasks are not returned. Membership is always required: rows only come from the project / org the caller belongs to.

**filter\[status\]**

Any of:

**Array<string>**


Array<string>

**null**


null

Task status(es), comma-separated or repeated.

**filter\[priority\]**

Any of:

**Array<string>**


Array<string>

**null**


null

Priority(ies), comma-separated or repeated.

**filter\[assignee\]**

Any of:

**Array<string>**


Array<string>

**null**


null

Usernames, or `me` for the caller.

**filter\[project\]**

Any of:

**Array<string>**


Array<string>

**null**


null

Project ids, or `__unfiled__` for tasks without a project (mixable).

**filter\[tags\]**

Any of:

**Array<string>**


Array<string>

**null**


null

Tasks carrying any of these tags.

**filter\[due\_after\]**

Any of:

**string**


string

**null**


null

YYYY-MM-DD, inclusive.

**filter\[due\_before\]**

Any of:

**string**


string

**null**


null

YYYY-MM-DD, inclusive.

**filter\[created\_after\]**

Any of:

**string**


string

**null**


null

YYYY-MM-DD, inclusive.

**filter\[created\_before\]**

Any of:

**string**


string

**null**


null

YYYY-MM-DD, inclusive.

**filter\[overdue\]**

Any of:

**string**


string

**null**


null

`true` → due before today and not completed.

**filter\[search\]**

Any of:

**string**


string

**null**


null

Case-insensitive substring of the title, description, task id or any tag; `%`, `_`, `*`, `,` and `(` are matched literally.

**filter\[search\_fields\]**

Any of:

**string**


string

**null**


null

`all` (default) or `title` to match the title only.

**filter\[team\]**

Any of:

**Array<string>**


Array<string>

**null**


null

Team ids, or `__none__` for tasks without a team (the two can be mixed).

**filter\[task\_type\]**

Any of:

**Array<string>**


Array<string>

**null**


null

One or more of `task`, `bug`, `agent`, comma-separated or repeated; any other value (including `goal`) is a 400.

**section\_scope**

Any of:

**string**


string

**null**


null

`user:me`, `project:<id>`, `team:<id>`, or `own` (each task at its own project’s or team’s scope). An unknown scope is a 400.

**~search~**

deprecated

Any of:

**string**


string

**null**


null

Deprecated alias of filter\[search\].

**~status~**

deprecated

Any of:

**string**


string

**null**


null

Deprecated alias of filter\[status\].

**~unfiled~**

deprecated

Any of:

**boolean**


boolean

**null**


null

Deprecated alias of filter\[project\]=**unfiled** (ignored when project\_id is given).

**~offset~**

deprecated

_Offset_

Deprecated; use `cursor`. Ignored when a cursor is given.

integer

0

Deprecated; use `cursor`. Ignored when a cursor is given.

### Header Parameters

**If-None-Match**

string

An `ETag` you hold; unchanged → 304 with no body.

## Responses

### 200

Successful Response

application/json

_TaskListPage_

A page of `GET /v1/tasks`. `next_cursor` is opaque: send it back as `cursor`; null means the last page. `data` may be empty while `next_cursor` is set (every task on that page was restricted) — keep following the cursor.

object

**data**

required

_Data_

Array<object>

_TaskCardView_

Part of `TaskListPage`.

object

**project\_id**

Any of:

**string**


string

**null**


null

**org\_id**

Any of:

**string**


string

**null**


null

**sub\_tasks**

Any of:

**Array<string>**


Array<string>

**null**


null

**dependencies**

Any of:

**Array<string>**


Array<string>

**null**


null

**title**

required

_Title_

Task title

string

**description**

Any of:

**string**


string

**null**


null

**status**

Any of:

**TaskStatusEnum**
_TaskStatusEnum_

A task’s status. `backlog` comes first wherever statuses are ordered (filters, grouping and the `status` sort); otherwise it is an ordinary status, accepted everywhere.

string

Allowed values: backlog not\_started in\_progress blocked completed archived on\_hold

**null**


null

**assignee**

Any of:

**string**


string

**null**


null

**start\_date**

Any of:

**string**


string format: date

**null**


null

**due\_date**

Any of:

**string**


string format: date

**null**


null

**priority**

Any of:

**PriorityEnum**
_PriorityEnum_

Priority enum for projects and tasks

string

Allowed values: high medium low none critical

**null**


null

**task\_type**

Any of:

**TaskTypeEnum**
_TaskTypeEnum_

The kind of task: `task`, `bug` or `agent`, in sort order (`sort_by=task_type`).

-   A label, never a permission.
-   A goal is not a task type but a container of a project’s tasks (`goal_id`): `task_type=goal` is refused on write (422) and in `filter[task_type]` (400).

string

Allowed values: task bug agent

**null**


null

**tags**

Any of:

**Array<string>**


Array<string>

**null**


null

**type\_data**

Any of:

**object**
object

**_key_**

additional properties

any

**null**


null

**metadata**

Any of:

**Array<object>**


Array<object>

object

**_key_**

additional properties

any

**null**


null

**created\_by**

Any of:

**string**


string

**null**


null

**updated\_by**

Any of:

**string**


string

**null**


null

**is\_subtask**

Any of:

**boolean**


boolean

**null**


null

**bug\_id**

Any of:

**string**


string

**null**


null

**tracker\_id**

Any of:

**string**


string

**null**


null

**restricted\_to**

Any of:

**Array<string>**


Array<string>

**null**


null

**team\_id**

Any of:

**string**


string

**null**


null

**sprint\_id**

Any of:

**string**


string

**null**


null

**milestone\_id**

Any of:

**string**


string

**null**


null

**goal\_id**

Any of:

**string**


string

**null**


null

**task\_id**

required

_Task Id_

string

**created\_at**

required

Any of:

**string**


string format: date-time

**null**


null

**updated\_at**

required

Any of:

**string**


string format: date-time

**null**


null

**restricted\_to\_user\_ids**

Any of:

**Array<string>**


Array<string>

**null**


null

**comments**

required

Any of:

**integer**


integer

**null**


null

**has\_access**

Any of:

**boolean**


boolean

**null**


null

**has\_edit\_access**

Any of:

**boolean**


boolean

**null**


null

**section\_id**

Any of:

**string**


string

**null**


null

**section\_position**

Any of:

**number**


number

**null**


null

**next\_cursor**

Any of:

**string**


string

**null**


null

Example

```json
{
  "data": [
    {
      "project_id": "project-1234",
      "org_id": "org-1234",
      "sub_tasks": [
        "task-5678"
      ],
      "dependencies": [
        "task-4321"
      ],
      "title": "Implement Login",
      "description": "Implement OAuth2 login flow.",
      "status": "not_started",
      "assignee": "",
      "start_date": "2024-07-31",
      "due_date": "2024-08-01",
      "priority": "high",
      "task_type": "task",
      "tags": [
        "backend",
        "auth"
      ],
      "type_data": {},
      "metadata": [
        {
          "field": "status",
          "new": "in_progress",
          "old": "not_started"
        }
      ],
      "created_by": "string",
      "updated_by": "string",
      "is_subtask": false,
      "bug_id": "B1234",
      "tracker_id": "TR1234",
      "restricted_to": [],
      "team_id": "string",
      "sprint_id": "SP12345",
      "milestone_id": "MS12345",
      "goal_id": "G12345",
      "task_id": "string",
      "created_at": "2026-09-25T12:00:00Z",
      "updated_at": "2026-09-25T12:00:00Z",
      "restricted_to_user_ids": [
        "string"
      ],
      "comments": 0,
      "has_access": true,
      "has_edit_access": false,
      "section_id": "string",
      "section_position": 0
    }
  ],
  "next_cursor": "string"
}
```

### 304

Not Modified — `If-None-Match` matched the current `ETag` (no body)

### 400

Bad request — a query parameter outside what the operation accepts (`invalid-parameter`)

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "Bad request",
  "status": 400,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 401

Missing or invalid bearer token

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "Missing or invalid bearer token",
  "status": 401,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 403

Authenticated, but not allowed

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "Authenticated, but not allowed",
  "status": 403,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 404

Not found

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "Not found",
  "status": 404,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 409

Conflict (a duplicate, or an `Idempotency-Key` still in flight)

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "Conflict (a duplicate, or an `Idempotency-Key` still in flight)",
  "status": 409,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 412

`If-Match` does not match the current `ETag`

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "`If-Match` does not match the current `ETag`",
  "status": 412,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 422

The body or query did not validate (`validation`), or an `Idempotency-Key` was reused

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "The body or query did not validate (`validation`), or an `Idempotency-Key` was reused",
  "status": 422,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 429

An access token over its per-minute limit (`rate-limit`; see `Retry-After`)

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "An access token over its per-minute limit (`rate-limit`; see `Retry-After`)",
  "status": 429,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

### 500

Unexpected server error — quote `request_id`

application/problem+json

_Problem_

An RFC 9457 problem details object — the body of every error response. `detail` is the human-readable explanation; `request_id` identifies the request for support.

object

**type**

required

`about:blank` or a `urn:tasksmate:problem:*` identifier

string

Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused

**title**

required

string

**status**

required

integer

**detail**

required

Human-readable explanation (a string; for a 422, the list of validation errors)

**instance**

required

string

**request\_id**

required

string

**errors**

Structured failures: validation errors, or `{loc, msg, allowed}` for a bad parameter

Array<object>

object

Example

```json
{
  "type": "about:blank",
  "title": "Unexpected server error",
  "status": 500,
  "detail": "…",
  "instance": "/v1/…",
  "request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}
```

---
Source: https://developers.tasksmate.indrasol.com/reference/operations/taskslist/
