---
title: "Create Advisor Check"
method: POST
path: "/projects/{projectId}/advisors/checks"
tags: ["Advisor"]
---

# Create Advisor Check

`POST /projects/{projectId}/advisors/checks`

## Request

- Base URL: `https://api.crowdin.com/api/v2`
- URL: `https://api.crowdin.com/api/v2/projects/{projectId}/advisors/checks`
- Auth: none declared
- TypeScript: <https://skmtc.dev/crowdin/apis/crowdin-enterprise-api-v2/docs/projects/:projectId/advisors/checks/post.ts> (a function with typed inputs; its response is checked against the schema)

**Required scopes:** `project.advisor` (Read and Write).

Triggers an asynchronous re-check of advisor inspectors for the project. At most one of `category` or `inspectors` may be present; if neither is supplied, every inspector is re-checked. Supplying `category` re-checks all inspectors in that category. Supplying `inspectors` re-checks only the listed inspectors; pass `options` on an entry to opt into AI validation for that inspector. Returns a job-progress descriptor — distinct from PATCH `/insights/{insightId}` (user-facing Insight mutation) and PUT `/applications/.../insight` (app-pushed upsert).

## Path parameters

- `projectId` integer, required

## Request body

- AdvisorCheckCollectionForm
  - `category` string: Optional category to scope the check to. Mutually exclusive with `inspectors`.
  - `inspectors` object[]: Optional list of inspectors to re-check. Mutually exclusive with `category`.
    - `key` string, required
    - `options` object, nullable: Per-inspector options. Currently only `string_context_relevance` supports AI options.
      - `mode` 'auto' | 'all'
      - `promptId` integer

## Response `202`

Advisor check job created

- AdvisorCheckResource: Base schema of resource container. Container is a wrapper object that contains payload in required `data` property and provides space for adding any other metadata.
  - `data` AdvisorCheck, required
    - `identifier` string
    - `status` string: Status of the underlying job. Inherits the `JobDto` status taxonomy (e.g., `created`, `in_progress`, `done`, `failed`). Distinct from the Advisor Insight `status` field, which tracks per-insight freshness.
    - `progress` integer: in percentages
    - `attributes` AdvisorCheckAttributes: Exactly one of `category` or `inspectors` may be present; absence of both means an all-inspector check.
      - `category` string, nullable: Present only when the check was scoped to a category.
      - `inspectors` object[], nullable: Present only when the check was scoped to a list of inspectors.
        - `key` string
    - `createdAt` string, date-time
    - `updatedAt` string, date-time
    - `startedAt` string, date-time, nullable
    - `finishedAt` string, date-time, nullable

## Other responses

- `400`: Invalid Request Body
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Project with specified id was not found
- `409`: Another advisor check is in progress for this project

---

[API](https://skmtc.dev/crowdin/apis/crowdin-enterprise-api-v2.md) - [All operations](https://skmtc.dev/crowdin/apis/crowdin-enterprise-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/crowdin/apis/crowdin-enterprise-api-v2/revisions/dc68744c5384?raw)
