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

# Read assessment readiness and pageable findings

> Requires user-authorized Chatobserver MCP consent, reports:read, current native membership and report access, and workspace feature availability. Workspace service keys are unsupported. Cached report outputs additionally require independent Data access and data:read consent. Report discovery and assessment do not run queries, refresh Data, edit reports or publish shares. Unknown or unsupported evidence is not a pass.

Required scopes: `reports:read`.


## OpenAPI

````yaml GET /api/v2/reports/canvas/assessments/{assessmentId}
openapi: 3.1.1
info:
  title: chatobserver public API
  version: '2026-09-09'
  description: >-
    Track AI visibility, manage prompts, inspect collected answers and
    citations, and integrate workspace data with your own tools. Visibility
    endpoints use workspace API keys. Data endpoints use scoped service-account
    keys; spreadsheet client endpoints use authorised client sessions. See the
    authentication guide for each credential type.
  contact:
    name: chatobserver support
    url: https://chatobserver.com/contact
    email: support@chatobserver.com
servers:
  - url: https://app.chatobserver.com
    description: Production API
security:
  - WorkspaceKey: []
  - BearerKey: []
tags:
  - name: Workspace
    description: Validate access and list the workspace project and available platforms.
  - name: Prompts
    description: Create, schedule, organise, activate and retrieve tracked prompts.
  - name: Answers
    description: Retrieve collected AI answers, their analysis and visibility trends.
  - name: Brands
    description: Manage brands and compare their visibility in AI answers.
  - name: Sources and citations
    description: Analyse cited domains, pages and ownership across answers.
  - name: Visitor analytics
    description: Read website visitor and crawler analytics for the workspace.
  - name: Content opportunities
    description: Retrieve content-gap findings and recommendations for tracked prompts.
  - name: Usage
    description: Read workspace consumption and allowance summaries.
  - name: Data connections
    description: Discover authorised connections, source accounts and connector catalogues.
  - name: Data queries
    description: >-
      Create versioned queries, publish definitions and inspect integration
      contracts.
  - name: Data operations
    description: >-
      Execute, validate, cancel and inspect operations and page through result
      rows.
  - name: Data delivery
    description: Manage schedules, transfers, destinations and import workflows.
  - name: Data definitions
    description: Manage reusable definitions and their immutable versions.
  - name: Data webhooks
    description: >-
      Configure event delivery, inspect deliveries, replay events and rotate
      secrets.
  - name: Client authorisation
    description: Authorise spreadsheet clients using a user-approved challenge exchange.
  - name: Spreadsheet clients
    description: >-
      Access document-bound client sessions, queries, schedules, bindings and
      write claims.
  - name: AI visibility audits
    description: Create website visibility audits and retrieve their report links.
  - name: Version 1
    description: Integrate with the version 1 visibility and analytics endpoints.
  - name: Tracked coverage
    description: >-
      Track published coverage, maintain its metadata and inspect exact-page
      citation evidence with the same workspace feature access as the dashboard.
  - name: Reports
    description: >-
      Discover accessible native reports and assess exact saved revisions using
      measured, context-specific evidence.
paths:
  /api/v2/reports/canvas/assessments/{assessmentId}:
    get:
      tags:
        - Reports
      summary: Read assessment readiness and pageable findings
      description: >-
        Requires user-authorized Chatobserver MCP consent, reports:read, current
        native membership and report access, and workspace feature availability.
        Workspace service keys are unsupported. Cached report outputs
        additionally require independent Data access and data:read consent.
        Report discovery and assessment do not run queries, refresh Data, edit
        reports or publish shares. Unknown or unsupported evidence is not a
        pass.
      operationId: getCanvasAssessment
      parameters:
        - name: x-workspace-id
          in: header
          required: true
          schema:
            type: string
            pattern: ^ws_[a-f0-9]{32}$
          description: Explicit workspace selected for the delegated account.
        - name: assessmentId
          in: path
          required: true
          schema:
            type: string
            format: uuid
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
            default: 0
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 500
            default: 100
      responses:
        '200':
          description: Reviewed result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CanvasAssessmentResponseV1'
        default:
          description: >-
            Authentication, changed inputs, unsupported target, incomplete
            assessment or unavailable dispatcher. Preserve the UUID idempotency
            key on uncertain retries.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
      security:
        - McpConnection: []
