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

# Get Site Audit Score

> The brand's site-level AI-visibility score — retrievability and citability rolled up across the whole site (the same numbers the Site Optimization header shows), when it was scored (`generated_at`), the previous run's score for a delta, and `headroom` (the projected site score per metric if every surfaced opportunity is fixed). `null` when the brand has no audit yet.



## OpenAPI

````yaml /api-reference/openapi.json get /{brand_id}/audit-scores/site
openapi: 3.1.0
info:
  title: Scrunch Data API
  version: 0.1.0
servers:
  - url: https://api.scrunchai.com/v1
security: []
paths:
  /{brand_id}/audit-scores/site:
    get:
      tags:
        - audit-scores
      summary: Get Site Audit Score
      description: >-
        The brand's site-level AI-visibility score — retrievability and
        citability rolled up across the whole site (the same numbers the Site
        Optimization header shows), when it was scored (`generated_at`), the
        previous run's score for a delta, and `headroom` (the projected site
        score per metric if every surfaced opportunity is fixed). `null` when
        the brand has no audit yet.
      operationId: getSiteAuditScore
      parameters:
        - name: brand_id
          in: path
          required: true
          schema:
            type: integer
            title: Brand Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/SiteScoreModel'
                  - type: 'null'
                title: Response Getsiteauditscore
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer:
            - query
components:
  schemas:
    SiteScoreModel:
      properties:
        brand_id:
          type: integer
          title: Brand Id
        model_version:
          type: string
          title: Model Version
        generated_at:
          type: string
          format: date-time
          title: Generated At
        n_pages:
          type: integer
          title: N Pages
        total_prompts:
          type: integer
          title: Total Prompts
        score:
          $ref: '#/components/schemas/DisplayedScore'
        previous:
          anyOf:
            - $ref: '#/components/schemas/DisplayedScore'
            - type: 'null'
        previous_absent_reason:
          anyOf:
            - type: string
              enum:
                - no_prior_run
                - not_comparable
            - type: 'null'
          title: Previous Absent Reason
        previous_absent_detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Previous Absent Detail
        worst_page_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Worst Page Url
        best_page_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Best Page Url
        headroom:
          anyOf:
            - $ref: '#/components/schemas/SiteHeadroomModel'
            - type: 'null'
        selection_changed_since_audit:
          type: boolean
          title: Selection Changed Since Audit
          default: false
      type: object
      required:
        - brand_id
        - model_version
        - generated_at
        - n_pages
        - total_prompts
        - score
      title: SiteScoreModel
      description: A brand's latest site-level score, from its most recent bulk audit run.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    DisplayedScore:
      properties:
        retrievability:
          type: number
          title: Retrievability
        citability:
          type: number
          title: Citability
      type: object
      required:
        - retrievability
        - citability
      title: DisplayedScore
      description: >-
        The two numbers we put on screen, both 0-100. citability is vs the
        winning page (50 = parity

        with it); the loser-side floor stays a diagnostic and isn't surfaced
        here.
    SiteHeadroomModel:
      properties:
        retrievability:
          $ref: '#/components/schemas/HeadroomMetricModel'
        citeability:
          $ref: '#/components/schemas/HeadroomMetricModel'
      type: object
      required:
        - retrievability
        - citeability
      title: SiteHeadroomModel
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    HeadroomMetricModel:
      properties:
        current:
          type: number
          title: Current
        projected:
          type: number
          title: Projected
        lift:
          type: number
          title: Lift
        signals:
          type: integer
          title: Signals
        listable_signals:
          type: integer
          title: Listable Signals
      type: object
      required:
        - current
        - projected
        - lift
        - signals
        - listable_signals
      title: HeadroomMetricModel
      description: >-
        One metric's projected site score if every surfaced opportunity on the
        audited pages is fixed.

        All 0-100. `projected` is the prompt-weighted average of each page's
        fixed score (gains add up

        within a page, capped at 100), not a sum across pages — so it stays a
        faithful score, not 100.
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````

## Related topics

- [Site Audit API: Score pages for AI search readiness](/api-reference/site-audit/overview.md)
- [Audit Scores API: Retrievability and citability by page](/api-reference/audit-scores/overview.md)
- [Sitemap API: Pages, Audit Scores, AI Metrics](/api-reference/sitemap/overview.md)
