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

# client.projects.listAll()

> List projects.

Return a page of accessible projects across your teams, with pagination metadata.

The `listAll*` variant yields items across every page. The other variant returns one page with pagination metadata. See [Pagination](https://docs.platform.toloka.ai/docs/sdk/pagination.md).

## Signature

Method signatures on `client.projects`:

```ts theme={null}
listAll(args?: {
  limit?: number;
  offset?: number;
}): AsyncGenerator<Project>;

listPage(args?: {
  limit?: number;
  offset?: number;
}): Promise<{ projects: Project[]; pagination: Pagination }>;
```

## Parameters

### listAll()

The argument object can be omitted.

**limit** `number` (default: 20)

Maximum number of results to return; defaults to 20.

**offset** `number` (default: 0)

Number of results to skip before this page; defaults to 0.

### listPage()

The argument object can be omitted.

**limit** `number` (default: 20)

Maximum number of results to return; defaults to 20.

**offset** `number` (default: 0)

Number of results to skip before this page; defaults to 0.

## Returns

### listAll() result

`AsyncGenerator<Project>`

Yields one item at a time. The fields below describe each yielded item.

A project: a team-scoped container for pipelines and datasets.

**id** `ProjectId` *required*

Project ID with prefix `pp.`.

**name** `string` *required*

Name of the project.

**teamId** `string` *required*

Identifier of the team that owns the project.

**status** `"draft" | "active"` *required*

Project state: `draft` before activation or `active` after activation.

**createdAt** `string` *required*

Time the project was created, as an ISO 8601 timestamp.

### listPage() result

`Promise<{ projects: Project[]; pagination: Pagination }>`

**projects** `Project[]` *required*

Projects in this page.

**Fields**

**id** `ProjectId` *required*

Project ID with prefix `pp.`.

**name** `string` *required*

Name of the project.

**teamId** `string` *required*

Identifier of the team that owns the project.

**status** `"draft" | "active"` *required*

Project state: `draft` before activation or `active` after activation.

**createdAt** `string` *required*

Time the project was created, as an ISO 8601 timestamp.

**pagination** `Pagination` *required*

Pagination information for this page.

**Fields**

**total** `number` *required*

Total number of matching results.

**limit** `number` *required*

Maximum number of results requested for this page.

**offset** `number` *required*

Number of results skipped before this page.

**hasMore** `boolean` *required*

Whether more matching results follow this page.

## Errors

HTTP errors throw [`PotatoApiError`](https://docs.platform.toloka.ai/docs/sdk/errors). The endpoint documents these error responses:

| Status | Description |
| - | - |
| 429 | Rate limit exceeded |

HTTP endpoint: [`GET /projects`](https://docs.platform.toloka.ai/docs/api-reference/projects/list-projects).

```ts listAll() theme={null}
import { createClient } from "@toloka-platform/sdk";

const client = createClient({
  baseUrl: "https://platform.toloka.ai",
  apiKey: process.env.TOLOKA_API_KEY!,
});

for await (const item of client.projects.listAll({})) {
  console.log(item);
}
```

```ts listPage() theme={null}
import { createClient } from "@toloka-platform/sdk";

const client = createClient({
  baseUrl: "https://platform.toloka.ai",
  apiKey: process.env.TOLOKA_API_KEY!,
});

const page = await client.projects.listPage({});
console.log(page);
```

```json listAll() yielded item theme={null}
{
  "id": "pp.019a0000-0000-7000-8000-000000000001",
  "name": "<string>",
  "teamId": "<string>",
  "status": "draft",
  "createdAt": "2026-01-01T00:00:00Z"
}
```

```json listPage() theme={null}
{
  "projects": [
    {
      "id": "pp.019a0000-0000-7000-8000-000000000001",
      "name": "<string>",
      "teamId": "<string>",
      "status": "draft",
      "createdAt": "2026-01-01T00:00:00Z"
    }
  ],
  "pagination": {
    "total": 42,
    "limit": 20,
    "offset": 0,
    "hasMore": true
  }
}
```


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