components:
  schemas:
    CanvasAssessmentResponseV1:
      type: object
      properties:
        data:
          type: object
          properties:
            id:
              type: string
              format: uuid
            reportId:
              type: string
              format: uuid
            target:
              type: object
              properties:
                kind:
                  type: string
                  const: saved_revision
                reportId:
                  type: string
                  format: uuid
                revision:
                  type: integer
                  minimum: 0
                expectedDocumentHash:
                  type: string
                  minLength: 1
                  maxLength: 256
              required:
                - kind
                - reportId
                - revision
                - expectedDocumentHash
              additionalProperties: false
            status:
              type: string
              enum:
                - queued
                - running
                - completed
                - cancelled
                - failed
                - expired
            createdAt:
              type: string
              format: date-time
            expiresAt:
              type: string
              format: date-time
            failureCode:
              anyOf:
                - type: string
                  enum:
                    - work_budget_exceeded
                    - transient_retry_limit_exceeded
                    - probe_budget_exceeded
                    - browser_unavailable
                    - navigation_timeout
                    - transport_unavailable
                    - access_revoked
                    - snapshot_expired
                    - renderer_failed
                - type: 'null'
            progress:
              type: object
              properties:
                requestedPageContexts:
                  type: integer
                  minimum: 0
                completedPageContexts: 8d59271f-3483-4935-9571-fbfb71d5f86a
              required:
                - requestedPageContexts
                - completedPageContexts
              additionalProperties: false
            assessment:
              anyOf:
                - type: object
                  properties:
                    version:
                      type: number
                      const: 1
                    assessmentId: 43b39f42-ed7a-47af-8b8a-4c724c61e9f7
                    documentHash: 2cc35637-2b12-44e9-abfa-9bed9cc5a7b3
                    profile:
                      type: object
                      properties:
                        id: 49362425-f1e7-4597-bd1a-3dcd1dfb03bf
                        version:
                          type: number
                          const: 1
                      required:
                        - id
                        - version
                      additionalProperties: false
                    coverage:
                      type: object
                      properties:
                        requiredPageContexts:
                          type: integer
                          minimum: 0
                        completedPageContexts:
                          type: integer
                          minimum: 0
                        unverifiedPageContexts:
                          type: integer
                          minimum: 0
                        complete:
                          type: boolean
                      required:
                        - requiredPageContexts
                        - completedPageContexts
                        - unverifiedPageContexts
                        - complete
                      additionalProperties: false
                    structure:
                      type: object
                      properties:
                        status:
                          type: string
                          enum:
                            - valid
                            - invalid
                            - unverified
                      required:
                        - status
                      additionalProperties: false
                    render:
                      type: object
                      properties:
                        status:
                          type: string
                          enum:
                            - valid
                            - invalid
                            - unverified
                      required:
                        - status
                      additionalProperties: false
                    design:
                      type: object
                      properties:
                        status:
                          type: string
                          enum:
                            - assessed
                            - unverified
                        advisoryCount:
                          type: integer
                          minimum: 0
                        coverageGaps:
                          type: array
                          items: d636c9d2-9342-4291-b2a2-024ccab0b818
                          maxItems: 64
                      required:
                        - status
                        - advisoryCount
                        - coverageGaps
                      additionalProperties: false
                    data:
                      type: object
                      properties:
                        status:
                          type: string
                          enum:
                            - ready
                            - partial
                            - missing
                            - failed
                            - unverified
                        issueCodes:
                          type: array
                          items: 3c931e09-0697-432a-ba67-54777a3e5a60
                          maxItems: 256
                      required:
                        - status
                        - issueCodes
                      additionalProperties: false
                    publication:
                      type: object
                      properties:
                        status:
                          type: string
                          enum:
                            - not_published
                            - current
                            - stale
                            - failed
                            - unverified
                      required:
                        - status
                      additionalProperties: false
                    safeToCommit:
                      type: boolean
                    findingCount: 1d8f4773-7707-4cea-9a83-77ab6f69cbc6
                  required:
                    - version
                    - assessmentId
                    - documentHash
                    - profile
                    - coverage
                    - structure
                    - render
                    - design
                    - data
                    - publication
                    - safeToCommit
                    - findingCount
                  additionalProperties: false
                - type: 'null'
          required:
            - id
            - reportId
            - target
            - status
            - createdAt
            - expiresAt
            - failureCode
            - progress
            - assessment
          additionalProperties: false
        findings:
          type: object
          properties:
            assessmentId:
              type: string
              format: uuid
            documentHash:
              type: string
            data:
              type: array
              items:
                type: object
                properties:
                  id: 02ce63b3-5c85-451f-957e-ae833ea7fc68
                  ruleId: 9680ebbb-44ee-400d-9070-029b9b4cb038
                  ruleVersion:
                    type: number
                    const: 1
                  relationId: a9a5c440-0d09-4163-90d1-d5b8f7406edc
                  severity:
                    type: string
                    enum:
                      - required
                      - advisory
                      - informational
                  evidenceStatus:
                    type: string
                    enum:
                      - verified
                      - unverified
                  validity:
                    type: string
                    enum:
                      - valid
                      - invalid
                      - unverified
                  pageId: f0ed846d-d788-4f94-a50c-43670d80301a
                  entityIds:
                    type: array
                    items: df8a8a77-5a0e-4316-a5ee-16da625a0c36
                    maxItems: 250
                  contextId: 02308b8b-d4dd-4965-91a4-add2351a54f1
                  issueCode: ac6038ec-66b2-4a5e-83c9-e5737359ff14
                  observed:
                    anyOf:
                      - type: number
                      - type: 'null'
                  expected:
                    anyOf:
                      - cada8e89-8264-4fa5-9e7c-63a4391d95c9
                      - type: 'null'
                  unit:
                    anyOf:
                      - type: string
                        enum:
                          - css_px
                          - ratio
                          - count
                      - type: 'null'
                  recommendedAction:
                    type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - increase_region_height
                          - increase_region_width
                          - resolve_overlapping_regions
                          - revise_layout_relationships
                          - resolve_data_output
                          - provide_font
                          - provide_asset
                          - provide_probe
                          - complete_coverage
                          - declare_scroll_policy
                          - allow_table_pagination
                          - use_readable_type
                          - increase_contrast
                          - review_hierarchy
                          - review_branding
                    required:
                      - kind
                    additionalProperties: false
                required:
                  - id
                  - ruleId
                  - ruleVersion
                  - severity
                  - evidenceStatus
                  - validity
                  - pageId
                  - entityIds
                  - contextId
                  - issueCode
                  - observed
                  - expected
                  - unit
                  - recommendedAction
                additionalProperties: false
              maxItems: 500
            pageInfo:
              type: object
              properties:
                offset: 1720967c-11c8-446b-82fc-dfb5693277e4
                limit:
                  type: integer
                  minimum: 1
                  maximum: 500
                total: 23c26cd5-f6fa-425a-9ae1-1d1f8d0a9284
                nextOffset:
                  anyOf:
                    - 67ce230b-bc35-482f-85e4-179f3dff0d53
                    - type: 'null'
              required:
                - offset
                - limit
                - total
                - nextOffset
              additionalProperties: false
          required:
            - assessmentId
            - documentHash
            - data
            - pageInfo
          additionalProperties: false
      required:
        - data
        - findings
      additionalProperties: false
    ApiError:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
            details: {}
          required:
            - code
            - message
        requestId:
          type: string
      required:
        - error
        - requestId
  securitySchemes:
    WorkspaceKey:
      type: apiKey
      in: header
      name: x-chatobserver-key
      description: >-
        A workspace API key. Data endpoints require a service-account key with
        the specified scopes.
    BearerKey:
      type: http
      scheme: bearer
      description: The workspace or service-account API key as a bearer token.
    McpConnection:
      type: http
      scheme: bearer
      description: >-
        Delegated application credential issued after Chatobserver account
        consent. Restricted to selected workspaces and explicitly supported MCP
        operations. The MCP server access token is a separate credential and
        cannot be used here.

````

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