---
title: "List a project's findings"
method: GET
path: "/api/v1/project-rooms/{id}/findings"
tags: ["Projects"]
---

# List a project's findings

`GET /api/v1/project-rooms/{id}/findings`

## Request

- Base URL: `https://askthegrid.com`
- URL: `https://askthegrid.com/api/v1/project-rooms/{id}/findings`
- Auth: HTTP bearer

Filter by status or by the requirement a finding bears on.

## Path parameters

- `id` string, required

## Query parameters

- `status` 'needs-review' | 'verified' | 'waiting' | 'resolved' | 'dismissed'
- `requirementId` string

## Response `200`

Success

- object
  - `findings` object[], required
    - `id` string, required
    - `claim` string, required
    - `consequence` string
    - `amount` string
    - `deadline` string
    - `basis` 'quoted' | 'calculated' | 'inferred', required
    - `materiality` 'high' | 'medium' | 'low', required
    - `status` 'needs-review' | 'verified' | 'waiting' | 'resolved' | 'dismissed', required
    - `sources` object[], required
      - `fileId` string, required
      - `version` integer
      - `originalRevision` string, uuid
      - `locator` union
        - object
          - `kind` 'page', required
          - `page` integer, required
        - object
          - `kind` 'sheet', required
          - `sheet` string, required
          - `row` integer, required
        - object
          - `kind` 'text', required
          - `offset` integer, required
      - `quote` string
    - `evidenceReview` object
      - `model` string, required
      - `checkedAt` string, date-time, required
      - `party` object, required
        - `choice` 'preserved' | 'changed' | 'uncertain', required
        - `confidence` number, required
      - `conditions` object, required
        - `choice` 'preserved' | 'omitted' | 'uncertain', required
        - `confidence` number, required
    - `calculation` object
      - `formula` string, required
      - `inputs` object[], required
        - `label` string, required
        - `value` string, required
        - `source` object
          - `fileId` string, required
          - `version` integer
          - `originalRevision` string, uuid
          - `locator` union
            - object
              - …
            - object
              - …
            - object
              - …
          - `quote` string
        - `data` object
          - `dataset` string, required
          - `location` string
          - `period` string
          - `cite` string
      - `result` string, required
    - `requirementId` string
    - `owner` object
      - `name` string, required
      - `email` string
    - `requestIds` string[], required
    - `origin` object, required
    - `production` object
      - `runId` string
      - `jobId` string
      - `chatId` string
      - `outputFileId` string
      - `alertOccurrenceId` string
      - `contentHash` string
    - `createdAt` string, required
    - `createdBy` object, required
      - `name` string, required
      - `email` string
    - `updatedAt` string, required
    - `history` object[]
      - `at` string, required
      - `by` object, required
        - `name` string, required
        - `email` string
      - `status` 'needs-review' | 'verified' | 'waiting' | 'resolved' | 'dismissed'
      - `note` string

## Other responses

- `400`: The request did not match the contract.
- `401`: Missing or invalid credentials.
- `429`: Rate limit exceeded. Wait `Retry-After` seconds; `X-RateLimit-Limit`, `X-RateLimit-Remaining` and `X-RateLimit-Reset` report the budget. Signed-in sessions and API keys have larger budgets than anonymous callers.

---

[API](https://skmtc.dev/askthegrid/apis/ask-the-grid-api.md) · [All operations](https://skmtc.dev/askthegrid/apis/ask-the-grid-api/llms.txt) · [OpenAPI document](https://skmtc.dev/askthegrid/apis/ask-the-grid-api/revisions/9cd80115e395?raw)
