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

# Get review state (repo_id addressing)

> A review's current state, addressed by opaque repo id. Same projection, counts, keyset paging, and event cursor as the wire-parity path.



## OpenAPI

````yaml https://aws-us-east-2.api.entire.io/api/v1/openapi.json?section=trails get /repos/{repo_id}/trails/{number}/reviews/{review_id}
openapi: 3.1.0
info:
  title: Entire API
  version: 0.1.0
  description: >-
    Unified Entire API gateway. Aggregates the control plane and regional
    repository-operation services behind a single endpoint.
servers:
  - url: https://aws-us-east-2.api.entire.io/api/v1
security:
  - bearerAuth: []
tags:
  - name: search
    description: Operations under the /search surface.
  - name: semantic-search
    description: Operations under the /semantic-search surface.
  - name: brainstore
    description: Operations served by the brainstore service.
  - description: >-
      The authenticated caller's own cross-repo activity, commits, checkpoints,
      sessions, and recap.
    name: me
    x-group: Your activity
  - description: >-
      Residency-aware previews of the caller's surface, served under
      /experimental. Shapes may change without notice.
    name: experimental
  - description: >-
      Per-user settings: pinned and recent repos, diff view, and saved filter
      tabs.
    name: preferences
  - description: >-
      Repository discovery list, metadata, and headline rollups (summary,
      activity, contributors, agents).
    name: repos
  - description: >-
      Git browsing for a repo: commits, commit detail, branch compare, tree
      listings, raw file bytes, and branches.
    name: code
  - description: >-
      Checkpoint listing, resolution, LLM analysis, transcripts, and per-repo
      checkpoint status.
    name: checkpoints
    x-group: Checkpoints
  - description: >-
      Materialised sessions: listing, detail, transcripts, rename, and the
      public-share toggle.
    name: sessions
    x-group: Sessions
  - description: >-
      Repo dashboard aggregates under /overview: commit and checkpoint stats,
      contributor breakdowns, and session patterns.
    name: overview
  - description: Live ref-change stream for a repo (SSE).
    name: refs
    x-group: Ref events
  - description: >-
      Trails themselves: list, create, read, update, delete, plus per-repo
      counts, claimed branches, and the body-document ensure.
    name: trails
    x-group: Trails
  - description: >-
      What has happened on a trail: the merged timeline, the event stream, and
      who is watching (per trail, plus a repo-wide roll-up).
    name: trail-activity
    x-group: Activity
  - description: >-
      Conversation on a trail: discussions, their messages, and the live
      discussion-event stream.
    name: trail-discussions
    x-group: Discussions
  - description: >-
      Code review on a trail: review state, comments, diffs, reviewed files, and
      review re-runs.
    name: trail-reviews
    x-group: Reviews
  - description: >-
      Runner output on a trail: the latest result per configured runner, monitor
      results, and manual launches.
    name: trail-runs
  - description: >-
      Quality gates: repo gate definitions, gate settings, repo-authored monitor
      definitions, and a trail's gate evaluation.
    name: trail-gates
    x-group: Gates
  - description: >-
      Getting a trail landed: approval decisions, merge readiness, and the merge
      itself.
    name: trail-approvals
    x-group: Approvals
  - description: >-
      Trail attachment blobs: upload intent, completion, retrieval, and
      deletion.
    name: trail-attachments
  - description: Project-scoped Trails, and their owned repository Changes and discussions.
    name: projects
  - description: Agent-provenance ranking for a repo's code scopes.
    name: experts
    x-group: Experts
  - description: >-
      git-meta-compatible repo metadata read and write (git is the source of
      truth).
    name: git-meta
  - description: >-
      A project's versioned agents — what each runs (its own runner or an Entire
      preset), what it is called, the environment it runs in, the repositories
      it reviews and its trigger — and Entire's presets. Saving one runs
      nothing.
    name: agents
  - description: >-
      A project's saved, versioned Environments — where an agent runs: provider
      and sandbox lifetime — reusable across the project's repositories and
      agents. Configuration only: saving one provisions nothing.
    name: environments
  - description: >-
      Runs of a project's agents, each on one Change: starting one, the
      immutable snapshot each captured, status, output and results, retry and
      cancel.
    name: runs
  - description: >-
      Mutating repo configuration: runner, trail, public-sharing, and
      gate-enforcement settings (requires repo manage_settings for every forge).
    name: repo-settings
  - description: The caller's open pull requests across their repositories.
    name: pull-requests
  - description: 'Service-authed only: editor-document sync behind the trail body editor.'
    name: trails-internal
  - description: The runner OIDC issuer's discovery document and JWKS. Machine-consumed.
    name: runner-issuer
  - name: repositories
    x-group: Git
