> ## 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.checks.start()

> Start a pipeline check.

Send `nodeId` and `checkId` to check the current graph. Returns a check to poll. Returns 400 if the check is unavailable or cannot run for this graph.

## Signature

Method signature on `client.checks`:

```ts theme={null}
start(args: {
  pipelineId: string;
  nodeId: string;
  checkId: string;
}): Promise<CheckJob>;
```

## Parameters

**pipelineId** `string` *required*

Pipeline ID with prefix `pl.`.

**nodeId** `string` *required*

Identifier of the pipeline graph node to check.

**checkId** `string` *required*

Identifier of the check defined for this node, such as `dataset-lint` on the Start node.

## Returns

`Promise<CheckJob>`

An asynchronous pipeline check job. Poll until status is succeeded or failed.

**id** `CheckRunId` *required*

Check run ID with prefix `plcr.`.

**pipelineId** `PipelineId` *required*

Pipeline ID with prefix `pl.`.

**nodeId** `string` *required*

Identifier of the pipeline graph node to check.

**checkId** `string` *required*

Identifier of the check defined for this node, such as `dataset-lint` on the Start node.

**status** `"pending" | "running" | "succeeded" | "failed"` *required*

Check state: `pending` while queued, `running` while executing, `succeeded` when execution finishes, or `failed` after an execution error; inspect `result.report` for findings.

**createdAt** `string` *required*

Time the check was started, as an ISO 8601 timestamp.

**error** `string | null`

Execution error message, or absent or null when no error is recorded.

**result** `object` *required*

Output and structured findings returned by the check.

**Fields**

**output** `JsonValue | null`

JSON output produced by the check, or absent or null when no output is available.

**report** `CheckReport | null`

Structured check findings, or absent or null when the check has no report.

**Fields**

**findings** `object[]`

Findings produced by this check.

See the [HTTP endpoint](https://docs.platform.toloka.ai/docs/api-reference/checks/create-pipeline-check.md) for the complete schema.

**checkedItemCount** `number`

Number of dataset items examined by this check.

**truncatedFindingCount** `number`

Number of additional findings omitted from the report.

**tokens** `object`

Tokens used by a synthetic-generation check.

See the [HTTP endpoint](https://docs.platform.toloka.ai/docs/api-reference/checks/create-pipeline-check.md) for the complete schema.

**results** `object[]`

Quality-check verdict for each criterion.

See the [HTTP endpoint](https://docs.platform.toloka.ai/docs/api-reference/checks/create-pipeline-check.md) for the complete schema.

## Errors

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

| Status | Description |
| - | - |
| 400 | Check does not exist or cannot run against the active graph |
| 404 | Pipeline not found |
| 429 | Rate limit exceeded |

HTTP endpoint: [`POST /pipelines/{pipelineId}/checks`](https://docs.platform.toloka.ai/docs/api-reference/checks/create-pipeline-check).

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

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

const check = await client.checks.start({
  pipelineId: "pl.019a0000-0000-7000-8000-000000000001",
  nodeId: "root",
  checkId: "dataset-lint"
});
console.log(check);
```

```json start() theme={null}
{
  "id": "plcr.019a0000-0000-7000-8000-000000000001",
  "pipelineId": "pl.019a0000-0000-7000-8000-000000000001",
  "nodeId": "<string>",
  "checkId": "<string>",
  "status": "pending",
  "createdAt": "2026-01-01T00:00:00Z",
  "result": {}
}
```


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