# Checks_ListChecks

`GET /v1/accounts/{account}/checks`

Lists the checks.

- Base URL: `https://junction-api.qualiastudios.dev`
- Authentication: an API key in the `X-API-Key` header

## Parameters

- `account` (path, string, required): The account id.
- `pageSize` (query, integer (int32)): At most this many; 0 means 100, the maximum is 1000.
- `pageToken` (query, string): From a previous response's next_page_token.

## Responses

- `200` OK: `application/json` `qualia.v1.ListChecksResponse`
- `default` Default error response: `application/json` `google.rpc.Status`

## Schemas

```yaml
qualia.v1.ListChecksResponse:
  type: object
  properties:
    checks:
      type: array
      items:
        $ref: "#/components/schemas/qualia.v1.Check"
      description: One page of checks.
    nextPageToken:
      type: string
      description: Empty on the last page.
  description: Response for Checks.ListChecks.
qualia.v1.Check:
  type: object
  properties:
    name:
      type: string
      description: accounts/{account}/checks/{check}
    kind:
      readOnly: true
      enum:
        - KIND_UNSPECIFIED
        - EPISODE_RULES
        - MIXTURE
        - REACH
        - VLM
        - HEURISTIC
      type: string
      description: Which check it is.
      format: enum
    description:
      readOnly: true
      type: string
      description: "One sentence: what it checks."
    datasetKinds:
      readOnly: true
      type: array
      items:
        enum:
          - KIND_UNSPECIFIED
          - UPLOAD
          - MIXTURE
          - MERGED
        type: string
        format: enum
      description: The dataset kinds it runs on.
    storesResults:
      readOnly: true
      type: boolean
      description: |-
        Whether the check stores a CheckResult per episode. Only `reach` does.
        A check's computed values are its source and its issues are alerts
        derived from them: reach's source is its results; the episode rules'
        is Episode.metrics and their reference ranges; so their `results`
        collection is empty. The VLM check's readings are kept with its
        issues, which are what it reports: each issue it raised carries its
        reading (Issue.finding).
    runnable:
      readOnly: true
      type: boolean
      description: |-
        Whether this deployment can run it. False only for `vlm` where the
        deployment has no VLM check pipeline template or no source of published
        tasks: RunCheck on it is then FAILED_PRECONDITION. A client offers a run
        only where it is true.
  description: |-
    A check the server runs over a dataset. Every account has the same four;
    the {check} id is the kind as a lowercase slug: `episode-rules`,
    `mixture`, `reach`, `vlm`. Everything a check needs (its results
    and reference ranges) lives under it.

    Served by qds-api.
google.rpc.Status:
  oneOf:
    - $ref: "#/components/schemas/ApiError"
    - $ref: "#/components/schemas/GatewayError"
  description: "The body of a failed call: one of the two shapes below."
ApiError:
  title: API error
  type: object
  required:
    - code
    - message
    - retryable
    - details
  properties:
    code:
      type: string
      description: The gRPC code name in upper case, e.g. `NOT_FOUND`.
    message:
      type: string
    retryable:
      type: boolean
      description: Whether the same call may succeed if retried.
    details:
      type: array
      items:
        type: object
      description: "Empty, except when a dataset copy or move is refused: then one `google.rpc.ErrorInfo` with the refusal's `reason` code, its `domain` and, in `metadata`, the datasets it names."
  description: A refusal from the API itself.
GatewayError:
  title: Gateway error
  type: object
  required:
    - detail
  properties:
    detail:
      type: string
      description: What went wrong.
  description: A refusal from the gateway before the call reaches the API, for example `401` bad or missing API key, `403` key lacks the scope or environment closed, `413` body too large.
```