paths:
  /repos/{repo_id}/trails/{number}/reviews/{review_id}:
    get:
      tags:
        - trail-reviews
      summary: Get review state (repo_id addressing)
      description: >-
        A review's current state, addressed by opaque repo id. Same projection,
        counts, keyset paging, and event cursor as the wire-parity path.
      operationId: reviewSnapshotByRepoID
      parameters:
        - name: repo_id
          in: path
          required: true
          schema:
            type: string
        - in: path
          name: number
          required: true
          schema:
            type: string
        - in: path
          name: review_id
          required: true
          schema:
            type: string
        - description: >-
            Include dismissed comments when exactly true; retained by the
            cursor.
          explode: false
          in: query
          name: include_dismissed
          schema:
            description: >-
              Include dismissed comments when exactly true; retained by the
              cursor.
            type: string
        - description: >-
            current (default), stale, or any. Unrecognized values mean current;
            retained by the cursor.
          explode: false
          in: query
          name: stale
          schema:
            description: >-
              current (default), stale, or any. Unrecognized values mean
              current; retained by the cursor.
            type: string
        - description: Page size (default 100, capped at 1000).
          explode: false
          in: query
          name: per_page
          schema:
            description: Page size (default 100, capped at 1000).
            type: string
        - description: >-
            Opaque continuation cursor; restores filters and ordering. Repeated
            filters must match.
          explode: false
          in: query
          name: cursor
          schema:
            description: >-
              Opaque continuation cursor; restores filters and ordering.
              Repeated filters must match.
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReviewSnapshotResponseBody'
          description: OK
        '400':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Bad Request
        '401':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Unauthorized
        '403':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Forbidden
        '404':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Not Found
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Unprocessable Entity
        '429':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Too Many Requests
        '500':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Internal Server Error
        '503':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDocument'
          description: Service Unavailable
      security:
        - oauth2: []
        - oidc: []
        - bearerAuth: []
components:
  schemas:
    ReviewSnapshotResponseBody:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - /api/v1/schemas/ReviewSnapshotResponseBody.json
          format: uri
          readOnly: true
          type: string
        code_version:
          $ref: '#/components/schemas/CodeVersionJSON'
        comments:
          items:
            $ref: '#/components/schemas/SnapshotCommentJSON'
          type:
            - array
            - 'null'
        counts:
          $ref: '#/components/schemas/ReviewSnapshotCountsJSON'
        event_cursor:
          type: string
        next_cursor:
          type: string
        review:
          $ref: '#/components/schemas/ReviewJSON'
      required:
        - review
        - code_version
        - counts
        - comments
        - event_cursor
      type: object
    ProblemDocument:
      additionalProperties: false
      properties:
        $schema:
          description: A URL to the JSON Schema for this object.
          examples:
            - /api/v1/schemas/ProblemDocument.json
          format: uri
          readOnly: true
          type: string
        code:
          description: Stable error code; see https://entire.com/errors/.
          type: string
        detail:
          description: Human-readable explanation; server errors omit internal details.
          type: string
        request_id:
          description: Request identifier correlated with server logs.
          minLength: 1
          type: string
        status:
          description: HTTP response status.
          format: int64
          maximum: 599
          minimum: 400
          type: integer
        title:
          description: Short description of the HTTP error.
          type: string
        type:
          description: Documentation URL for this error code.
          format: uri
          type: string
      required:
        - type
        - title
        - status
        - detail
        - code
        - request_id
      type: object
    CodeVersionJSON:
      additionalProperties: false
      properties:
        base_ref:
          type:
            - string
            - 'null'
        base_sha:
          type:
            - string
            - 'null'
        captured_at:
          format: date-time
          type: string
        head_ref:
          type:
            - string
            - 'null'
        head_sha:
          type:
            - string
            - 'null'
        id:
          type: string
        repo_id:
          type: string
        trail_id:
          type: string
      required:
        - id
        - trail_id
        - repo_id
        - base_ref
        - head_ref
        - base_sha
        - head_sha
        - captured_at
      type: object
    SnapshotCommentJSON:
      additionalProperties: false
      properties:
        outgoing_links:
          items:
            $ref: '#/components/schemas/ReviewCommentLinkJSON'
          type:
            - array
            - 'null'
        suggested_changes:
          items:
            $ref: '#/components/schemas/SuggestedChangeJSON'
          type:
            - array
            - 'null'
      required:
        - suggested_changes
        - outgoing_links
      type: object
    ReviewSnapshotCountsJSON:
      additionalProperties: false
      properties:
        dismissed:
          type: integer
          format: int64
        open:
          type: integer
          format: int64
        resolved:
          type: integer
          format: int64
        stale:
          type: integer
          format: int64
        total:
          type: integer
          format: int64
      required:
        - open
        - resolved
        - dismissed
        - stale
        - total
      type: object
    ReviewJSON:
      additionalProperties: false
      properties:
        actor_id:
          type:
            - string
            - 'null'
        code_version_id:
          type: string
        id:
          type: string
        source_execution_id:
          description: >-
            The execution whose Review changes result this review publishes;
            null for reviews not published by a saved Agent's mode.
          type:
            - string
            - 'null'
        started_at:
          format: date-time
          type: string
        summary:
          type:
            - string
            - 'null'
        trail_id:
          type: string
      required:
        - id
        - trail_id
        - code_version_id
        - actor_id
        - summary
        - started_at
        - source_execution_id
      type: object
    ReviewCommentLinkJSON:
      additionalProperties: false
      properties:
        link_type:
          type: string
        source_comment_id:
          type: string
        target_comment_id:
          type: string
      required:
        - source_comment_id
        - target_comment_id
        - link_type
      type: object
    SuggestedChangeJSON:
      additionalProperties: false
      properties:
        change_type:
          type: string
        code_version_id:
          type: string
        created_at:
          format: date-time
          type: string
        created_by:
          type: string
        expected_end_line:
          format: int64
          type:
            - integer
            - 'null'
        expected_file_hash:
          type:
            - string
            - 'null'
        expected_file_path:
          type:
            - string
            - 'null'
        expected_lines:
          type:
            - string
            - 'null'
        expected_start_line:
          format: int64
          type:
            - integer
            - 'null'
        id:
          type: string
        instruction:
          type:
            - string
            - 'null'
        patch:
          type:
            - string
            - 'null'
        review_comment_id:
          type: string
        updated_at:
          format: date-time
          type: string
      required:
        - id
        - review_comment_id
        - code_version_id
        - change_type
        - patch
        - instruction
        - expected_file_path
        - expected_file_hash
        - expected_start_line
        - expected_end_line
        - expected_lines
        - created_by
        - created_at
        - updated_at
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      description: >-
        Bearer token authorizing this operation's repository action. Each
        operation's security requirement names the resource action the token
        must be authorized for (pull or push).
      scheme: bearer
      type: http
    oauth2:
      description: OAuth 2.0 authorization code flow.
      flows:
        authorizationCode:
          authorizationUrl: https://us.auth.entire.io/authorize
          scopes:
            offline_access: Stay signed in and receive a refresh token.
            openid: Verify your identity.
          tokenUrl: https://us.auth.entire.io/oauth/token
      type: oauth2
    oidc:
      description: >-
        OpenID Connect discovery document:
        https://us.auth.entire.io/.well-known/openid-configuration
      openIdConnectUrl: https://us.auth.entire.io/.well-known/openid-configuration
      type: openIdConnect

````